ossim agent的插件和日志格式化过程

来源:互联网 发布:香港域名注册有限公司 编辑:程序博客网 时间:2024/06/05 01:10

主要流程:

1 设备把日志信息以syslog的形式发给agent,

2 日志存储在agent上面的/var/log/xxx.log下面,

3 agent调用/etc/ossim/agent/plugins下面对应的xxx插件来/var/log/xxx.log下面取对应的日志,

4 然后根据插件里面写的正则表达式来提取日志的关键字段发给server,server再将日志分析之后在ossim上面呈
现出来

插件情况:

a /etc/ossim/agent/plugins下面的插件,这些是系统自带的还可以自己来编写插件,核心是掌握正则表达式的写法,能够根据不同的日志来提取自己感兴趣的内容。
cisco-pix.cfg       nessus-monitor.cfg      snort_syslog.cfg
要让agent调用某个插件只需要在这个文件里面写上插件的路径就可以了
/etc/ossim/agent/config.cfg 一下展示部分插件的调用:
[plugins]
ossec=/etc/ossim/agent/plugins/ossec.cfg

b 插件内容基本是正则表达式

c 插件类型

检测插件(Detector)是检测器信息产生后,由agent自动向服务器发送,包括Snort、Apache等。而检测器插件需要主动采集安全设备接口上的信息,这类插件可分为Snort、P0f、Prads、Arpwatch、Apache、SSH、Sudo等。

监控(Monitor)插件,必须由服务器主动发起查询请求。监控插件中定义了需要主动采集的安全设备接口,该模块接收控制中心发出的命令和查询,在OSSIM系统中典型Monitor插件有Ntop、Nmap、Nessus等。

d 代理(Agent)

代理进程(由于Agent采用Python语言编写,所以无需编译就能在Python Shell环境运行)将运行在多个主机上,负责从安全设备采集相关信息(比如报警日志等),并将采集到的各类信息统一格式,最后将这些数据传至Server。

从采集方式上看,Agent属于主动采集,可以形象理解为由OSSIM Server安插在各个监控网段的“耳目”,由它们收集数据,并主动推送到Collector中,然后Collector又连接着消息队列系统、缓存系统及存储系统。

OSSIM中的这些代理脚本位于/usr/share/alienvault/ossim-agent/目录下。

日志格式化:

通过正则表达式可以提取时间、id、分类、报警级别、协议、源IP、源端口、目的IP 和目标端口等信息

原始日志被分成若干段填充到相应的域中,这些字段如下:

  date、sensor、interface、plugin_id、plugin_sid、priority、protocol、src_ip、src_port、dst_ip、dst_port

  username、password、filename、userdata1、userdata2、userdata3、userdata4、userdata5、userdata6、userdata7、userdata8、userdata9

处理后的内容类似

  • l源和目标地址:在关联分析中属于很重要的内容。
  • l源和目标端口:可以分析访问和试图访问的那些服务端口。
  • l消息分类: 根据用户登录成功或失败或者尝试的消息分类。
  • l时间戳: 这里包括日志消息在设备上产生的时间和系统接收消息的时间(因为有各种延迟存在,时间不同)。
  • l优先级: 例如网络设备(交换机)的日志包含了优先级(设备供应商制定)。作为规范化的一部分也需要日志包含优先级。
  • l接口: 通过那个网络接口接收到的日志消息。





参考

1 http://lymrg.blog.51cto.com/1551327/394559/

2 https://my.oschina.net/chenguang/blog/610839

3 http://blog.sina.com.cn/s/blog_560c5a9c0102w8k2.html

0 0
原创粉丝点击