2021SC@SDUSC
1、本周任务
上周对OSSIM系统进行了安装和部署,并分析了OSSIM系统所具备的相关功能,目前已经对OSSIM系统具有了一个初步的了解,想要深入了解OSSIM系统,必须要分析其组成架构、关键功能部分源代码。
所以本周的任务主要是:
- 分析OSSIM系统架构,了解其组成结构
- 找出关键功能部分对应的源代码
- 对部分源代码进行初步分析
2、OSSIM架构分析
2.1、OSSIM基本组成
2.2、OSSIM系统结构
第1层,属于数据采集层,使用各种采集技术采集流量信息、日志、各种资产信息,经过归一化处理后传入核心层。改层体现安全事件来源,入侵检测、防火墙、重要主机发出的日志都是安全事件来源,它们按发出机制分为两类:模式侦查器和异常监控(两者都采集警告信息,功能互补)由它们采集的安全事件,再被Agent转换为统一的格式发到OSSIM服务器,这一层就是Sensor要完成的内容。
第2层,属于核心处理层,主要实现对各种数据的深入加工处理,包括运行监控、安全分析、策略管理、风险评估、关联分析、安全对象管理、脆弱性管理、事件管理、报表管理等。该层中OSSIM Server是主角,OSSIM服务器,主要功能是安全事件的集中并对集中后的事件进行关联分析、风险评估及严重性标注等。所谓的集中就是以一种统一格式组织所有系统产生的安全事件告警信息(Alarms)并将所有的网络安全事件告警存储到数据库,这样就完成了对网络中所产生事件的一个庞大视图。系统通过事件序列关联和启发式算法关联来更好的识别误报和侦查攻击的能力。
OSSIM本质上通过对各种探测器和监控产生的告警进行格式化处理,再进行关联分析,通过后期这些处理能提高检测性能,即减少告警数量,减小关联引擎的压力,从整体上提高告警质量。
第3层,属于数据展现层,主要负责完成与用户之间的交互,达到安全预警和事件监控、安全运行监控、综合分析的统一展示,形式上以图形化方式展示给用户。Web框架(Framework)控制台界面即OSSIM的Web UI(Web User Interface,Web用户界面),其实就是OSSIM系统对外的门户站点,它主要由仪表盘、SIEM控制台、Alarm控制台、资产漏洞扫描管理、可靠性监控、报表及系统策略等部分组成。
OSSIM系统主要使用了PHP、Python、Perl和C等四种编程语言,从软件层面上看OSSIM框架系统包括五大模块:Agent模块、Server模块、Database数据库模块、Frameworkd模块以及Framework模块,逻辑结构如下图所示
五个模块之间的数据流向如图所示
五大模块的数据流向
① Agent至Server:来自各个传感器的安全事件被对应Agent格式化后,以加密字符串传给Server。
② Server至Agent:发送有关请求命令(request command),以字符串方式向Agent传送,主要是要求Agent完成插件的启动停止及获取信息等。
③ Server至Frameworkd:发送请求命令,要求Frameworkd针对Alarm采取相应操作,例如执行外部程序或发出Email来通知管理员。
④ Framework至Server:发送请求命令至Server。要求Server通知Agent对插件(Plugins)进行启动、停止等操作。
⑤ Framework至Frameworkd:发送请求命令,要求Frameworkd启动OpenVas扫描进程。
⑥ Frameworkd至Framework:传送OpenVas扫描结果在前端页面中显示。
⑦ Database至Agent和Server:向Agent和Server提供数据。
⑧ Server至Database:Server需要将Events、Alarms等数据存入数据库并索引或更新操作。
⑨ Database至Frameworkd:在Frameworkd中的Openvas扫描和动作需要用调用数据库里的数据。
⑩ Frameworkd至Database:在Frameworkd执行过程中将Openvas扫描结果存入数据库。
⑪Database至Framework:PHP页面显示需要调用数据库的告警事件。
⑫Framework至Database:用户参数设置信息需要存入数据库。
本篇文章部分内容参考或转载自下列文章及书籍。侵权即删。
参考书籍:
- 《开源安全运维平台OSSIM疑难解析(入门篇)》——李晨光著
- 《开源安全运维平台OSSIM疑难解析(提高篇)》——李晨光著
- 《开源安全运维平台:OSSIM最佳实践》——李晨光著
参考文章:
- https://blog.51cto.com/chenguang/2426473
- https://blog.csdn.net/lcgweb/article/details/101284949
- https://blog.51cto.com/chenguang/1665012
- https://www.cnblogs.com/lsdb/p/10000061.html
- https://blog.51cto.com/chenguang/1691090
- https://blog.51cto.com/chenguang/category10.html
- https://blog.51cto.com/topic/ossim.html
- https://blog.csdn.net/isinstance/article/details/53694361
- https://blog.51cto.com/chenguang/1332329
- https://www.cnblogs.com/airoot/p/8072727.html
- https://blog.51cto.com/chenguang/1738731
- https://blog.csdn.net/security_yj/article/details/120153992
上一篇(功能介绍):OSSIM开源安全信息管理系统(二)
下一篇(代码分析):OSSIM开源安全信息管理系统(四)