工具介绍
FastjsonScan4Burp 一款基于burp被动扫描的fastjson漏洞探测插件,可针对数据包中的存在json的参数或请求体进行payload测试。旨在帮助安全人员更加便捷的发现、探测、深入利用fastjson漏洞,目前以实现fastjson探测、版本探测、依赖探测以及出网及不出网利用和简易的bypass waf功能。
参考代码及检测思路:
https://github.com/pmiaowu/BurpFastJsonScanhttps://github.com/lemono0/FastJsonPartyhttps://github.com/safe6Sec/Fastjson
工具模块
目前插件具有的功能模块:
-
低感知探测扫描 -
出网扫描 -
不出网扫描 -
fastjson版本探测 -
fastjson依赖探测 -
bypass waf模块 -
dns平台实时切换
使用手册
安装
初次加载会在当前目录下创建resources/config.yml文件。
基本设置如下,默认情况下不开启bypass waf模块,可根据实际勾选
基于被动扫描
插件会被动式地对数据包进行扫描,只需要启动插件后正常浏览数据包即可。插件扫描队列界面会对扫描结果进行展示。
-
extensionMethod:调用的扫描模块名称 -
issue:扫描结果
右键主动扫描
部分情况下想对单一某个数据包进行漏洞验证或其他原因,可以在repeater右键选择对应插件选择扫描或探测
或者使用doPassive再次进行被动扫描
当出现dnslog error时,不需要更改config.yml,可直接在设置中切换dnslog平台,并进行下一轮扫描。其中ceye平台和eyes.sh平台需要在config.yml中配置对应token和Identify
结果输出
除了在burp中的issue中以及插件界面外,还会在插件部署目录下的resources文件夹中生成result.txt文件
bypass waf
通过gson解析json格式,对key、value添加下划线后进行unicode、hex混合编码,在原有json基础上添加注释换行符。针对无法解析的json payload则对@type进行同上编码,在原有json基础上添加注释换行符。
ps:因为一些bypass姿势可能会影响payload的正确率,因此只使用了部分bypass方式。
以https://github.com/lemono0/FastJsonParty/blob/main/1247-jndi-waf/write-up.md环境为例
工具获取
原文始发于微信公众号(夜组安全):一款burp被动扫描的fastjson漏洞探测插件,已实现漏洞探测、版本、依赖探测、出网及不出网利用和bypass waf功能
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论