問題ID 9889

  • フォーラムは新サイトへ移行しました。
  • このフォーラムではゲスト投稿が禁止されています

なし 問題ID 9889

msg# 1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2014-6-24 10:50
ゲスト    投稿数: 0
「セキュリティ上、ルートユーザの所有権を持ち、かつSUIDが設定されたファイルをすべて把握しておきたい。適切なコマンドを選びなさい」
という問題ですが、回答を見ると

 find / -perm -4000 -uid 0
 find / -perm -u+s -uid 0

の2つが正解で、

 find / -perm -5000 -uid 0

は間違いとなっています。
スティッキービットは付いているものの、これも「ルートユーザの所有権を持ち、かつSUIDが設定されたファイル」という条件に当てはまるのではないかと思うのですが、どうでしょうか?
ご意見をお願いします。
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2014-6-24 11:52
arashi1977  長老 居住地: 広島  投稿数: 1715
解説から引用します。
引用:
find [検索場所] -perm -[モード]
 [モード]で指定されている許可属性ビットのすべてが、ファイルでも立っていたら真
find [検索場所] -perm +[モード]
 [モード]で指定されている許可属性ビットのどれか一つが、ファイルでも立っていたら真
つまり、
-perm -5000 = SUID(4000)とSticky(1000)の両方が設定されているものが対象
-perm -4000 = SUID(4000)のみが設定されているものが対象
ですね。
おっしゃっているパターンに当てはまるのは
-perm +5000 = SUID(4000)とSticky(1000)のどちらかが設定されているものが対象
の場合になります。

ためしにやったらこうなりました。
$ touch test
$ ls -l
合計 0
-rw-r--r-- 1 user01 user01 0  6月 24 11:45 test
$ chmod 4644 test
$ ls -l
合計 0
-rwSr--r-- 1 user01 user01 0  6月 24 11:45 test
$ find . -perm -4000
./test
$ find . -perm -5000
(何も表示されない)
$ find . -perm +5000
./test

なし Re: 問題ID 9889

msg# 1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2014-6-24 11:59 | 最終変更
arashi1977  長老 居住地: 広島  投稿数: 1715
ちなみに、いまどきのナウなヤングは + ではなく / を使うようです
引用:
$ find --version
find (GNU findutils) 4.5.9

$ man find
(略)
-perm /mode
mode で指定した許可属性ビットのどれかが、ファイルでも立っていれば、 真を返す。mode 指定のこの形式でも、シンボルによる許可属性表現が 使用できる。
(略)
-perm +mode
非推奨な形式。mode で指定した許可属性ビットのどれかが立っているファイルを捜す古い方法である。代わりに -perm /mode を使用した方がよい。`+' を付けて mode を指定するこの形式で シンボルによる表現を使おうとすると、思いがけない結果を生むことがある。
たとえば、 `+u+x' はそれ自体有効なシンボル表現である ('+u,+x' と 同じであり、0111 を意味する)。そのため、 -perm +u+x は、 -perm +mode として評価されず、ぴったり一致する許可属性を指定するときの -perm mode として評価されてしまうのだ。
LPIC試験で想定してるfindutilsのバージョンが何かによっては / が問われるかもしれませんね
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2014-6-24 15:04
ゲスト    投稿数: 0
arashi1977様ありがとうございました。

-5000だとスティッキービットが付いていないものが漏れてしまうため不適切ということですね。
+(/)5000でもスティッキービットのみの物もひっかかってしまうようなのでいずれにせよ回答としては間違いですね^^;

丁寧な解説ありがとうございました。

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.