《开源安全运维平台OSSIM最佳实践》

时间:2024-04-16 09:04:22

《开源安全运维平台OSSIM最佳实践》

经多年潜心研究开源技术,历时三年创作的《开源安全运维平台OSSIM最佳实践》一书即将出版。该书用80多万字记录了,作者10多年的IT行业技术积累,重点展示了开源安全管理平台OSSIM在大型企业网运维管理中的实践。国内目前也有各式各样的开源安全运维系统,经过笔者对比分析得出这些工具无论在功能上、性能上还是在安全和稳定性易用性上都无法跟OSSIM系统想媲美,而且很多国内的开源安全运维项目在发布1-2年后就逐步淡出了舞台,而OSSIM持续发展了十多年。下面就看看这本书中涉及OSSIM主要讲解那些内容。

《开源安全运维平台OSSIM最佳实践》

前  言

一、为什么要写作本书

1. 现状

日常工作中,运维人员大部分时间和精力都用于处理简单、重复的问题,由于故障预警机制不完善,往往故障发生后才会进行处理,运维人员经常处于被动“救火”状态。
没有高效的管理工具支持,就很难快速处理故障。市面上有很多运维监控工具,例如商业版的、
Solarwinds、ManageEngine以及WhatsUp等,开源的MRTG、Nagios、Cacti、Zabbix、OpenNMS、Ganglia等。由于它们彼此之间没有联系,即便部署了这些工具,很多运维人员并没有从中真正解脱出来,成千上万条警告信息堆积在一起,很难识别问题的根源,结果被海量日志所淹没,无法解脱出来。
另外在传统运维环境中,当查看各种监控系统时需要多次登录,查看繁多的界面,更新管理绝大多数工作主要是手工操作,即使一个简单的系统变更,需要运维人员逐一登录系统,若遇到问题,管理员便会在各种平台间来回查询,或靠人肉方式搜索故障关键词,不断的重复着这种工作方式。企业需要一种集成安全的运维平台,满足专业化、标准化和流程化的需要来实现运维工作的自动化管理,通过关联分析及时发现故障隐患。

2. 手工整合的演化过程

在人工管理初期,主要依靠一些简单的Shell脚本完成一些基础工作,后来虽然采用Cacti来做性能监控,Nagios做主机监控、PHP+SSH等方式进行管理,但各种运维工具仍无法实现数据共享,此时整个防御体系面对网络威胁“反应迟钝”,每当故障来袭,总是“马后炮”,难以查找攻击者的踪迹,就好像一个人总被蚊子叮咬,想打蚊子可手眼又跟不上的感觉。
经过分析后,开始尝试将资产管理模块、入侵检测模块、流量监控模块、漏洞扫描模块集成到一台服务器中进行统一管理,实现了标准化日志、统一处理等任务,在系统改造中以下问题尤为突出:
 安装时软件依赖问题难以解决。
 各子系统界面重复验证和界面风格不统一。
 各子系统之间数据无法共享。
 无法实现数据之间关联分析。
 无法生成统一格式的报表。
 缺乏统一的仪表板以展示重要信息。
 系统维护难度增大。
将这些开源工具集成比较困难,该方案架构并不合理,出现了性能瓶颈,对于安全事件的关联分析、合规管理及知识库查询依然无法实现。

3. 终极工具——OSSIM集成安全运维的平台

发现一个好的管理平台并不是偶然,管理员从最原始的命令行的运维时代,进化到统一管理平台,的确要走很多弯路,其实这一过程就是普通管理员到专家的蜕变。只有经历过磨难的管理员才能深刻体会到这一点。一款优秀的安全运维平台,需要将事件与IT
流程相关联,筛选出运维人员最关心的事件,提高工作效率。
目前能满足上述要求的开源产品只有OSSIM系统,它是由Alienvault公司开发,现分为开源OSSIM和商业版USM两种,通过该平台实现对用户操作规范的约束和对计算机资源进行监控,包括服务器、数据库、中间件、存储备份、网络基础设施,通过自动监控管理平台实现故障综合处理和集中管理,能够为您的网络构建起一套敏感的、全方位的中枢神经系统,达到感知网络威胁的效果。

二、创作过程

说起来,我和OSSIM还是挺有缘分。研究生时曾开发过开源统一安全管理平台项目,主要目标是将不同网络设备和服务器的日志,通过标准化转化为事件,然后统一进行日志分析与设备联动。在完成这个项目过程中,主要参考OSSIM源代码,先后尝试了基于统计、基于距离和基于决策树的算法,攻破了网络安全事件聚合的难题。
这些年先后为几十家单位成功部署了OSSIM系统,并提供技术支持。在OSSIM项目实施过程中不断总结遇到的各种问题,经过三年的技术沉淀与积累,目前已经撰写出600多页的OSSIM应用教程,但是这些零散的手稿不成体系。从2015年初,开始将这些系统部署的经验进行合理组织,全书规划成三篇,共十章内容,这些内容包含OSSIM系统的各种知识和技巧,使读者今后再遇到问题能够举一反三。即使OSSIM更新升级后,读者也能结合书中介绍的概念和操作方法,同样能够掌握,那么本书的目标就达到了。
从事IT工作的人都比较忙,很少有完整的时间能清闲下来,对于一般人而言没有时间,就是最好的幌子,而善于利用时间的人往往能够利用各种间隙,进行创作构思。在本书创作中并不是一帆风顺,有时候为了验证一个技术问题,需要反复实验,为了一句话需要经过反复推敲。

初稿出炉,必须经过不断修改润色,才适合阅读,本书刚刚写完时才500多页,但是在一遍又一遍的修改笔误和错别字之后,萌发出新的想法,每复查一遍,我都会对原稿做一些改动,数量上要数第一次改动扩充最大,以后逐渐减少,直到满意为止。

本书不是什么神功秘籍,无法让你在短时间内从一个小白变成一个牛人。书中以OSSIM
4平台为基础进行讲解,将各种开源软件合理的融入进来,并把本人多年OSSIM实施经验以案例的形式表达出来。学习OSSIM的道路并不是一帆风顺,希望读者朋友再遇到困难时,本书能够为您答疑解惑。

三、篇章结构
书的结构好比框架,而内容则是具体组成元素,本书采用了文字、图表和范例等形式,将OSSIM复杂的结构和工作流程直观的展现给读者。全书分为三部分,共10章。

1. 基础篇

第1章:本章从OSSIM起源讲起,介绍了目前运维人员现状,逐步谈到应用SIEM的必要性,进而介绍OSSIM架构与组成原理,另外还介绍了基于插件的日志采集思路,提出标准化安全事件的全新理念,详细分析了OSSIM的高可用架构与实现方法。
第2章:本章从OSSIM实施关键要素、安装策略、硬件选型开始,深入分析单机部署,分布式体系、传感器设置等重要安装工作。分析了安装过程以图文并茂的方式,指出了系统配置过程,包括实体机,虚拟机不同环境中的安装方法及注意事项。最后重点分析了SIEM事件控制台的使用和事件过滤方法。

2. 提高篇

第3章:本章对于OSSIM开发人员很有帮助,除了介绍OSSIM数据库组成、表结构,以及系统迁移备份等技巧,以外还包括各种常见MySQL故障等内容。
第4章:本章从关联分析基础讲起,逐步深入到OSSIM安全事件提取过程,介绍了常用的关联分析算法。还对报警事件的聚合原理作了详细分析,并结合OSSIM现状采用多个实例讲解关联规则和自定义策略的使用方法。
第5章:本章主要介绍各种OSSIM系统中的监控调试工具的使用,以及系统瓶颈的诊断方法。
第6章:本章重点介绍了Snort
原理和预处理程序发挥的作用,包括Snort报警方法。深入分析Snort规则编写在OSSIM中的应用技巧以及网络异常行为分析方法。

3. 实战篇

第7章:本章从日志标准化和收集分析方法讲起,详细分析各种服务、网络设备所产生的日志,包括Apache、Ftp、Squid、Dhcp等,并通过实例详细介绍OSSIM插件开发过程。
第8章:本章讲解Netflow进行异常流量分析的方法,包括Netflow数据采集和过滤方法,介绍了分布式环境中,利用Netflow监测异常流量的技巧,同时针对OSSIM中Ntop、Nagios、Netflow三种检测工具的使用方法进行了对比。最后还介绍了Cacti和Zabbix第三方开源监控软件集成的方法。
第9章:本章从OSSIM控制管理中心角色权限控制讲起,全面介绍了OSSIM
Web
UI的结构,讲解了Ossec日志分析工具的配置使用和Agent的安装方法。介绍了OSSIM中管理网络资产的实例,并对Openvas扫描模块、脚本以及规则做了深入分析。展示了多个利用OSSIM进行高级攻击检测的实例,以及利用OSSIM进行合规管理和系统统一报表输出的方法。
第10章:本章主要讲解基于Web方式下的抓包及数据包过滤方法,并采用该工具远程解决网络故障的方法,重点介绍了tshark、tcpdump等抓包工具的高级使用方法,最后以一个典型IE浏览器的0
day漏洞攻击的实例来检验这种工具所发挥的作用。

四、本书约定
(1)关于版本
本书软件的安装环境为Debian Linux
6.0(Squeeze),内核为2.6.32。在安装其他软件时,必须符合该版本要求。
(2)关于菜单的描述
OSSIM的前台界面复杂,书中经常会用一串带箭头的单词表达菜单的路径,例如Web
UI
的Dashboards→Overview→Executive,表示Web界面下鼠标依次经过菜单Dashboards、Overview最后到达Executive仪表板。
(3)路径问题
本书中除特别说明,所涉及路径均指在OSSIM系统下的路径,而不是其他的Linux发行版。终端控制台指通过root登录系统,然后输入“ossim-setup”启动OSSIM终端控制台的界面,如图1所示。
 
图1 
终端控制台
在终端控制台下,选择Jailbreak System菜单就能进入Root
shell,登录日志会保存在/var/log/ossim/root_access.log文件中。
(4)SIEM事件分析控制台
书中的SIEM控制台是指通过Web
UI 进入系统,在菜单Analysis→SIEM下的界面,如图2所示。
 
图2  SIEM事件分析控制台
(5)关于OSSIM
Server端与Sensor端的约定
本书各章中讲述的OSSIM Server端,是指通过Alienvault
USM安装的系统,包括OSSIM四大组件,Sensor端是通过Alienvault
Sensor安装的系统。
(6)关于地图显示问题
所有地图信息引自谷歌地图,大家在做实验前确保能连上谷歌地图,而且使用系统中OTX,前提条件也需要能连接到谷歌。
(7)浏览器约定
OSSIM
Web UI适合采用Safari7.0以上、Google Chrome44.0以上IE10.0以上浏览器访问。

五、本书读者对象
本书主要面向以下类型读者:
互联网和安全行业的系统安全从业人员。
银行、证卷和保险行业IT运维人员。
   
*、高校和科研机构等单位IT运维人员。

六、光盘内容
本书配套光盘包括:OSSIM入门多媒体教程、OSSIM安装ISO、OSSIM源码三部分内容,其中视频内容有以下章节:

 第一集:OSSIM的由来及应用部署
 第二集:网络威胁感知技术探讨
 第三集:OSSIM单机部署安装与分布式安装
 第四集:OSSIM仪表盘操作初步
 第五集:SIEM控制台与Alarm事件告警解析
 第六集:资产管理与漏洞扫描
 第七集:Openvas组成及升级实践
 第八集:Netflow应用
 第九集:OSSIM权限设置与策略管理
 第十集:用OSSIM发现蠕虫攻击
 第十一集:报表合规管理
 第十二集:命令行模式下控制台综合管理

七、关于作者
李晨光,毕业于中国科学院研究生院,目前就职于世界500强企业,资深网络架构师、51CTO学院讲师、IBM精英讲师、UNIX/Linux系统安全专家,现任中国计算机学会(CCF)高级会员;在国内《计算机安全》、《程序员》、《计算机世界》、《网络运维与管理》、《黑客防线》等专业杂志发表论文六十余篇。曾独著畅销书《Linux企业应用案例精解》、《Linux企业应用案例精解第2版》,《Unix/Linux网络日志分析与流量监控》等经典学习教程,均被中科院图书馆、国内重点高校图书馆和国立*大学图书馆等200多家图书馆收藏。《Unix/Linux网络日志分析与流量监控》一书,于2015年获最受读者喜爱的本版类图书奖。
本人经常受邀在国内系统架构师大会和网络信息安全大会发表技术演讲,2012年担任中国系统架构师大会(SACC)运维开发专场嘉宾主持人。2013年在IT168举办企业内网信息安全实践沙龙活动在发表技术演讲。2014(第十届)中国网络主管论坛北京站发表技术演讲。2014年《网络运维与管理》杂志对本人进行独家专访并刊发于13期杂志中、2015年4月在WOT互联网运维与开发者大会发表技术演讲,如图3所示。
图3 
作者在各种全国大会中发表技术演讲

八、支持与勘误
由于OSSIM本身结构复杂,知识点众多,在本书撰写过程中难免有所疏漏,希望广大读者能把问题反馈给笔者,本人不胜感激。为了方便读者学习实践,书中涉及所有软件和实验环境都已发布在作者博客http://chenguang.blog.51cto.com/350944/1679097,在此博客中的OSSIM专栏包含了大量实战经验,大家可以一边阅读本书,一边参考博客,互为印证,如有问题大家可以留言,我将定期为读者解答。

九、致谢
首先感谢我的父母多年来养育之恩,感谢我在各个求学阶段的老师们,感谢每一位读者,你们将是本书继续完善的新动力,尤其要感谢我的妻子,有了她精心的照顾,我才能全身心投入到创作中。最后要感谢清华大学出版社的编辑们,为了提升本书质量他们花费了大量心血。本书若有不足之处,敬请读者不吝指正。

本书关键词:

日志标准化;可视化事件;网络安全态势感知技术;关联分析;网络风险评估;漏洞扫描;协议分析;流量分析;合规管理;报表输出;分布式部署;IDS/NIDS/HIDS;IP信誉;数据库备份

目    录

第一篇  基础篇

第1章  OSSIM架构与原理 2

1.1  OSSIM概况 2

1.1.1  从SIM到OSSIM 3

1.1.2  安全信息和事件管理(SIEM) 4

1.1.3  OSSIM的前世今生 5

1.2  OSSIM架构与组成 11

1.2.1  主要模块的关系 12

1.2.2  安全插件(Plugins) 14

1.2.3  采集与监控插件的区别 15

1.2.4  检测器(Detector) 18

1.2.5  代理(Agent) 18

1.2.6  报警格式的解码 19

1.2.7  OSSIM Agent 20

1.2.8  代理与插件的区别 24

1.2.9  传感器(Sensor) 24

1.2.10  关联引擎 26

1.2.11  数据库(Database) 28

1.2.12  Web 框架(Framework) 29

1.2.13  Ajax创建交互 30

1.2.14  归一化处理 31

1.2.15  标准的安全事件格式 31

1.2.16  OSSIM服务端口 35

1.3  基于插件的日志采集 37

1.3.1  安全事件分类 37

1.3.2  采集思路 37

1.4  Agent事件类型 43

1.4.1  普通日志举例 43

1.4.2  plugin_id一对多关系 44

1.4.3  MAC事件日志举例 46

1.4.4  操作系统事件日志举例 46

1.4.5  系统服务事件日志举例 46

1.5  RRDTool绘图引擎 47

1.5.1  背景 47

1.5.2  RRD Tool与关系数据库的不同 48

1.5.3  RRD绘图流程 48

1.6  OSSIM工作流程 49

1.7  缓存与消息队列 49

1.7.1  缓存系统 49

1.7.2  消息队列处理 50

1.7.3  RabbitMQ 51

1.7.4  选择Key/Value存储 52

1.7.5  Ossim下操作Redis 53

1.7.6  Redis Server配置详解 56

1.7.7  RabbitMQ、Redis与Memcached监控 57

1.8  OSSIM 高可用架构 59

1.8.1  OSSIM高可用实现技术 59

1.8.2  安装环境 60

1.8.3  配置本地主机 60

1.8.4  配置远程主机 61

1.8.5  同步数据库 61

1.8.6  同步本地文件 61

1.9  OSSIM防火墙 62

1.9.1  理解Filter机制 62

1.9.2  规则匹配过程 64

1.9.3  Iptables规则库管理 65

1.10  OSSIM的计划任务 66

1.10.1  Linux计划任务 66

1.10.2  OSSIM中的计划任务 68

1.11  小结 70

第2章  OSSIM部署与安装 71

2.1  OSSIM安装策略 71

2.1.1  定制IDS策略 71

2.1.2  传感器位置 72

2.2  分布式OSSIM体系 73

2.2.1  特别应用 74

2.2.2  多IDS系统应用 74

2.3  安装前的准备工作 75

2.3.1  软硬件配备 75

2.3.2  传感器部署 76

2.3.3  分布式OSSIM系统探针布局 78

2.3.4  OSSIM服务器的选择 78

2.3.5  网卡的选择 80

2.3.6  手动加载网卡驱动 80

2.3.7  采用多核还是单核CPU 81

2.3.8  查找硬件信息 81

2.3.9  OSSIM USM和Sensor安装模式的区别 82

2.3.10  OSSIM商业版和免费版比较 83

2.3.11  OSSIM实施特点 84

2.3.12  OSSIM管理员分工 85

2.4  混合服务器/传感器安装模式 86

2.4.1  安装前的准备工作 86

2.4.2  开始安装OSSIM 86

2.4.3  遗忘Web UI登录密码的处理方法 90

2.5  初始化系统 90

2.5.1  设置初始页面 91

2.5.2  OTX——情报交换系统 97

2.6  Vmware ESXi下安装OSSIM注意事项 100

2.6.1  设置方法 100

2.6.2  虚拟机下无法找到磁盘的对策 102

2.7  OSSIM分布式安装实践 102

2.7.1  基于OpenSSL的安全认证中心 102

2.7.2  安装步骤 102

2.7.3  分布式部署(VPN连接 )举例 103

2.7.4  安装多台OSSIM(Sensor) 105

2.7.5  Sensor重装流程 110

2.8  添加VPN连接 111

2.8.1  需求 111

2.8.2  Server端配置(10.0.0.30) 111

2.8.3  配置sensor(10.0.0.31) 112

2.9  安装最后阶段 113

2.10  OSSIM安装后续工作 114

2.10.1  时间同步问题 114

2.10.2  系统升级 115

2.10.3  apt-get 常见操作 118

2.10.4  扫描资产 119

2.10.5  通过代理升级系统 119

2.10.6  防火墙设置 120

2.10.7  让控制台支持高分辨率 121

2.10.8  手动修改服务器 IP地址 121

2.10.9  修改系统网关和DNS地址 121

2.10.10  更改默认网络接口 122

2.10.11  消除登录菜单 122

2.10.12  进入OSSIM单用户模式 122

2.11  OSSIM启动与停止 123

2.12  安装远程管理工具 125

2.12.1  安装Webmin管理工具 125

2.12.2  安装PhpmyAdmin 125

2.12.3  用PhpmyAdmin同步功能迁移数据库 127

2.13  分布式系统查看传感器状态 128

2.13.1  设置指示器 128

2.13.2  注意事项 130

2.14  安装桌面环境 131

2.14.1  安装GNOME环境 131

2.14.2  安装FVWM环境 132

2.14.3  安装虚拟机 135

2.15  自动化配置管理工具Ansible 137

2.15.1  SSH的核心作用 138

2.15.2  Ansible配置 139

2.15.3  Ansible实战 139

2.15.4  丰富的模块 144

2.15.5  Ansible 与其他配置管理的对比 144

2.16  SIEM控制台基础 144

2.16.1  SIEM控制台日志过滤技巧 145

2.16.2  将重要日志加入到知识库 151

2.16.3  SIEM中显示不同类别日志 153

2.16.4  常见搜索信息 156

2.16.5  仪表盘显示 156

2.16.6  事件删除与恢复 157

2.16.7  深入使用SIEM控制台 158

2.16.8  SIEM事件聚合 162

2.16.9  SIEM要素 163

2.16.10  SIEM警报中显示计算机名 170

2.16.11  SIEM事件保存期限 170

2.16.12  SIEM数据源与插件的关系 171

2.16.13  SIEM日志显示中出现0.0.0.0地址的含义 172

2.16.14  无法显示SIEM安全事件时处理方法 173

2.16.15  SIEM数据库恢复 173

2.16.17  EPS的含义 174

2.16.17  常见OSSIM 安装/使用错误 175

2.17  可视化网络攻击报警Alarm分析 177

2.17.1  报警事件的产生 177

2.17.2  报警事件分类 178

2.17.3  五类报警数据包样本下载 183

2.17.4  报警分组 183

2.17.5  识别告警真伪 185

2.17.6  触发OSSIM报警 185

2.18  小结 193

第二篇  提高篇

第3章  OSSIM数据库概述

3.1  OSSIM数据库组成 195

3.1.1  MySQL 195

3.1.2  本地访问 196

3.1.3  检查、分析表 198

3.1.4  启用MySQL慢查询记录 199

3.1.5  远程访问 199

3.1.6  MongoDB 200

3.1.7  SQLite 201

3.2  OSSIM数据库分析工具 201

3.2.1  负载模拟方法 202

3.2.2  用MySQL Workbench工具分析 数据库 203

3.3  查看OSSIM数据库表结构解析 209

3.4  MySQL基本操作 212

3.5  OSSIM系统迁移 213

3.5.1  迁移准备 213

3.5.2  恢复OSSIM 214

3.6  OSSIM数据库常见问题解答 216

1.当OSSIM 4系统数据库发生损坏时,如何重建数据库。

2.如何查询OSSIM数据库的host开头的表。

3.如何备份OSSIM的SIEM数据库。

4.如何查看MySQL数据库信息。

5.如何查看OSSIM系统的SIEM数据库备份情况。

6.如何终止OSSIM数据库的僵尸进程。

7.如果负载过大在OSSIM 系统中出现“MySQL :ERROR 1040:Too many connections”情况如何处理。

8.如何远程导出OSSIM数据库表结构。

9.OSSIM系统出现acid表错误时如何处理。

10.能修改OSSIM系统中MySQL数据库密码?

11.当意外中断数据库写操作会会对数据库的表造成损坏,如何检查表。

12.如何清理OSSIM数据库。

13.如何用xtrabackup备份OSSIM 数据库。

14.如何快速清除SIEM数据库。

15.如何记录OSSIM数据库的执行过程。

16.如何优化表。

17.如何用mysqldump备份数据库。

3.7  小结 226

第4章  OSSIM关联分析技术 227

4.1  关联分析技术背景 227

4.1.1  当前的挑战 227

4.1.2  基本概念 228

4.1.3  安全事件之间的关系 228

4.2  关联分析基础 229

4.2.1  从海量数据到精准数据 229

4.2.2  网络安全事件的分类 230

4.2.3  Alarm与Ticket的区别 234

4.2.4  使用Ticket 235

4.2.5  加入知识库 236

4.2.6  安全事件提取 237

4.2.7  OSSIM的关联引擎 238

4.2.8  事件的交叉关联 239

4.3  报警聚合 240

4.3.1  报警样本举例 240

4.3.2  事件聚合 241

4.3.3  事件聚合举例 242

4.3.4  事件聚合在OSSIM中的表现形式 243

4.3.5  SIEM中的冗余报警 244

4.3.6  合并相似事件 245

4.3.7  同类事件的判别 245

4.3.8  合并流程 246

4.3.9  事件映射 246

4.3.10  Ossec 的报警信息的聚类 247

4.3.11  Ossec与Snort 事件合并 248

4.4  风险评估方法 249

4.4.1  风险评估三要素 249

4.4.2  Risk & Priority & Reliability的关系实例 250

4.4.3  动态可信度值(Reliability) 253

4.4.4  查看SIEM不同事件 254

4.5  OSSIM系统风险度量方法 256

4.5.1  风险判定 256

4.5.2  事件积累过程 258

4.6  OSSIM中的关联分类 259

4.6.1  关联分类 259

4.6.2  关联指令分类 260

4.6.3  指令组成 262

4.6.4  读懂指令规则 264

4.6.5  Directive Info 265

4.7  新建关联指令 266

4.8  OSSIM的关联规则 270

4.8.1  关联指令配置界面 271

4.8.2  构建规则 274

4.9  深入关联规则 276

4.9.1  基本操作 276

4.9.2  理解规则树 277

4.9.3  攻击场景构建 281

4.9.4  报警聚合计算方法 282

4.10  自定义策略实现SSH登录失败告警 282

4.11  小结 286

第5章  OSSIM系统监测工具 287

5.1  Linux性能评估 287

5.1.1  性能评估工具 287

5.1.2  查找消耗资源的进程 289

5.2  OSSIM压力测试 289

5.2.1  软硬件测试环境 289

5.2.2  测试项目 290

5.2.3  测试工具 290

5.2.4  IDS测试工具Nidsbench 293

5.3  性能分析工具实例 295

5.3.1  sar 296

5.3.2  vmstat 296

5.3.3  用iostat分析I/O子系统 297

5.3.4  dstat 298

5.3.5  iotop 300

5.3.6  atop 300

5.3.7  替代netstat的工具ss。 300

5.4  OSSIM平台中MySQL运行状况 301

5.4.1  影响MySQL性能的因素 301

5.4.2  系统的IOPS 302

5.5  Syslog压力测试工具——Mustsyslog使用 303

5.5.1  安装mustsyslog 304

5.5.2  日志模板设计 306

5.5.3  日志标签说明 306

5.5.4  域标签举例 306

5.6  常见问题解答 307

1.OSSIM系统空间不足在哪里查找大型文件。

2. 何时应考虑增加系统内存。

3.检测OSSIM系统整体状态的命令行工具

4.监控MySQL利器-mytop

5.监控Linux系统资源和进程的工具。

6.如何找出最消耗内存的进程(smem)

7.如何对OSSIM系统目录大小进行排序?(ncdu)。

8.OSSIM的流量监控工具iftop。

9.如何利用Apache自带工具ab测试OSSIM 响应速度。

10.如何详细了解OSSIM系统进程的网络带宽占用情况

11.为OSSIM系统进行压力测试tcpreplay。

12.压力测试工具Tsung使用。

13. hping3的使用

5.7  小结 322

第6章  Snort规则分析 323

6.1  预处理程序 323
6.1.1  预处理器介绍 323
6.1.2  调整预处理程序 330
6.1.3 
网络攻击模式分类 330

6.2  Snort日志分析利器 332

6.3  Snort日志分析 333
6.3.1  工作模式及输出插件 333
6.3.2  数据包记录模式 335
6.3.3 
网络入侵检测模式HIDS 338
6.3.4  输出插件 338

6.4  Snort 规则编写 345
6.4.1  Snort 规则分析 346
6.4.2  规则组成及含义 347
6.4.3 
编写SNORT规则 353
6.4.4  手工修改Suricata规则 356
6.4.5  启用新建的ET规则 356
6.4.6 
应用新规则 357
6.4.7  主动探测与被动探测 358

6.5  可疑流量检测技术 358
6.5.1  通过特征检测 358
6.5.2  检测可疑的载荷 358
6.5.3 
检测具体元素 359
6.5.4  OSSIM中的Snort规则与SPADE检测 360
6.5.5 
恶意代码行为特征分析 360
6.5.6  蜜罐检测 361

6.6    Snort规则进阶 362
6.6.1  可疑流量的报警 362
6.6.2  空会话攻击漏洞报警 363
6.6.3 
用户权限获取 363
6.6.4  失败的权限提升报警规则 364
6.6.5  企图获取管理员权限 364
6.6.6 
成功获取管理员权限 364
6.6.7  拒绝服务 365

6.7  高速网络环境的应用 367
6.7.1  Suricata VS Snort 367
6.7.2 
PF_RING工作模式 368

6.8  网络异常行为分析 368
6.8.1  流程分析 368
6.8.2  举例 370
6.9  小结 371

第三篇  实战篇

第7章  OSSIM日志收集与分析 324
7.1  日志分析现状 324
7.1.1  日志记录内容 325
7.1.2 
日志中能看出什么? 326
7.1.3  日志分析的基本工具及缺陷 327
7.1.4  海量日志收集方式 327
7.2 
日志消息格式与存储 327
7.2.1  日志消息格式 327
7.2.2  OSSIM下的日志查询比较 328
7.2.3 
日志的导出 330
7.2.4  日志分类可视化 331
7.2.5  基于文本格式的日志 332
7.2.6 
基于压缩模式的日志文件 333
7.2.7  日志转储到数据库 334
7.2.8  日志处理及保存时间 335
7.2.9 
日志系统保护 335
7.2.10  日志轮询 335
7.2.11  OSSIM分布式系统中日志存储问题 336
7.3 
日志协议Syslog 336
7.3.1  常见日志收集方式 337
7.3.2  日志的标准化 338
7.3.3 
主流日志格式介绍 338
7.3.4  Syslog日志记录级别 340
7.3.5  Syslog.conf配置文件 340
7.3.6 
用Tcpdump分析Syslog数据包 342
7.3.7  Syslog的安全漏洞 342
7.3.8  配置SNMP 342
7.4 
原始日志格式对比 343
7.5  插件配置步骤 344
7.6  插件导入方法 345
7.7  插件注册操作实例 345
7.8 
Agent插件处理日志举例 349
7.8.1  收集与处理过程 349
7.8.2 
常见Windows日志转换syslog工具 352
7.8.3  Windows日志审核 353
7.8.4 
收集Windows平台日志 353
7.8.5  收集Cisco 路由器日志 354
7.9  Rsyslog 355
7.9.1 
Rsyslog配置详解 355
7.9.2  Rsyslog配置参数含义 356
7.9.3  选择合适的日志级别 356
7.10 
网络设备日志分析与举例 357
7.10.1  路由器日志分析 358
7.10.2  交换机日志分析 358
7.10.3 
防火墙日志分析 360
7.10.4  收集CheckPoint设备日志 362
7.10.5 
Aruba(无线AP)的日志 363
7.10.6  华三H3C设备日志…364
7.11  Apache日志分析 365
7.11.1 
日志作用 365
7.11.2  日志格式分析 365
7.11.3  日志统计举例 366
7.11.4 
错误日志分析 367
7.12  Nginx日志分析 369
7.12.1 基本格式 369
7.12.2 
将Nginx日志发送到Syslog 370
7.13  FTP日志分析 370
7.13.1  FTP日志分析 371
7.13.2 
分析vsftpd.log和xferlog 372
7.13.3  将Linux的 Vsftp日志发送到OSSIM 373
7.14 
iptables 日志分析 375
7.14.1  iptables日志分析 375
7.14.2 
iptables日志管理范例 377
7.14.3  输出iptables日志到OSSIM378
7.15 
Squid服务日志分析 380
7.15.1  Squid日志分类 381
7.15.2  Squid访问日志分析 381
7.15.3 
Squid时间戳 382
7.15.4  将Squid的日志收集到OSSIM 383
7.16  DHCP 服务器日志 384
7.17 
收集Windows日志 386
7.17.1  OSSIM日志处理流程 387
7.17.2 
通过Snare转发Windows日志 387
7.17.3  通过WMI收集Windows日志 391
7.17.4 
配置OSSIM 392
7.17.5  Snare与WMI的区别 394
7.18  小结 399

第8章  OSSIM流量分析与监控 395
8.1  用NetFlow分析异常流量 395
8.1.1 
流量采集对业务的影响 396
8.1.2  NetFlow 的Cache管理 397
8.1.3 
NetFlow的输出格式 397
8.1.4  NetFlow的采样机制 397
8.1.5  NetFlow采样过滤 397
8.2 
NetFlow在监测恶意代码中的优势 399
8.2.1  NetFlow的性能影响 400
8.2.2 
NetFlow在蠕虫病毒监测的应用 400
8.2.3  网络扫描和蠕虫检测的问题 401
8.2.4 
NetFlow与谷歌地图的集成显示 404
8.2.5  其他异常流量检测结果分析 405
8.3 
OSSIM下NetFlow实战 406
8.3.1  NetFlow组成 406
8.3.2  关键参数解释 408
8.3.3 
Sensor中启用NetFlow 409
8.3.4  Nfsen数据流的存储位置 410
8.3.5 
NetFlows抽样数据保存时间 412
8.3.6  NetFlow的读取方式 412
8.3.7 
nfdump的作用 414
8.3.8  将NetFlow数据集成到Web UI的仪表盘 414
8.3.9 
分布式环境下NetFlow数据流处理 415
8.4  OSSIM流量监控工具综合应用 419
8.4.1 
Ntop流量采集方式 419
8.4.2  Ntop监控 420
8.4.3  数据大小分析 425
8.4.4 
流量分析 426
8.4.5  协议分析 430
8.4.6  负载分析 431
8.4.7 
Ntop应用-网络视频的监视 432
8.4.8  Ntop 的风险旗帜标示    434
8.4.9  升级到Ntopng 437
8.5 
故障排除 439
8.5.1  多网卡问题 439
8.5.2  Ntop Web页面打开缓慢对策 439
8.5.3  “Sensor
not available”故障对策 440
8.5.4  暂停Ntop服务 440
8.5.5  管理员密码遗忘对策 441
8.6 
用Nagios监视 441
8.6.1  Nagios实现原理 442
8.6.2  利用NRPE 插件实现服务器监控 443
8.6.3 
Nagios的Web 界面 445
8.6.4  Naigos插件 451
8.6.5  Nagios扩展NRPE 456
8.6.6 
监控开销 457
8.6.7  OSSIM系统中应用Nagios监控资源 457
8.6.8  Nagios报错处理 459
8.6.9 
被动资产检测PRADS 460
8.6.10  性能监控利器Munin 461
8.7  Nagios配置文件 462
8.7.1 
主机定义 463
8.7.2  服务定义 464
8.8  第三方监控工具集成 464
8.8.1  OSSIM
2.3的集成 465
8.8.2  OSSIM 4.1的集成 466
8.8.3  OSSIM 4.6的集成 466
8.8.4 
Sensor安装Cacti 467
8.8.5  安装Zabbix 469
8.9  硬件监控 470
8.9.1 
IPMI 470
8.9.2  lm-sensors 472
8.9.3  hddtemp 473
8.10  小结 473

第9章  OSSIM应用实战 474
9.1使用OSSIM系统 474
9.1.1  初识OSSIM 
WebUI 474
9.1.2  OSSIM 4.8界面 477
9.1.3  OSSIM控制中心:AlienVault
Center 480
9.1.4  基于角色的访问权限控制 480
9.1.5 仪表盘详解 483
9.2  OSSIM的Web
UI菜单结构 485
9.3  OSSEC架构与配置 487
9.3.1  OSSEC架构 487
9.3.2  OSSEC
Agent端进程 488
9.3.3  OSSEC Server端 491
9.3.4  OSSEC配置文件和规则库 492
9.3.5 
测试规则 494
9.3.6  分布式系统中OSSEC Agent的管理 495
9.3.7  OSSEC日志存储 496
9.3.8 
OSSEC Agent安装 496
9.3.9  OSSEC触发的关联分析报警 507
9.3.10  其他HIDS应用 510
9.4 
资产Assets管理 512
9.4.1  资产发现 512
9.4.2  资产地图定位 513
9.4.3 
扫描控制参数 514
9.4.4  资产列表 514
9.4.5  资产管理工具 516
9.4.6  资产分组 518
9.4.7 
资产快速查找 519
9.4.8  设置Nmap扫描频率 520
9.4.9  OCS检测频率 520
9.5 
Openvas扫描模块分析 520
9.5.1  扫描流程控制 521
9.5.2  扫描插件分析 522
9.5.3 
脚本加载过程 526
9.5.4  NASL脚本介绍 527
9.6  OpenVAS脚本分析 527
9.6.1 
OpenVAS脚本类别 528
9.6.2  同步Openvas插件 528
9.7  漏洞扫描实践 533
9.7.1 
漏洞库 533
9.7.2  常见漏洞发布网站 535
9.7.3  手动更新CVE库 536
9.7.4 
采用OpenVAS扫描 536
9.7.5  扫描过程 541
9.7.6  变更扫描策略 543
9.7.7 
Nmap与Openvas的区别 546
9.7.8  分布式漏洞扫描 547
9.7.9  设置扫描用户凭证 548
9.7.10 
扫描频率 549
9.7.11  漏洞扫描超时问题 550
9.8  Openvas扫描故障排除 550
9.8.1 
常见Openvas故障三则 550
9.8.2  OpenVAS故障分析 554
9.9  配置OSSIM报警 558
9.9.1 
基本操作 558
9.9.2  实例 559
9.10  OSSIM在蠕虫预防中的应用 562
9.10.1 
多维度分析功能 563
9.10.2  发现异常流量 563
9.10.3  蠕虫分析 564
9.10.4 
流量分析 565
9.10.5  协议分析 567
9.11  时间线分析方法 568
9.11.1 
时间线分析法的优势 568
9.11.2  实例 568
9.12  利用OSSIM进行高级攻击检测 570
9.12.1 
误用检测与异常检测 570
9.12.2  绘制Shellcode代码执行流程图 573
9.12.3 
收集异常行为流量样本 574
9.13  合规管理及统一报表输出 575
9.13.1  合规管理目标 575
9.13.2 
主要技术 575
9.13.3  什么是合规? 576
9.13.4  理解PCI合规遵从 576
9.13.5 
报表类型 579
9.13.6  日志合规检测 581
9.13.7  报表合规性 584
9.14  小结 587

第10章  基于B/S架构的数据包捕获分析 588
10.1  数据包捕获 588
10.1.1 
数据包捕获设定 589
10.1.2  抓包区域说明 590
10.1.3  抓包时提示“This traffic capture is
empty”的解决办法 591
10.1.4  远程故障排除案例 591
10.2  数据包过滤种类 592
10.3 
过滤匹配表达式实例 594
10.3.1  过滤基础 594
10.3.2  协议过滤 594
10.3.3 
对端口的过滤 595
10.3.4  对包长度的过滤 595
10.3.5  ngrep过滤 596
10.4 
命令行工具tshark和dumpcap 597
10.4.1  tshark应用基础 597
10.4.2 
Dumpcap使用 598
10.4.3  用tshark分析pcap 599
10.5  使用tcpdump过滤器 601
10.5.1 
tcpdump过滤器基础 602
10.5.2  其他常见过滤器使用方法 603
10.5.3  通过Traffic
Capture抓包存放位置 604
10.6  针对IE浏览器漏洞的攻击分析 604
10.7  小结 619

参考文献 620