当前位置: 首页 > news >正文

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

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

方法一可以根据经验,对于常见的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.lryc.cn/news/59399.html

相关文章:

  • 第02章_变量与运算符
  • 仅三行就能学会数据分析——Sweetviz详解
  • springboot——集成elasticsearch进行搜索并高亮关键词
  • MATLAB绘制局部放大图
  • 第十三天缓存一致性篇
  • VSCode使用Remote SSH远程连接Linux服务器【远程开发】
  • 人工智能专题-知识表示
  • 各种过滤器使用场景
  • 第04章_IDEA的安装与使用(下)
  • 2023年全国最新道路运输从业人员精选真题及答案51
  • Baumer工业相机堡盟工业相机如何通过BGAPISDK显示Bayer彩色格式的图像(C#)
  • Unity云渲染,加移动
  • ASP一个简单的网上教务系统模型的设计与实现
  • 黑马点评实战篇问题总结
  • C++ 并发编程
  • 5V的LDO电源的WCCA分析-可靠性分析计算过程
  • TensorFlow 深度学习第二版:6~10
  • C++标准库 -- 顺序容器 (Primer C++ 第五版 · 阅读笔记)
  • JavaEE初阶学习:文件操作
  • 【外设零基础通用教程】GPIO 下
  • 在window上安装python
  • [hive SQL] 预约业务线
  • LNMP架构和论坛搭建以及一键部署
  • RK3568平台开发系列讲解(设备驱动篇)V4L2程序实现流程
  • 人工智能中的顶级会议
  • 【Python OpenCV】第六天:图像的基础操作
  • 2022年陕西省职业院校技能大赛“网络搭建与应用”赛项竞赛试题
  • 面经-01
  • c/c++:visual studio的代码快捷键,VS设置自定义默认代码,使用快捷键
  • mysql基本语法