Linuxでバイナリにset-user-IDがあるかどうかを確認する方法は?
私はそれを使用できますかls -l
?
答え1
実行すると、ls -l
次のような結果が得られます。
-rwSr--r-- 1 user user 8111573 Sep 26 2012 net-snmp.tar
ここでS
(可能s
)は、ファイルにSUIDビットが設定されていることを示します。
S
実行フラグを設定していない場合
s
実行フラグの設定時に設定されます。
答え2
ファイルを手動で表示またはls -l filename
使用できるスクリプトで表示します。
[ -u filename ] && echo SUID-bit is set
また見てくださいman bash
:
-u file
True if file exists and its set-user-id bit is set.
また見てくださいinfo ls
:
The file mode bits listed are similar to symbolic mode
specifications (*note Symbolic Modes::). But ‘ls’ combines
multiple bits into the third character of each set of permissions
as follows:
‘s’
If the set-user-ID or set-group-ID bit and the corresponding
executable bit are both set.
‘S’
If the set-user-ID or set-group-ID bit is set but the
corresponding executable bit is not set.