基于多种流量检测引擎识别pcap数据包中的威胁

news2024/11/17 0:02:12

在很多的场景下,会需要根据数据包判断数据包中存在的威胁。针对已有的数据包,如何判断数据包是何种攻击呢?

方法一可以根据经验,对于常见的WEB类型的攻击,比如SQL注入,命令执行等攻击,是比较容易判断的。但是威胁的变化千变万化,比如挖矿的流量特征,特定工具的特定特征,往往没有深入的研究对比,很难第一时间做出判断。

方法二将数据包导入特定的网络安全厂商设备,但是这些设备往往是商用设备,一方面需要收费,另一方面商业的设别往往会兼顾误报和告警的平衡,所应对的场景考虑比较的复杂,也难免出现漏保。

这个时候安全分析师如果构建本地的流量分析工具,在次基础上不断的积累,则能够按照自己的需求形成得心应手的兵器。目前安全行业针对流量威胁发现主要包含三个引擎,分别为suricata,snort以及zeek。其中suricata和snort偏向于已知威胁的发现,包括已知漏洞,已知的WEB攻击手段,黑客工具,恶意软件等等。ZEEK通过关键行为的记录,偏向于通过威胁狩猎发现未知的威胁。

针对这是三个流量检测引擎,可以分别到对应的github上下载,在Linux系统进行安装,将pcap分别送到三个引擎回放验证即可。但是同一个数据包需要在三个引擎中分别操作,需要三次还是比较的繁琐。此时可以借助dalton开源项目,dalton 通过一个控制器对于suricata,snort,zeek三个流量探针引擎进行集中管理,将结果统一的呈现。

dalton开源的地址见这里,由于dalton以docker的形式提供服务,使用起来还是非常的方便,因此需要把docker的版本更新到最新。根据dalton中的说明,如下:

docker service docker start
./start-dalton.sh 

这个时候安装脚本会去下载多个docker容器,其中包括dalton服务相关的容器,例如controller,nginx,redis,suricata,snort,zeek等多个容器,dalton 安装成功之后,如下图1:
在这里插入图片描述
图1

其中snort,suricata,zeek为流量侧的探针容器,dalton_controller为流量探针调度控制容器,dalton_web为WEB UI容器,dalton_redis消息队列存储容器。可以看到UI开放的端口为80端口,因此直接访问对应的IP地址,如下图2:
在这里插入图片描述
图2
选择指定的引擎引擎版本(一般选择教新的版本)和规则集回放pcap,以suricata为例如下图3:
在这里插入图片描述
图3
如上图3,选择的为6.0版本的suricata,规则集合为suricata自带的规则集合,输出的日志为suricata自带的eve格式的日志。这其中比较的关键的是规则集的选择,由于suricata自带的规则比较少,因此建议丰富suricata的规则集,这也是安全分析师需要积累的方面。收集符合自身要求的规则集合,对于安全分析师的工作非常的重要,如下连接是github上常见的规则集合

https://github.com/klingerko/nids-rule-library
https://github.com/al0ne/suricata-rules
https://github.com/travisbgreen/hunting-rules
https://github.com/xNymia/Suricata-Signatures

其中nids-rule-library涉及的规则集合比较的丰富,如下图4:
在这里插入图片描述
图4
可以看到一些安全大厂像proofpoint提供了et open的规则集,以及et pro付费的规则集(每年的费用在5000元人民币左右),改规则主要倾向于是和攻击手段相关的规则。Talos实验室也给snort维护了一份漏洞的规则集(每年的费用在300元人民币左右,相对非常的便宜),改规则集主要倾向于知名漏洞相关的规则。除此之外还有abuse,osint等诸多的开源情报可以,包括数字证书的情报,恶意IP的情报,恶意域名的硬包。建议将讲这些规则集进行收录,作为个人的分析分析库使用。将上述定期更新的规则集,放到dalton目录下的rulesets目录下,则可以在页面上进行选择。如上图的3 rulesets中。

dalton提供了多种形式的告警,运行的结果如下图5所示:

在这里插入图片描述
图5
通常来说只要看alert中的告警即可,如果想要看更多的内容,进行诸如威胁狩猎相关的工作,则可以看一下eve json中的内容,如下图6:
在这里插入图片描述
图6
可以看到eve json中的内容除了alert告警之外,还提供了像anomaly异常事件,多种协议例如,smb,decrpc等协议的meta源信息记录的能力,可以从异常行为发现的角度分析更多的可以内容。

上述只是针对dalton中的suricata部分做了介绍,针对snort和zeek同理。值得注意的是,无论哪一种流量检测引擎,规则集都是极为重要的。由于个人安全分析师的场景无需考虑性能的影响,所面对的流量场景也非常的简单,因此建议可以针对snort,suricata,zeek可以收集github上所有的规则集合,并定期的更新,让本地工具检测能力达到极致。在后续的我的专栏中安全分析师中,这里,会做如下内容的介绍:

  • 如何基于github打造个人的本地检测规则集合。
  • 基于dalton的分析日志,进行攻击技术点的关联,打造安全事件检测工具,完成规则告警到安全事件的升级。

本文为CSDN村中少年原创文章,未经允许不得转载,博主链接这里。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/439003.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Radzen Blazor Studio 2.84 Crack

Radzen Blazor Studio 是一种桌面工具,它使 开发人员 能够创建漂亮的商业 Blazor 应用程序。快速地。 开放技术栈 没有供应商锁定。生成的源代码是人类可读的,您可以使用免费工具构建它。 Radzen 由流行的开源技术——ASP.NET Core、Blazor、Bootstrap …

Handler消息机制

App中一般多会有多个线程,多线程之间难免需要进行通信。开发中线程通信用的最多的就是Handler,另外还有,例如子线程进行数据处理,在主线程中进行UI更新。 当然了除了Handler这种通信方式外,线程间的通信还有其他几种方…

在线免费把Markdown格式文件转换为PDF格式

用CSDN的MarkDown编辑器在线转换 CSDN的MarkDown编辑器说实话还是挺好用的。 导出PDF操作步骤,图文配合看: 在MD编辑模式下写好MarkDown文章或者直接把要转换的MarkDown贴进来; 使用预览模式,然后在预览文件上右键选择打印&…

pycuda 安装出错解决

执行:pip install pycuda 出现:Building wheel for pycuda (PEP 517) … error 使用:pip install pycuda --no-binary :all: 不解决问题。 从源码编译 1、下载 pycuda-2021.1.tar.gz 2、tar xfz pycuda-2021.1.tar.gz 3、cd pycuda-20…

LNMP的部署

一、编译安装Nginx 服务 1、编译安装Nginx 服务的操作步骤 systemctl stop firewalld systemctl disable firewalld setenforce 01.1 安装依赖包 yum -y install pcre-devel zlib-devel gcc gcc-c make1.2 创建运行用户 useradd -M -s /sbin/nologin nginx1.3 编译安装 cd…

Shell编程(三)grep sed awk文本处理三剑客

上一章: Shell编程(二)_做测试的喵酱的博客-CSDN博客 一、ps命令 指令: ps作用: 主要是查看服务器的进程信息选项含义: -e:等价于 ‘-A’ ,表示列出全部的进程 -f:显示全部的列&am…

【珍藏版】SWAT模型十七项热点融合技术呈现,提升SWAT模型应用创新点

本次共十七个实践案例 1)遥感产品和SWAT模型快速建模 2)基于水文响应单元(HRU)的水资源时空分布特征 3)基于自定义流域与河道的SWAT模型建模与分析 4)子流域划分原理及其对模型不确定性的影响 5)坡度划分原理及其对模型不确定性的影响 6)DEM数据空…

站在程序猿的角度理解:UDP 协议

哈喽,大家好~我是你们的老朋友: 保护小周ღ,本期为大家带来的是 网络基础原理中的 UDP 协议,从什么协议?,认识 UDP 协议,UDP 的报文格式,UDP 传输大文件时的策略,以及 UD…

蓝库云|制造业该如何利用WMS仓库管理系统赋能企业发展

在数字化时代,制造业需要更加高效、智能、灵活地管理仓库,以满足市场的需求。WMS仓库管理系统作为一种先进的仓库管理工具,蓝库云认为WMS系统可以帮助制造企业实现数字化转型升级,提高仓库管理效率,降低成本&#xff0…

HuggingFace过去七天最流行的AI模型一览——预训练大模型绝对王者

HuggingFace是目前最火热的AI社区,很多人称之为AI模型的GitHub。包括Google、微软等很多知名企业都在上面发布模型。 HuggingFace简介:https://www.datalearner.com/blog/1051636550099750 而HuggingFace上提供的流行的模型也是大家应当关注的内容。本…

ChatGPT4写贪吃蛇游戏(Notion)[pygame的学习]

这里我使用的是Notion写出来的贪吃蛇,开始使用百度的文心一言来试下效果,生成了好几次的代码都是有bug,所以生成代码这块还得是ChatGPT。这篇主要就是了解下pygame库的一些方法,当然在没有安装这个库的,需要先安装&…

【浅谈 new 与 delete】

目录: 前言new 与 delete内置类型自定义类型operator new 与 operator deletenew 和 delete 实现原理定位new 总结 前言 打怪升级:第39天 在C语言中,我们动态申请内存的方法是使用malloc函数,它的同胞兄弟还有calloc 和realloc&a…

php使用tcpdf,通过html生成的pdf文件,合同章(图片)错位?需要怎么解决

php使用tcpdf,通过html生成的pdf文件,合同章有错位?需要怎么解决? 1、html下的排版正确,如图: 2、html代码,如图 3、生成pdf后的文件,如图 $pdf->Image(),计算一下x、…

【QT】详细介绍Qt的窗口属性:Qt::WA_DeleteOnClose属性

目录 1. close()2. WA_DeleteOnClose属性3. 测试3.1 设置了 Qt::WA_DeleteOnClose 属性3.2 未设置 Qt::WA_DeleteOnClose 属性 4. 测试代码 1. close() 当我们创建一个窗口(MainWindow, Widget, Dialog, QMessageBox, 等等)后,我们一般会调用…

matlab绘制折线图基本操作

本篇博客主要总结matlab绘制折线图的基本操作,使用的函数是plot函数,关于plot的函数语法规则,这里不再赘述,可以参考matlab官方文档,https://ww2.mathworks.cn/help/matlab/ref/plot.html#d124e1037051,不看…

GIS开源库GEOS库学习教程(三):空间关系/DE-9IM/谓词

1、DE-9IM 要判断两个多边形的关系,实际上属于几何图形空间关系判断。几何图形并不只有多边形一种,它包括点、线、面构成的任何图形,两两之间相互关系也有很多种,因此空间关系非常复杂。根据前人的研究,总结出了DE-9IM…

图论经典A-Star(A*) Algorithm最短路径,networkx,Python(1)

图论经典A-Star(A*) Algorithm最短路径,networkx,Python(1) A-Star Algorithm,即为A*(A星)算法,图的最短路径。 (1)A-Star(A*)算法需要事先知道起点和终点才…

PhpStorm 2022.3.2消除顶部Windows窗口白色区域

问题图片: 解决方法:勾选Merge main menu with window title 效果图:

第三章:JavaScript 脚本语言(一)

一、简介 JavaScript是web页面中的一种脚本语言,由客户端浏览器解释执行。不需要编译,主要作用是将静态页面转换成用户交互的动态页面。 JavaScript主要有三大部分:ECMAScript (核心),DOM(文档对象模型)&…

溯源取证-Linux内存取证 中难度篇

原谅我这么晚才出来文章,因为最近忙着录课,至于为啥没有基础篇,是因为靶场里没看见,哈哈 这个也是研究了好几个晚上才出来的东西,此处场景为linux环境下的rootkit病毒,我们通过这篇文章可以通过内存取证发…