fastjson 1.2.24 反序列化导致任意命令执行漏洞

  • A+
所属分类:漏洞复现
摘要

Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。

简介

Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。

Fastjson 可以操作任何 Java 对象,即使是一些预先存在的没有源码的对象。

poc

编译成class的文件上传到vps。

通过python3 启动http服务,将poc移至改目录。

fastjson 1.2.24 反序列化导致任意命令执行漏洞

开启远程加载类服务,可以通过Jrmp服务或者Ldap服务加载远程类文件

JRMP服务

fastjson 1.2.24 反序列化导致任意命令执行漏洞

构造数据包加载远程类

fastjson 1.2.24 反序列化导致任意命令执行漏洞

文件被创建,命令执行成功

fastjson 1.2.24 反序列化导致任意命令执行漏洞

反弹shell

fastjson 1.2.24 反序列化导致任意命令执行漏洞

工具附件

脚本检测:

fastjson 1.2.24 反序列化导致任意命令执行漏洞

识别fastjson

判断版本

fastjson 1.2.24 反序列化导致任意命令执行漏洞

dnslog判断

未报错poc

报错,但仍有效

报错,且返回400,但仍有效

常规poc集

不同版本的常规poc

任意文件写入poc

绕waf paylaod:

fastjson 1.2.24 反序列化导致任意命令执行漏洞

fastjson 1.2.24 反序列化导致任意命令执行漏洞

XCTF-校战“疫”中的ctf题目的一个payload:\x74

修复建议

升级fastjson到最新版本

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: