1

私の質問はおそらく非常に単純ですが、何も見つかりませんでした。Linux セキュリティ モジュールを作成しています。ご存知かもしれませんが、カーネルの struct inode には、LSM のセキュリティ関連情報を保存するための i_security フィールドが 1 つあります。ここで確認しておきましょう: どのユーザー (root でさえも) がこの値を読み書きできないと仮定しても安全でしょうか?つまり、この値は本当にカーネル空間からしかアクセスできないのでしょうか?

私の質問の理由は、一部の inode データがユーザー空間からアクセスできることは明らかだからです (私が推測するシステムコールを介して、しかしまだ chmod などを使用して、inode のいくつかの値を変更することができます)。つまり、すべての inode データ (i_security も) が何らかの方法でユーザー空間からアクセスできるということではありません。

乾杯

4

1 に答える 1

1

はい。grepまたはackを使用してカーネルコードをスキャンすると、ディレクトリ内のファイルによってのみ変更され、フィールドに直接アクセスできないため、ユーザーアプリケーションによって変更できないことi_securityがわかります。security/i_security

于 2011-04-11T17:04:26.170 に答える