Samhain可以监视不存在但将来可能存在的文件吗?


8

我希望Samhain监视文件,例如/root/somefile。该文件当前不存在,但是如果要在任何时候创建该文件,我希望得到通知。

我将此添加到samhainrc

[ReadOnly]
file = /root/somefile

这导致Samhain发出以下日志条目:

Oct 18 22:54:04 ip-172-31-24-115 Samhain[17123]: CRIT   :  [2018-10-18T22:54:04+0000] interface=<lstat>, msg=<No such file or directory>, userid=<0>, path=</root/somefile>
Oct 18 22:54:04 ip-172-31-24-115 Samhain[17123]: CRIT   :  [2018-10-18T22:54:04+0000] msg=<POLICY MISSING>, path=</root/somefile>
Oct 18 22:54:19 ip-172-31-24-115 Samhain[17157]: INFO   :  [2018-10-18T22:54:19+0000] msg=<Checking       [ReadOnly]>, path=</root/somefile>
Oct 18 22:54:19 ip-172-31-24-115 Samhain[17157]: NOTICE :  [2018-10-18T22:54:19+0000] msg=<Check failed>, path=</root/somefile>

而且,如果我使用创建该文件echo test > /root/somefile,则不会记录任何违反政策的行为-该文件的添加未被注意到。

如果创建了以前不存在的感兴趣文件,我如何配置Samhain通知我?


IgnoreMissing配置选项会出现在乍看之下是有用的,但事实并非如此。使用IgnoreMissing = /root/somefilein samhainrc,行为不会改变。看来,此选项用于预期以后会丢失的文件-如果文件曾经存在,但现在不存在,例如,如果自动化过程删除了过时的文件,它将取消警报。


尽管/root/somefile显然是在这种情况下弥补的,但一个不存在的文件突然开始存在的示例是:如果该文件/home/someuser/.ssh/authorized_keys先前不存在但突然存在了-这可能是恶意用户利用某些东西丢弃了后门程序,他们以外壳程序用户身份登录。这是我想提醒的事情。

可以使用它dir = /home/someuser/.ssh来监视用户文件夹中的所有更改.ssh,但这无济于事:如果用户在其帐户中使用SSH是正常的,则他们的.ssh/known_hosts文件可能会更改,他们可能会更改其ssh_config等等,而我不想被那些提醒。因此,除了某些列入白名单的文件,我不想监视整个目录。除了特定的关键文件之外,我想不监控目录。


您可以通过创建一个空文件来解决此问题。在这种情况下authorized_keys可以正常工作。
迈克尔·汉普顿

确实是@MichaelHampton,这是我一直在使用的解决方法。这意味着我需要保持创建与Samhain config同步的空文件的设置脚本-不够理想,但确实可以。
理查德·唐纳

Answers:


0

如果我正确理解,则需要监视dir中的所有文件,但某些文件或子目录除外:

您可以尝试下一个:

[ReadOnly] 
    #
    dir=/home/someuser/.ssh 
    # 
    [Attributes] 
    # 
    # less restrictive policy for the directory file itself 
    # 
    file=/home/someuser/.ssh 
    # 
    [IgnoreAll] 
    # 
    # exclude these file and directories 
    #
    file=/home/someuser/.ssh/known_hosts
    #dir=-1/etc/calendar
    #

更多信息 https://www.la-samhna.de/samhain/manual/all-except.html


“如果我理解正确,则需要监视dir中的所有文件,但某些文件或子目录除外”-这是不正确的。我不想监视所有文件。我想用已知的特定名称监视一个特定文件(或少量文件),而忽略所有其他文件。例如,在用户的主目录中,我要监视.bashrc。我不想将用户可能在其主目录中创建的每个单个文件列入白名单。问题在于,如果.bashrc提前不存在,Samhain将完全不会对其进行监视,并且如果以后创建的包含恶意内容的内容也不会提醒我。
理查德·唐纳
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.