Suricata构建网络入侵检测系统(一)

发布时间 2023-06-07 15:44:48作者: CyberSecurityBook

一、Suricata 简介

      Suricata是一个免费、开源、成熟、快速、健壮的网络威胁检测引擎。Suricata引擎能够进行实时入侵检测(IDS)、内联入侵预防(IPS)、网络安全监控(NSM)和离线pcap处理。Suricata使用强大而广泛的规则和签名语言来检查网络流量,并提供强大的Lua脚本支持来检测复杂的威胁。使用标准的输入和输出格式(如YAML和JSON),使用现有的SIEMs、Splunk、Logstash/Elasticsearch、Kibana和其他数据库等工具进行集成将变得非常简单。Suricata项目和代码由开放信息安全基金会(OISF)拥有和支持,OISF是一个非盈利基金会,致力于确保Suricata作为一个开源项目的开发和持续成功。 

二、主要特点

1.IDS/IPS – Suricata 是一个基于规则的入侵检测和防御引擎,它利用外部开发的规则集(例如Talos规则集和新兴威胁 Suricata 规则集)来监控网络流量中是否存在任何恶意活动、策略违规和威胁。
2.自动协议检测——Suricata 引擎自动检测 HTTP 和 HTTPS 等协议。任何端口上的 FTP 和 SMB,并应用适当的检测和日志记录逻辑。这在检测恶意软件和 CnC 通道时派上用场。
3.Lua 脚本——Suricata 可以调用提供高级恶意软件检测的Lua脚本,以检测和解码原本难以检测的恶意软件流量。
4.多线程——Suricata在确定网络流量时提供速度和重要性。该引擎旨在应用现代多核硬件芯片组提供的增强处理能力。

三、工作模式

1.single模式

single只支持一个网卡设备,只有一个work线程

2.work模式

Work工作模式,每个网卡默认对应cpu数个工作线程(或者按照配置文件配置的线程数),每个工作线程取对应的网卡队列中数据包

 3.autofp工作模式