Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2022-35949— `undici.request` vulnerable to SSRF using absolute URL on `pathname`

Quick assessment

Affected
nodejs undici
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

undici是一个HTTP/1.1客户端。 undici存在代码问题漏洞。攻击者利用该漏洞执行服务器端请求伪造攻击。

CVSS 5.3 · Medium EPSS 1.74% · P76
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2022-35949

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
`undici.request` vulnerable to SSRF using absolute URL on `pathname`
Source: CVE Program / CVE List V5
Vulnerability Description
undici is an HTTP/1.1 client, written from scratch for Node.js.`undici` is vulnerable to SSRF (Server-side Request Forgery) when an application takes in **user input** into the `path/pathname` option of `undici.request`. If a user specifies a URL such as `http://127.0.0.1` or `//127.0.0.1` ```js const undici = require("undici") undici.request({origin: "http://example.com", pathname: "//127.0.0.1"}) ``` Instead of processing the request as `http://example.org//127.0.0.1` (or `http://example.org/http://127.0.0.1` when `http://127.0.0.1 is used`), it actually processes the request as `http://127.0.0.1/` and sends it to `http://127.0.0.1`. If a developer passes in user input into `path` parameter of `undici.request`, it can result in an _SSRF_ as they will assume that the hostname cannot change, when in actual fact it can change because the specified path parameter is combined with the base URL. This issue was fixed in `undici@5.8.1`. The best workaround is to validate user input before passing it to the `undici.request` call.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
服务端请求伪造(SSRF)
Source: CVE Program / CVE List V5
Vulnerability Title
undici 代码问题漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
undici是一个HTTP/1.1客户端。 undici存在代码问题漏洞。攻击者利用该漏洞执行服务器端请求伪造攻击。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
nodejs undici <= 5.8.1 -

II. Public POCs for CVE-2022-35949

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2022-35949

登录查看更多情报信息。

Patches & Fixes for CVE-2022-35949 (1)

Vendor Advisories for CVE-2022-35949 (1)

Other References for CVE-2022-35949 (1)

IV. Related Vulnerabilities

V. Comments for CVE-2022-35949

No comments yet


Leave a comment