CVE-2023-24623: Paranoidhttp Server-Side Request Forgery vulnerability
7.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.19142%
CWE
Published
1/30/2023
Updated
5/20/2024
KEV Status
No
Technology
Go
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| github.com/hakobe/paranoidhttp | go | < 0.3.0 | 0.3.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from the safeAddr function's IP validation logic in client.go. The original code only checked if an IP was IPv4 (ip.To4() != nil) before applying filters. This missed IPv6's unspecified address [::] which maps to localhost. The patch added 'ip.IsUnspecified()' to the conditional, proving this was the vulnerable code path. The accompanying test in client_test.go that added [::] validation confirms the function's role in the vulnerability. The Go vulnerability report (GO-2023-1526) explicitly lists safeAddr as the affected symbol.