IDS事件分析工具
几个月前写的,由于内存、系统限制,并未采用本文中介绍的这几款IDS分析工具,而是使用原生ELK+自己搭建Suricata前端显示的方式。
名称 | 要求 | 工作方式/构成图 | 备注 |
---|---|---|---|
PFelk | (1)Ubuntu Server v18.04+ or Debian Server 9+ (stretch and buster are tested)(现在服务器用的是16.04的稳定版本) (3) Java v11 LTS and Elastic Stack v7.9.2 (4)Minimum of 4GB of RAM but recommend 32GB(RAM空间不够) | [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-okCsBIMQ-1611651530758)(https://raw.githubusercontent.com/3ilson/pfelk/master/Images/pfELKOverview.PNG)] | 1.使用Logstash对数据进行清洗 2. 使用Elasticsearch实现近乎实时的数据搜素 3. 使用kibana进行数据可视化 4. 之前的mysql里存储的数据可能不能用了 |
Prelude OSS | Ubuntu安装GnuTLS、Python、PCRE | ![]() | 1. 可以直接在suricata的yaml文件中配置,之前的mysql里存储的数据可能不需要了。2. 据说community版本比commercial版本性能低 |
Dsiem | 需要安装ELK,也可以通过Docker安装 | ![]() | suricata配置教程,之前的mysql里存储的数据可能不能用了 |
Snort2 grafana dashboard | ELK stack version 6.5 | ![]() | Barnyard2通过UDP协议发送文件到监听5142端口的Logstash,可以使用之前存储的unified2的数据 |
OSSIM | 需要通过ISO文件安装一个系统,一般是安装在自己电脑的虚拟机上;然后被检测的网卡对应的主机上安装agent(比如与OSSEC连接或者与suricata连接) | ||
SecurityOnion | 是一个Linux发行版,也可以在自己的系统里通过添加组件的方式进行安装,最低配置:Ubuntu 18.04 4GB RAM 2 CPU cores 200GB storage | ![]() | 本身是HIDS。Security Onion是一款专为入侵检测和NSM(网络安全监控)设计的Linux发行版。其安装过程很简单,在短时间内就可以部署一套完整的NSM收集、检测和分析的套件。 |
Wazuh | agentUbuntu 12以上。All-in-one安装需要4GB内存,双核处理器 | ![]() | 本身是HIDS。提供了处理Suricata日志文件的功能。中文安装教程 |
OwlH | wazuh出的工具,轻量化一些,分析Suricata的日志文件。但是用的人比较少 |
目前的想法
一开始确定了Prelude OSS,因为Suricata提供了相关配置,比较方便,Prelude安装在服务器上也可以接近实时的方式分析警告,但是看了些评论说Prelude的community版本性能比较差,用的人也因此不多。
之后,看到了OSSIM。OSSIM在Debian基础上增加组件形成的Linux发行版系统,可以通过虚拟机安装在本机上,然后在Server上安装agent,通过加密传输的方式,将Suricata的JSON文件传输给本机OSSIM系统中,在本机分析。但是看了它的requirements,系统需要的配置比较高,而且JSON文件现在就有7G的大小了,考虑到是通过虚拟机的方式运行的,不知道这套系统真正运行起来性能如何。。。
然后,看了Wazuh。现在感觉是比较好的一个。与OSSIM类似,都是通过agent传输到本机,用本机的算力处理JSON日志文件。不同的是本机安装的是软件,而不是运行在虚拟机的系统,所以应该性能好一些。但是对于日志文件的传输这块还得再看下。同时,一个关键的问题是Wazuh agent提供了HIDS的功能,是否也会消耗很多服务器资源,能不能把这些功能关闭,只保留它作为agent传输suricata log文件的功能,这个也需要考虑。
最后是OwlH,是Wazuh出的,看了官网的截图还有它的安装过程,就是专门处理Suricata/Snort生成的日志文件的。但是太小众了,网络上几乎没有相关的介绍。
相关内容
ELK Stack
ELK Stack指Elastic Stack。“ELK”是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是一个搜索和分析引擎。Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等“存储库”中。Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。
OSSEC
OSSEC是一款开源的多平台的IDS,可以运行于Windows, Linux, OpenBSD/FreeBSD, 以及 MacOS等操作系统中。包括了日志分析,全面检测,root-kit检测。作为一款HIDS,OSSEC应该被安装在一台实施监控的系统中。另外有时候不需要安装完全版本的OSSEC,如果有多台电脑都安装了OSSEC,那么就可以采用客户端/服务器模式来运行。客户机通过客户端程序将数据发回到服务器端进行分析。在一台电脑上对多个系统进行监控对于企业或者家庭用户来说都是相当经济实用的。
HIDS VS NIDS
HIDS(Host-based intrusion detection system)
HIDS将探头(代理)安装在受保护系统中,它要求与操作系统内核和服务紧密捆绑在一起,监控各种系统事件,如对内核或API的调用,以此来防御攻击并对这些事件进行日志;还可以监测特定的系统文件和可执行文件调用,以及Windows NT下的安全记录和Unix环境下的系统记录。对于特别设定的关键文件和文件夹也可以进行适时轮询的监控。HIDS能对检测的入侵行为、事件给予积极的反应,比如断开连接、封掉用户账号、杀死进程、提交警报等等。如果某用户在系统中植入了一个未知的木马病毒,可能所有的杀病毒软件、IDS等等的病毒库、攻击库中都没有记载,但只要这个木马程序开始工作,如提升用户权限、非法修改系统文件、调用被监控文件和文件夹等,就会立即被HIDS的发现,并采取杀死进程、封掉账号,甚至断开网络连接。现在的某些HIDS甚至吸取了部分网管、访问控制等方面的技术,能够很好地与系统,甚至系统上的应用紧密结合。
NIDS(Network-based intrusion detection system )
NIDS则是以网络包作为分析数据源。它通常利用一个工作在混杂模式下的网卡来实时监视并分析通过网络的数据流,其分析模块通常使用模式匹配、统计分析等技术来识别攻击行为。一旦检测到了攻击行为,IDS的响应模块就作出适当的响应,比如报警、切断相关用户的网络连接等。与SCANER收集网络中的漏洞不同,NIDS收集的是网络中的动态流量信息。因此,攻击特征库数目多少以及数据处理能力,就决定了NIDS识别入侵行为的能力。大部分NIDS的处理能力还是100兆级的,部分NIDS已经达到1000兆级。NIDS设在防火墙后一个流动岗哨,能够适时发觉在网络中的攻击行为,并采取相应的响应措施。