我的网站遭到了 FTP 暴力攻击,攻击者在我的主目录中修改/创建了一些文件。
假设恶意创建/修改的日期是 2011-4-5 21:38:09。我如何才能找到 public_html 中在那段时间左右修改/创建的其他文件?
尝试通过 Google 搜索,但没有找到任何有用的信息。你能给我举几个例子吗?比如 ls 或 find?谢谢!
答案1
你可以:
touch -m -t 201104052138.08 /tmp/timestamp
find /dir -newer /tmp/timestamp
初始触摸会创建一个文件,其修改时间为所需时间戳之前一秒,然后查找会使用该文件查找该时间之后修改的文件(就内容而言)。
您还需要检查权限和组所有权。您不能使用上述技术来做到这一点,因为 touch 只能更改 atime 和 mtime。因此,您最好确定正确的权限是什么,然后重置它们。例如,如果您的 Web 文件通常由 root 拥有,组为 www-pub,并且目录的权限为 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 {} \;
答案2
使用find
# find /home -ctime -2
这意味着“查找 /home 上过去 48 小时内更改的文件”。2 乘以 24 小时,因此如果您需要 72 小时,则使用 3,依此类推。如果您需要查找超过 X 天更改的文件,请使用 + 而不是 -。
您可能希望列出以下文件:
# find /home -ctime -2 -exec ls -l {} \;
请记住,其中ctime
包括在过去 X 小时内创建或更改的文件。
答案3
find /dir -newerma "2011-xx-xx"
或者你可以看看这里
答案4
您可以使用开关mtime
来完成此任务。