ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

suricata 源码分析_01

2022-04-10 21:01:07  阅读:203  来源: 互联网

标签:01 -- Suricata IDS 支持 源码 pcap suricata


https://blog.51cto.com/leejia/2457743

Suricata简介

Suricata是一个高性能的IDS、IPS和网络安全监控的引擎。它是开源的,由一个社区经营的非营利基金会开放信息安全基金会(OISF)开发。

安装环境建议使用centos7/redhat7版本以上的操作系统,Suricata版本建议使用4.x以上,这样方便多线程,Hypersca,pfring等功能的使用。6版本的操作系统编译环境需要花时间取升级修复,不建议使用。

IDS/IPS简介

检测系统(Intrusion detection system,简称“IDS” 是一种对网络传输进行即时监视,根据预设的策略,在发现可疑传输时发出警报。
预防系统(Intrusion prevention system,简称“IPS”) 是一部能够监视网络或网络设备的网络资料传输行为的计算机网络安全设备,一般位于防火墙和网络的设备之间,能够即时的中断、调整或隔离一些不正常或是具有伤害性的网络资料传输行为。相对于IDS主能提供了中断防御功能。

Suricata主要特点

支持从nfqueue中读取流量
支持分析离线pcap文件和pcap文件方式存储流量数据
支持ipv6
支持pcap,af_packet,pfring,硬件卡抓包
多线程
支持内嵌lua脚本,以实现自定义检测和输出脚本
支持ip信用等级
支持文件还原
兼容snort规则
支持常见数据包解码:IPv4, IPv6, TCP, UDP, SCTP, ICMPv4, ICMPv6, GRE, Ethernet, PPP, PPPoE, Raw, SLL, VLAN, QINQ, MPLS, ERSPAN, VXLAN
支持常见应用层协议解码:HTTP, SSL, TLS, SMB, DCERPC, SMTP, FTP, SSH, DNS, Modbus, ENIP/CIP, DNP3, NFS, NTP, DHCP, TFTP, KRB5, IKEv2, SIP, SNMP, RDP

suricata程序入口

graph A[suricata入口函数] -->B(SuricataMain) B-->C[SCInstanceInit实例化一个suricata配置] C-->D[ParseCommandLine 命令行解析] D-->E[FinalizedRunMode 确定Suricata最后的运行模式] E-->F[StartInternalRunMode 内部模式运行] F-->G[GlobalInitPreConfig初始化全局预配置] G-->H(LoadYamlCongfig从yaml配置文件加载suriacata配置) H-->L(ConfDump转储配置到 stdout) L-->I(SetupUserMode建立用户态模式) I-->J(InitRunAs初始化用户和组 Suricata 将作为运行方式) J-->K(UtilCpuPrintSummary打印检测到的 CPU 的摘要) K-->M(ParseInterfacesList解析网卡接口列表) M-->N(PostConfLoadedSetup旨在包含加载配置后需要运行的代码) N-->S(SCDropMainThreadCaps) S-->1(CoredumpEnable) 1-->2(PreRunPostPrivsDropInit我们需要在数据包开始流动之前运行的任务) 2-->3(PostConfLoadedDetectSetup) 3-->4(SCSetStartTime加载时间) 4-->5(RunModeDispatch运行模式分发) 5-->6(SC_ATOMIC_SET更新引擎阶段/状态标志) 6-->7(PacketPoolPostRunmodes数据池) 7-->8(TmThreadContinueThreads 取消暂停所有暂停的线程) 8-->9(PostRunStartedDetectSetup设置max_pending_return_packets值) 9-->10(SuricataMainLoop suricata主循环) 10-->11(UnixSocketKillSocketThread unix杀死socket线程) 11-->12(PostRunDeinit清理/关闭主模式和unix套接字模式的代码将在 unix 插槽模式下每个 pcap运行一次) 12-->13(TmThreadKillThreads杀死剩余的线程)

标签:01,--,Suricata,IDS,支持,源码,pcap,suricata
来源: https://www.cnblogs.com/zhaodejin/p/16127461.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有