Find
在特定日期遞歸查找所有文件
我的網站受到了 FTP 暴力攻擊,黑客在我的主目錄中修改/創建了一些文件。
假設惡意創建/修改的日期是 2011-4-5 21:38:09。如何在 public_html 中找到當時修改/創建的其他文件?
試圖通過Google搜尋,但沒有發現任何有用的資訊。你能給我一些例子嗎?喜歡 ls 還是 find?謝謝!
你可以:
touch -m -t 201104052138.08 /tmp/timestamp find /dir -newer /tmp/timestamp
最初的觸摸會在您所需的時間戳之前創建一個 mtime 為一秒的文件,然後 find 使用它來查找在那之後修改的文件(就內容而言)。
您還需要檢查權限和組所有權。您不能使用上述技術來做到這一點,因為觸摸只能更改 atime 和 mtime。因此,您最好確定正確的權限是什麼,然後重新設置它們。例如,如果您的 Web 文件通常由具有 www-pub 組的 root 擁有,並且目錄權限為 0755,文件權限為 0644,則可以使用
find /dir \! -user root
查找不屬於 root 的文件和目錄
find /dir \! -group www-pub
查找不屬於 www-pub 的文件和目錄
find 的 -perm 標誌也可用於根據權限查找文件,但最好將其設置為應有的狀態。
find /dir -exec chown root:www-pub {} \; find /dir -type f -exec chmod 0644 {} \; find /dir -type d -exec chmod 0755 {} \;