Nodejs HTTP Request Smuggling Vulnerability
漏洞信息
漏洞名称: Node.js HTTP Request Smuggling Vulnerability
漏洞编号:
- CVE: CVE-2025-23167
漏洞类型: 服务器端请求伪造
漏洞等级: 高危
漏洞描述: ### 受影响产品
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时,广泛用于构建高性能的网络应用程序。它支持非阻塞I/O操作,使得开发轻量级、高效的网络应用成为可能。Node.js 通常部署在服务器端,用于处理Web请求、API服务等,是企业级服务和Web应用开发中不可或缺的组件。
漏洞说明
此漏洞(CVE-2025-23167)是一个HTTP请求走私漏洞,影响Node.js 20.x版本,具体为20.19.2之前的版本。漏洞的根源在于Node.js在处理HTTP请求头时存在缺陷,未能正确终止HTTP头,导致攻击者可以利用这一缺陷绕过基于代理的访问控制。这种类型的漏洞属于服务器端请求伪造(SSRF)的一种,攻击者可以通过构造恶意的HTTP请求,干扰正常的请求处理流程,实现未授权的操作。
影响分析
该漏洞的高危性在于它允许攻击者绕过安全代理,执行未授权的操作,可能导致敏感信息泄露、服务拒绝(DoS)或其他恶意操作。由于Node.js广泛应用于Web服务中,这一漏洞的影响范围较广。攻击者无需认证即可利用此漏洞,且可以通过自动化工具进行大规模扫描和攻击,增加了漏洞的潜在危害。因此,建议所有使用受影响版本Node.js的用户尽快升级到20.19.2或更高版本,以避免潜在的安全风险。
产品厂商: Node.js
产品名称: Node.js
影响版本: 20.x versions before 20.19.2
来源: https://github.com/abhisek3122/CVE-2025-23167
类型: CVE-2025:github search
仓库文件
- README.md
- exploit.py
- lab.js
- sample.png
来源概述
CVE-2025-23167 – Node.js HTTP Request Smuggling Exploit
Working exploit for CVE-2025-23167, a request smuggling vulnerability affecting Node.js 20.x versions prior to v20.19.2. This bug allows improper HTTP header termination, enabling attackers to bypass proxy-based access controls.
Files
- exploit.py – Python3-based Exploit for the vulnerability.
- lab.js – Simple Node.js server to simulate a vulnerable environment.
Usage
Exploit
To run the exploit script:
- Run,
python3 exploit.py <target-domain-or-ip> <port>
Sample Input & Output
Lab Setup
To set up the test environment:
- Make sure you’re using Node.js v20.19.1 or below.
- Install express (
npm install express
). - Then run,
node lab.js
to run the server. - The server will be available at http://localhost:8989 (or your chosen port).