简单的应用程序级文件完整性监控和入侵检测(IDS)

我们一直在CentOS / Linux上寻找一个简单的文件完整性监控解决scheme,可以在应用程序级别上运行。 我们没有把操作系统/networking级别的IDS作为OSSEC,其他人在这方面做得相当不错。

我们已经看过集中式(OSSEC)和非集中式(Tripwire Open Source),但是它们在文件限制和recursion监控数以千计的文件/目录方面各有其局限性。

基本上我们有成千上万的php / cgi / pl文件,我们希望监视更改/注入。 问题是他们都在可能包含其他文件types和其他事情变化的目录中。 目录完整性检查不是一个选项,因为目录可能会更改,而不是我们感兴趣监视的文件。

有没有一个软件可以采取'find'命令来获取文件列表,将这个文件列表放在一个数据库中,每个文件都有一个md5校验码,然后在下一次运行时,它会按照文件和警告来匹配文件列表文件对md5校验和和新文件的任何更改?

您可以使用auditd(用户空间) – 根据您的需要创build规则,集中消息和过滤事件日志。 它不会检查完整性,但会监视更改。 如果您正在运行自定义服务,那么编写完整性检查实用程序并不困难。

BTW。 OSSEC不支持文件名的正则expression式规则来进行文件完整性检查? O_O

也许你可以试试AIDE( http://aide.sourceforge.net/ ),并创build一个只监视* php / cgi / pl文件的规则。

看看Mugsy 。 您可以监视特定的目录,但排除某些模式。 它logging本地以及elasticsearch。

大多数文件完整性监控系统应该能够做到这一点,创build一个“已知好”的基准快照哪些文件稍后检查。

您已经提到了开源系统OSSEC和Tripwire,但也有一些商业select – 通常具有更好的用户界面,更容易configuration,并配有中央pipe理控制台。 Verisys就是一个这样的选项,它可以让你指定要包含和排除的文件的模式。 用户指南的一些信息在这里 。