不正确的域查找可能导致 libuv 中的 SSRF 攻击 (CVE-2024-24806)
CVE编号
CVE-2024-24806利用情况
暂无补丁情况
N/A披露时间
2024-02-08漏洞描述
libuv是一个跨平台支持库,专注于异步I/O。在`src/unix/getaddrinfo.c`文件中的`uv_getaddrinfo`函数(以及其Windows对应的`src/win/getaddrinfo.c`文件)在调用`getaddrinfo`之前会将主机名截断为256个字符。攻击者可以利用这个行为创建类似于`0x00007f000001`的地址,`getaddrinfo`会将其视为有效地址,从而允许攻击者构造解析到意外IP地址的有效负载,绕过开发人员的检查。漏洞是由于`uv_getaddrinfo`函数中处理`hostname_ascii`变量(长度为256字节)的方式以及后续处理`uv__idna_toascii`方法中引起的。当主机名超过256个字符时,它会被截断但不会添加终止空字节。因此,如果恶意用户选择一个较长的易受攻击的用户名,攻击者可能能够访问内部API或类似于 MySpace 的允许用户拥有 `username.example.com` 页面的网站。对这些用户页面进行爬取或缓存的内部服务可能会受到SSRF攻击的威胁。此问题已在版本1.48.0中得到修复。建议用户进行升级。针对此漏洞目前没有已知的解决方法。解决建议
建议您更新当前系统或软件至最新版,完成漏洞的修复。- 攻击路径 网络
- 攻击复杂度 低
- 权限要求 无
- 影响范围 未更改
- 用户交互 无
- 可用性 低
- 保密性 低
- 完整性 低
CWE-ID | 漏洞类型 |
CWE-918 | 服务端请求伪造(SSRF) |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论