开源IDS/IPS-suricata框架之分组流水线模型

2024-01-05 06:18

本文主要是介绍开源IDS/IPS-suricata框架之分组流水线模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 分组流水线模型
稍微有些过时的“auto”运行模式示例。

2 初始化
Suricata具有多种运行模式,每种模式都会初始化与操作关联的线程,队列和管道。这些模式通常与所选择的捕获设备(比如一个抓包接口eth0)、IDS或IPS有关。捕获设备有:pcap、pcap文件、nfqueue、ipfw,或者一个专有的捕获设备。启动时只选择一种运行模式,-i选项用于pcap设备,-r选项用于pcap文件,-q用于nfqueue。
模块用于封装具有生命周期回调(比如,init、deinit)的某个主要功能。分组流水线模型中每个线程都是模块的实例,这些线程由runmodes.c文件定义的runmode初始化。runmode也初始化用于在模块和队列之间移动数据包的队列和数据包处理程序。
初始化用于在模块和队列之间移动数据包的队列和数据包处理程序。 在runmode初始化所有步骤完成后,线程被标记为可运行。
管理线程用于执行数据包管道之外的任务。 管理线程的更多细节应该放在这里。

3 流水线模型基本组成
本文介绍重点pcap设备runmode。

3.1 捕获模块(Capture Module)
pcap设备使用提供的,诸如“eth0”这样的名称初始化。设备一旦初始化,它就会开始收集数据包并传递给Suricata。然后,Suricata会对数据做一层薄封装,使它与链接类型解码器兼容。

3.2 解码模块(Decode Module)
解码是获取缓冲区数据,并将其转换为Suricata所支持的数据结构的过程。这些缓冲区被传递到指定的连接类型解码器。当前支持的连接类型如下:LINKTYPE_LINUX_SLL、LINKTYPE_ETHERNET、LINKTYPE_PPP、LINKTYPE_RAW。

3.3 流模块(Stream Module)
3.4 探测模块(Detect Module)
探测模块负责多个复杂的任务:加载所有的规则,初始化探测插件,创建数据包路由的探测组,最后使用所有应用的规则检测数据包。

文章译自:https://redmine.openinfosecfoundation.org/projects/suricata/wiki/Packet_Pipeline
翻译权译者所有,转发请注明出处,谢谢。

这篇关于开源IDS/IPS-suricata框架之分组流水线模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/571917

相关文章

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

使用C#如何创建人名或其他物体随机分组

《使用C#如何创建人名或其他物体随机分组》文章描述了一个随机分配人员到多个团队的代码示例,包括将人员列表随机化并根据组数分配到不同组,最后按组号排序显示结果... 目录C#创建人名或其他物体随机分组此示例使用以下代码将人员分配到组代码首先将lstPeople ListBox总结C#创建人名或其他物体随机分组

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

MyBatis框架实现一个简单的数据查询操作

《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的... 基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验