EDT (Eight-Diagram-tactics)
EDT 是一个检测入侵检测系统安全能力的项目,通过整合各种入侵检测系统常见的 bug 对入侵检测设备的安全能力进行检测。
已知 bug 及检测策略
- 端口 by pass
已知某厂商入侵检测系统仅对常见端口的流量进行检测,EDT 通过随机端口的策略进行检测
- 大流量拆分
已知某厂商入侵检测系统引擎会对超过阈值的流量进行拆分,这种提高检测性能的方案会对入侵检测规则的识别造成影响,已知 weblogic 部分反序列化漏洞利用请求由于 body 超过该引擎阈值被拆分,不会被入侵检测规则命中,EDT 通过引入类似漏洞进行检测
- TCP 分片重组
已知某厂商入侵检测系统引擎对 TCP 进行分片重组后去匹配入侵检测规则。假定有以下网络环境,某 web 服务也会对 TCP 进行重组,且 web 服务等待时间长于入侵检测系统引擎,则可设想是否有一种方法可以通过控制 TCP 分片重组时间对入侵检测系统进行绕过。根据这个思路进行测试,可以对该入侵检测系统进行绕过(但是未100%成功,正在进行进一步分析,检测脚本未集成在 EDT)
流量差别
- 大流量 Pass
已知又有某厂商入侵检测系统的引擎为了提高运行效率,将流量大小超过阈值的流放过,不进行检查,所以 EDT 正在集成大流量绕过的相关测试用例。(当初是因为装有该入侵检测系统的甲方被weblogic横扫了,远程排查发现竟然是因为weblogic的包太大直接被放过了。)
但是值得欣慰的是,当我写完博客准备下班的时候,他告警了(网络战必胜)
使用教程
获取项目
git clone https://github.com/co0ontty/Eight-Diagram-tactics.git
安装依赖
curl -sSL https://get.docker.com/ | sh
pip3 install pick
pip3 install docker-compose
pip install pocsuite
运行 (入侵检测系统以 mario 为例)
python3 EDT.py
唧唧歪歪
- 本文章不针对任何厂商和产品,只是想帮助大家发现问题
- 如果你想帮助这个项目添加更多的测试用例,欢迎联系我
- 各位甲方,擦亮眼睛好好看看,这年头骗子太多了,开源项目改个前端卖你几十上百万你们都舍得买(听说甲方买 ppt 也挺贵 )
- 各位乙方,这种东西造出来不是害人害己吗,长点心吧。用开源项目就好好用,别瞎改。卖这种产品还不如卖 ppt 好
- 最后,网络战必胜