次のカーネルメッセージはどういう意味ですか?


12

以下は/ var / log / messagesと表示されますが、これはどういう意味ですか?

  Feb 19 22:51:20  kernel: [  187.819487] non-matching-uid symlink following attempted in sticky world-writable directory by sh (fsuid 1001 != 0)

cronジョブが実行される直前に発生します。


回答:


9

特権プロセスは、重要なファイル(/ etc / passwd、/ etc / shadowなど)にシンボリックリンクを指定することで、そのファイルを上書きするようにだまされることがあります。たとえば、ルートが/ tmpにファイルを作成するプログラムを実行することがわかっている場合、ファイル名を推測してトラップを作成できます(通常は/ tmp / fooXXX、fooはプログラム名、XXXはプロセスID)および/ etc / shadowを指している可能性のある候補で/ tmpを埋めます。後で、rootは/ tmpのファイルを開き、/ etc / shadowを切り捨てて上書きします。突然、誰もシステムにログインできなくなります。一時ファイルの存在の確認とファイルの作成の間の競合状態を悪用する関連攻撃があります。

mktemp()とmkstemp()を慎重に使用するなど、この問題を回避する方法がありますが、すべてのプログラマーとユーザーがこのリスクを認識するわけではありません。その結果、Linuxカーネルパッチが最近提案され、使用しているカーネルに適用されているようです。このパッチは、悪意のあるリンクが植えられた可能性のある一般的な状況の1つである、スティッキービットが設定された世界書き込み可能なディレクトリのシンボリックリンクを防ぎます。シンボリックリンクをたどる代わりに、試行されたシステムコールはEACCESで失敗し、カーネルは表示されたメッセージをログに記録します。

Linuxカーネルメーリングリストの関連するおしゃべり。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.