我尝试从snoopy分析日志。 例如:
Dec 2 07:58:31 local.server snoopy[14165]: [uid:1660 sid:14056 tty:/dev/pts/1 cwd:/home/myuser filename:/usr/bin/ssh]: ssh root@remote.server
我写了一个解码器:
<decoder name="snoopy-logger">
<program_name>^snoopy</program_name>
</decoder>
和
<group name="snoopy-test">
<rule id="100040" level="0">
<decoded_as>snoopy-logger</decoded_as>
<description>Ignore Snoopy logger events</description>
</rule>
<rule id="100041" level="15">
<if_sid>100040</if_sid>
<match>ssh root@</match>
<description>snoopy root</description>
</rule>
</group>
当我通过logtest测试时,我得到了:
**Phase 1: Completed pre-decoding.
full event: 'Dec 2 07:58:31 local.server snoopy[14165]: [uid:1660 sid:14056 tty:/dev/pts/1 cwd:/home/myuser filename:/usr/bin/ssh]: ssh root@remote.server'
hostname: 'local.server'
program_name: 'snoopy'
log: '[uid:1660 sid:14056 tty:/dev/pts/1 cwd:/home/myuser filename:/usr/bin/ssh]: ssh root@remote.server'
**Phase 2: Completed decoding.
decoder: 'snoopy-logger'
**Phase 3: Completed filtering (rules).
Rule id: '100041'
Level: '15'
Description: 'snoopy root'
**Alert to be generated.
所以它有效,但在SIEM中我得到了src_ip和dst_ip = 0.0.0.0的事件。 我错过了什么?我需要src_ip = local.server和dst_ip = remote.server。
提前感谢任何建议:)
答案 0 :(得分:1)
看起来我的答案有点晚了,但不幸的是,OSSEC规则只是AlienVault解析问题的一半。
一旦OSSEC解析事件并且它具有足够高的级别来生成OSSEC警报,它就会被写入/var/ossec/logs/alerts/alerts.log,然后由ossim-agent读取它警报文件。 ossim-agent是传感器进程,负责读取原始文本日志,然后使用插件中定义的正则表达式解析它们(在本例中,/ etc / ossim / agent / plugins中的ossec-single-line.cfg插件) /).
您可能需要在/ etc / ossim / agent / plugins /中创建一个ossec-single-line.cfg.local文件,为插件添加额外规则,以便为OSSEC的原始插件添加规则。
有关创建规则和插件文件的更多信息,请访问AlienVault的文档: https://www.alienvault.com/doc-repo/usm/security-intelligence/AlienVault-USM-Plugins-Management-Guide.pdf
从第35页开始查看“自定义插件”部分。
快乐的调整!