如何审核 Linux 文件系统中在特定时间范围内已更改或添加的文件?

2 security linux filesystems joomla

我们是一家网站设计/托管公司,运行多个站点,有人能够将任意数据写入文件系统。我们怀疑他们仍然安装了一些脚本,需要一种方法来审核过去 10 天内更改或添加的任何内容。是否有我们可以运行的命令或脚本来执行此操作?

Kyl*_*ndt 11

重新开始:就
我个人而言,除非我只是从全新安装中重建每个服务器,否则我晚上很难入睡。

我强烈建议你这样做,黑客可以隐藏一些东西,让它们看起来好像已经改变了,即使它们足够好。

为什么find不起作用:
例如更改修改时间:

kbrandt@kbrandt: ~/scrap/touch] ls -l foo
-rw-rw-r-- 1 kbrandt kbrandt 4 2010-04-05 12:22 foo
[kbrandt@kbrandt: ~/scrap/touch] touch -m -t 199812130530 foo  
[kbrandt@kbrandt: ~/scrap/touch] ls -l foo
-rw-rw-r-- 1 kbrandt kbrandt 4 1998-12-13 05:30 foo
Run Code Online (Sandbox Code Playgroud)

如果您使用查找路线,ctime 可能会更好地搜索,但也可能有一种简单的方法来改变它。如果不容易,有人可以进入并使用我想象的设备编辑文件系统本身。

刚刚用ctime在网上找到了以下内容,不过没试过:

Since ctime is the last time the inode info was changed, you could
change the system date, make a new hardlink, remove it again and change
the date back.
Run Code Online (Sandbox Code Playgroud)

而且这个东西只使用用户态系统上已经存在的工具,忘记如果他们精通内核编程可以做什么。


Ign*_*ams 6

find带有-mtime-mmin谓词的命令可以做到这一点。