0x01 工具介绍
fastjson漏洞批量检测工具,根据现有payload,检测目标是否存在fastjson或jackson漏洞(工具仅用于检测漏洞),若存在漏洞,可根据对应payload进行后渗透利用,若出现新的漏洞时,可将最新的payload新增至txt中(需修改格式),工具完全替代手工检测,作为辅助工具使用。
下载地址在末尾
0x02 功能简介
工具特点
-
DNSlog检测
-
自定义地址
若出现dnslog回弹,可根据前面的编号去寻找对应的payload
自1.4.0版本起,编号由7-9位的随机数字+字母组成
- 随机地址
需挂全局代理才能访问并申请资源,使用此功能将对发包速度产生较大影响。
若存在dnslog回弹结果,将会生成/result/xxx_dnslog.html文件,没触发dnslog则不会生成该文件。
- LDAP检测
若为内网环境/目标无法DNS解析时,可使用工具在本地/云服务器起一个LDAP服务
https://github.com/WhiteHSBG/JNDIExploit
将域名换成IP:端口即可(上图中使用的是8090作为LDAP服务端口)
此时LDAP服务器可收到路径信息,可根据路径信息来定位触发漏洞的payload
- 请求包检测
若使用-req参数进行检测时,需要设置需要检测的变量值位置
将请求中需要检测的位置替换为$payload$,其余位置不变,保存为req.txt(文件名任意)
格式:
POST /xxx HTTP/1.1
Host: xxx
$payload$
然后通过-req指定该文件,根据请求包进行漏洞检测
JsonExp -req req.txt -l xxx.xxx.xxx
- 代理设置
使用--proxy设置代理,可用于调试信息、绕waf等操作
--proxy http://127.0.0.1:8080
burpsuite中设置代理
将工具的流量代理到burpsuite中(此工具不能适应所有的情况,可通过该方式对payload进行适当调整)
0x03更新介绍
更新内容如下:
新增--dnslog参数,可申请dnslog资源进行检测(需挂全局代理,且对发包速度有影响)
为了防止编号冲突,将编号更换为了7-9位随机参数数字+字母
若使用--dnslog参数时,触发了dnslog,将输出/result/xxx_dnslog.html文件用于展示结果
0x04 使用介绍
命令使用
参数 | 别名 | 作用 | 例子 |
---|---|---|---|
-u | --url | 指定目标url | -u http://www.test.com |
-uf | --urlfile | 指定目标url文档,每行一个url | -uf url.txt |
-req | --request | 指定请求包 | -req request.txt |
-to | --timeout | 指定请求超时时长,默认为5秒 | -to 8 |
-f | --file | 指定payload文本路径,默认为template/fastjson.txt | -f payload.txt |
-t | --type | 指定HTTP请求类型,默认为post | -t get |
-l | --ldap | 指定ldap地址 | -l xxx.xxx.xxx:8080 |
-r | --rmi | 指定rmi地址 | -r xxx.xxx.xxx:8080 |
-c | --cookie | 指定cookie值 | --cookie "name=xxx;sessionid=xxxxx" |
-pro | --protocol | 指定请求包所使用的协议,需结合-req参数使用,默认为http协议 | -req request.txt -pro https |
-proxy | --proxy | 设置代理 | --proxy http://127.0.0.1:8080 |
-dnslog | --dnslog | 是否申请dnslog进行检测,默认为false(此功能需挂全局代理) | --dnslog true |
windows系统
在JsonExp.exe目录打开cmd界面
检测单个站点:
JsonExp -u [目标] -l [LDAP服务地址]
根据请求包检测单个站点:
JsonExp -req [目标.txt] -l [LDAP服务地址]
根据文本检测多个站点:
JsonExp -uf [目标.txt] -l [LDAP服务地址]
Linux系统
添加权限:
chmod +x JsonExp_linux
检测单个站点:
./JsonExp_linux -u [目标] -l [LDAP服务地址]
根据请求包检测单个站点:
./JsonExp_linux -req [目标.txt] -l [LDAP服务地址]
根据文本检测多个站点:
./JsonExp_linux -uf [目标.txt] -l [LDAP服务地址]
Mac系统
检测单个站点:
./JsonExp_mac -u [目标] -l [LDAP服务地址]
根据请求包检测单个站点:
./JsonExp_mac -req [目标.txt] -l [LDAP服务地址]
根据文本检测多个站点:
./JsonExp_mac -uf [目标.txt] -l [LDAP服务地址]
0x05 下载
https://github.com/smallfox233/JsonExp/archive/refs/tags/v1.4.0.zip
原文始发于微信公众号(渗透安全HackTwo):一款FastJson反序列化漏洞利用和扫描探测工具|漏洞探测
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论