3
我試圖找到具有「SUID」權限的所有文件並將其寫入文本文件,但是當我運行以下命令時,文本文件爲空:查找所有已設置UID位的文件
sudo find/-perm 4000 > suid.txt
我的命令有問題嗎?
我試圖找到具有「SUID」權限的所有文件並將其寫入文本文件,但是當我運行以下命令時,文本文件爲空:查找所有已設置UID位的文件
sudo find/-perm 4000 > suid.txt
我的命令有問題嗎?
正確的語法是:
sudo find/-perm -4000 > suid.txt
或
sudo find/-perm -u+s > suid.txt
例如:
sudo find/-perm -4000 -exec ls -l {} +
給出這個輸出:
-rwsr-xr-x 1 root root 30800 May 15 2015 /bin/fusermount
-rwsr-xr-x 1 root root 94792 Sep 2 2015 /bin/mount
-rwsr-xr-x 1 root root 44168 May 7 2014 /bin/ping
-rwsr-xr-x 1 root root 44680 May 7 2014 /bin/ping6
-rwsr-xr-x 1 root root 36936 Jan 27 2016 /bin/su
<truncated>
你的命令的問題是它正在尋找設置了uid位的模式位,並且沒有其他設置被設置。無論其他位如何,添加-
前綴都會查找設置了uid的所有模式。
從man find
:
-perm模式
文件的權限位是完全模式(八進制或符號)。 由於需要完全匹配,因此如果您想要將此表格用於 符號模式,則可能必須指定一個相當複雜的模式字符串。 例如,-perm g = w只會匹配具有模式0020(即 是,其中組寫入權限是唯一權限集的文件)的文件。 您更希望使用
/' or
- '表單,對於 示例-perm -g = w,它與任何具有組寫入 權限的文件相匹配。-perm -mode
所有的權限位模式都是爲該文件設置的。符號 模式被接受在這種形式,這通常是 想要使用它們的方式。如果使用 符號模式,則必須指定
u',
g或'o'。