1

我尝试分析来自 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。

在此先感谢您的任何建议 :)

4

1 回答 1

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 页开始的自定义插件部分。

快乐调音!

于 2016-03-29T18:00:37.120 回答