OSSIM架构与组成综述

一、背景

如果运维工程师手里没有高效的管理工具支持,就很难快速处理故障。市面上有很多运维监控工具,例如商业版的 Solarwinds、ManageEngine以及WhatsUp等,开源的MRTG、Nagios、Cacti、Zabbix、OpenNMS、Ganglia等。

Sensor Status”查看所添加的监控插件的工作状态,如图6所示。图6 查看Sensor监控插件工作状态

注意:监控器相当于“督战队”,谁(关键服务进程)要是“罢工”了就会在设定的时间内重启进程,这样可以保护关键进程。

UNIX/Linux环境下,大部分系统都安装有SNMP与Syslog工具。如果采集数据的目标系统为Windows,那么考虑使用WMI协议,此时只需要在Windows上进行相关配置,以便能够远程访问,无需安装额外的工具软件。

四、 采集与监控插件的区别

在OSSIM系统的Sensor端包含了采集(Collection)和监控(Monitor)这两类插件统称为安全插件,它们都安装在Sensor上。虽然都称为插件可工作原理却不同,检测插件(Detector)是检测器信息产生后,由代理自动向服务器发送,包括Snort、Apache等。而检测器插件需要主动采集安全设备接口上的信息,这类插件可分为Snort、P0f、Prads、Arpwatch、Apache、SSH、Sudo等。

监控(Monitor)插件,必须由服务器主动发起查询请求。监控插件中定义了需要主动采集的安全设备接口,该模块接收控制中心发出的命令和查询,在OSSIM系统中典型Monitor插件有Ntop、Nmap、Nessus等。读者可在Alienvault控制台的Sensor配置中(Configure Monitor Plugins)查看。OSSIM主要安全插件如表1所示。

表1 OSSIM主要插件分布情况

分类

功能

插件名称

1

访问控制

csico-acs、cisco-acs-idm、cisco-asa

2

防病毒

Avast、gfi security、mcafee、clamav

3

防火墙

fw1-alt、cisco-pix、ipfw、m0n0wall、netscreen-igs、Motorola-firewall、iptables、pf(openbsd项目)

4

HIDS

Ossec、ossec-single-line Osiris

5

负载均衡

Allot、cisco-ace、citrix-netscaler、f5、heartbeat

6

网络监控

ntop-monitor、p0f、prads、session-monitor、tcptrack-monitor

7

虚拟化

vmware-esxi、vmware-vcenter、vmware-vcenter-sql

8

漏洞扫描

Nessus、Nessus-detector、Nessus-monitor

对OSSIM插件位置的说明:在安装时系统将支持的插件,全部复制到目录/etc/ossim/agent/plugins/目录中,如Nagios插件的扩展名为“.cfg”的文本文件,可以用任何编辑器修改,在每个插件配置文件中最难理解的当属理解正则表达式(RegExp)。OSSIM下主要插件如图7所示。

列如OSSIM代理(ossim-agent)直接读取存储在/var/log/suricata/unified2.alert.1428975051日志。

suricata的报警输出文件是/var/log/suricata/unified2.alert,这是由/etc/suricata/suricata.yaml配置文件在111行 # alert output for use with Barnyard2定义,所以ossim-agent直接读取该文件就能显示在SIEM控制台中。

Agent的主要功能是接收或抓取Plugins发送过来或者生成的日志,经过归一化处理,然后有序地传送到OSSIM的Server,它的功能很复杂,因为它的设计要考虑到如果Agent和Server之间的网络中断、拥堵、丢包等情况。

在免费版的OSSIM系统中,其日志处理大部分情况下不能达到实时,但可以达到准实时(Firm Real-Time),通常会在Agent端缓存一段时间才会发送到Server端去。Agent会主动连接两个端口与外界通信,一个是连接Server的40001端口(在/etc/ossim/agent/config.cfg配置文件的选项[output-server]中端口设置能看出通讯端口为40001),而另一个是连接数据库的3306端口。如图11所示。

图11 日志归一化处理、收集与存储

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

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

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

其实Sensor的输出数据就是Ossim Server的输入“原料”,我们可在WebUI中查看Sensor的output情况。如图12所示。

九、 代理与插件的区别

初学者常混淆代理和插件的概念,Sensor(传感器)指软件和硬件的传感器被安装在网络中收集和发送数据,而代理是运行在传感器上,用来收集和发送数据到服务器的一段脚本,一个插件需要了解特定系统的日志格式(例如防火墙、IDS),并通过插件来采集数据。

系统中如果启用插件越多,那么采集到网络中各种数据就越全面,在Sensor中加载过多的插件,将会占有OSSIM Server的数据库空间,下面的这条经验值需要读者了解,OSSIM系统中每条事件,约占用1KB存储空间,而1millions的事件量,大约占1.5GB空间。

十、 传感器(Sensor)

传感器(Sensor)俗称探针,用来收集监控网段内主机的信息,它工作在网卡的嗅探模式。

传感器工作在一台Debian Linux主机上,通过ISO镜像安装,对于新手来讲非常容易操作,他的目的是收集信息,发送给OSSIM Server。在一个分布式OSSIM系统平台上,可以有十多个传感器协同工作。传感器可以收集来自多个数据源的数据包,包括来自主机的,也包括来自网络的数据包,另外传感器除了收集数据(比如SPAN,Agent)以提供分析之外,还具有过滤功能可以通过Agent里面的plugin实现过滤冗余和无效数据的功能,已达到减少OSSIM Server端数据量,提高数据速度的效果。举个例子在对于来自同一个IP地址的数据,传感器可以通过模式匹配的方法来判断冗余数据,最终聚合成很少量的数据传送给OSSIM Server。

另外要主机,传感器能够和本地代理(比如Ossec agent,Snare),事件收发器通讯,但传感器之间并不直接通讯。

OSSIM系统中,把Agent和插件构成的一个具有网络行为监控功能的组合称为一个传感器,Sensor的功能范围主要有:

  • 入侵检测(最新版已换成支持多线程的Suricata)
  • 漏洞扫描(OpenVas、Nmap)
  • 异常检测(P0f、Prads、ARPWatch等)

Arpwatch主要监视网络中新出现的MAC地址,它包含1个监视库,名为arp.dat,在OSSIM中位于/var/lib/arpwatch/arp.dat,所以它同样是AIDE监控的对象。

OSSIM具有强大的网络威胁监控,流量监测的功能,但无法将威胁阻断,所以不能将其串联在防火墙链路,最佳方法是作为旁路链接使用,这一点就像部署审计设备一样。

在OSSIM系统的传感器的状态可在Configuration→Deployment→Components→Sensors中查看详情,如图18所示。

参考文献:

1. 李晨光.开源安全运维平台OSSIM最佳实践【M】北京:清华大学出版社,2016.1

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
OSSIM架构与组成综述
如果运维工程师手里没有高效的管理工具支持,就很难快速处理故障。市面上有很多运维监控工具,例如商业版的 Solarwinds、ManageEngine以及What...
<<上一篇
下一篇>>