本文内容
本文主要介绍了在java反序列化漏洞检测过程中常用的Burp插件Java-Deserialization-Scanner的使用。
插件介绍与安装
插件介绍
Java反序列化扫描器是一个Burp套件插件,旨在检测和利用Java反序列化漏洞。它是由Mediaservice.net的安全顾问Federico Dotta撰写的。
这个插件由三个不同的组件组成:
1.与Burp套件集成主动式和被动式扫描器
2.Manual tester,用于检测自定义插入点上的Java反序列化漏洞
3.允许使用frohoff ysoserial积极利用Java反序列化漏洞的开发者(https://github.com/frohoff/ysoserial))
插件安装步骤
- 下载 Burp Suite: http://portswigger.net/burp/download.html
- 使用下面的步骤从 BApp Store 下载安装Java Deserialization Scanneror:
- 下载最新发布的Java Deserialization Scanner(本文选择后面这种方式)
- 打开burp,通过Burp -> Extender -> Extensions -> Add -> Choose JavaDeserializationScannerXX.jar file
检测流程
插件作者很贴心,不仅写了个这么棒的插件,还附带了很多示例。以 sampleCommonsCollections3 为例介绍该插件的使用。
首先在 tomcat 中把 这个 war 包部署好(这个相信大家没有问题)。该插件检测反序列化漏洞就是基于一些已知库中的gadget(依赖于 ysoserial)进行检测。具体步骤如下:
1.web端启动访问
2.BURP启动监听抓包
点击Serialized Java Object in body,并在burp端抓包。
抓包如下:
右键选择Send request to DS-Manual testing
选择POST数据包,按照图示顺序设置插入点,选择DNS方式查找漏洞,点击attack发起攻击
过一段时间后,在右侧窗口就会看到检测结果。
可以看到,漏洞组件为Apache Commons Collections 3,在POST数据右键选择Send to Exploitation tab
切换到Exploiting窗口,在下方红色位置输入组件名及要执行的命令,点击attack观察结果。
总结
本文主要介绍了burp下java反序列化漏洞插件Java-Deserialization-Scanner的安装与配置,并通过部署实际的案例对具体使用方法进行了介绍,以便后续需要。
参考文献
- 1020.Burp Suite扩展之Java-Deserialization-Scanner
- Java Deserialization Scanner