Suricata引擎二次开发之命中规则定位

二开背景

suricata是一款高性能的开源网络入侵检测防御引擎,旨在检测、预防和应对网络中的恶意活动和攻击。suricata引擎使用多线程技术,能够快速、准确地分析网络流量并识别潜在的安全威胁,是众多IDS和IPS厂商的底层规则检测模块。

前段时间搭了个suricata引擎播包测试流量规则,发现原生的suricata引擎并不能获取规则匹配的位置、命中的字符串等信息。因suricata引擎并不会输出命中的信息,遂修改源码,改了命中详情(下文简称高亮)出来,今天想跟大家分享一下修改和使用的过程。

1、suricat编译安装

参考官方文档https://docs.suricata.io/en/suricata-6.0.0/install.html#install-advanced

先装库,装rust支持,装make

然后下载源码make

编译后的二进制程序在/src/.libs/suricata查看依赖库,然后补齐到默认so库目录中即可运行。

图片

2、vscode+gdb调试suricata环境搭建

然后就是装插件,除了必备的c语言插件全家桶之外还需要装GDB Debug这个插件。

接着任意新建一个运行配置。

图片

修改lauch.json为:

{
  
      // Use IntelliSense to learn about possible attributes.    // Hover to view descriptions of existing attributes.    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387    "version": "0.2.0",    "configurations": [                {
  
              "name": "(gdb) Launch",            "type": "cppdbg",            "request": "launch",            "program": "${fileDirname}/../src/.libs/suricata",
            //以下为监听网卡模式。            // "args": [            //     "-i", "ens33", "-c", "/home/lalala/Desktop/suricata/6/suricata.yaml", "-v", "-l","/home/lalala/Desktop/suricata/6/log6/","--runmode", "single"            // ],                        //以下为读包模式。       &n
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值