GitHub Advisoryadvisory · npm
GHSA-78xj-cgh5-2h22 NPM IP package incorrectly identifies some private IP addresses as public
LOW
Official page ↗
- Aliases
- CVE-2023-42282
- Ecosystem
- npm
- Packages
- ip
- Severity
- Low
- Weaknesses
- CWE-918
- Reviewed
- 2024-02-09
Affected packages
• npm ip: >= 2.0.0, < 2.0.1 → fixed in 2.0.1
• npm ip: < 1.1.9 → fixed in 1.1.9
Description
The `isPublic()` function in the NPM package `ip` doesn't correctly identify certain private IP addresses in uncommon formats such as `0x7F.1` as private. Instead, it reports them as public by returning `true`. This can lead to security issues such as Server-Side Request Forgery (SSRF) if `isPublic()` is used to protect sensitive code paths when passed user input. Versions 1.1.9 and 2.0.1 fix the issue.
Related
Alias · CVE (1)
- CVE-2023-42282 The ip package before 1.1.9 for Node.js might allow SSRF because some IP addresses (such as 0x7f.1) are improperly categorized as globally… vulnerability
Weakness · CWE (1)
- CWE-918 Server-Side Request Forgery weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2023-42282 advisory
- https://github.com/JoshGlazebrook/socks/issues/93#issue-2128357447 web
- https://github.com/github/advisory-database/pull/3504#issuecomment-1937179999 web
- https://github.com/indutny/node-ip/pull/138 web
- https://github.com/indutny/node-ip/commit/32f468f1245574785ec080705737a579be1223aa web
- https://github.com/indutny/node-ip/commit/6a3ada9b471b09d5f0f5be264911ab564bf67894 web
- https://cosmosofcyberspace.github.io/npm_ip_cve/npm_ip_cve.html web
- https://github.com/indutny/node-ip package