文章总结: Squidbleed漏洞(CVE-2026-47729)是Squid代理服务器中存在29年的内存泄露漏洞,源于FTP目录解析代码对空字符处理不当导致指针越界。攻击者可在同一代理网络(如公共WiFi)下读取其他用户内存,泄露明文HTTP请求、账号密码、Cookie等敏感信息。修复建议立即禁用FTP代理功能或验证补丁是否包含空终止符检查。 综合评分: 85 文章分类: 漏洞分析,代码审计,网络安全,应用安全,漏洞预警
潜伏29年!Squidbleed 漏洞曝光,明文账号 Cookie 直接泄露
看雪学苑 看雪学苑
看雪学苑
2026年6月23日 18:05 上海
在小说阅读器读本章
去阅读
01
29年前埋下的定时炸弹
来自Calif.io的安全研究人员近日披露了一个存在于Squid代理服务器中长达29年的严重内存泄露漏洞,因其攻击方式与当年臭名昭著的Heartbleed极为相似,被命名为Squidbleed,漏洞编号CVE-2026-47729。
这个漏洞的根源可以追溯到1997年,当时开发人员为了兼容古老的NetWare服务器,在FTP目录解析代码中添加了一段处理空格的逻辑。这段有问题的代码不仅存活了近三十年,至今仍存在于所有Squid版本的默认配置中。
02
危险有多大?同一WiFi就能偷你的密码
Squid是全球使用最广泛的开源代理服务器之一,广泛部署在学校、企业、公共WiFi热点等共享网络环境中。而这个漏洞最可怕的地方在于:攻击者只需要是同一代理的普通用户,不需要任何特殊权限。
也就是说,如果你正在使用公司、学校或咖啡馆的公共WiFi,那么旁边任何一个连接了同一个网络的人,都有可能利用这个漏洞窃取你的网络流量。
具体会泄露什么?
- 所有明文HTTP请求的完整内容
- 网页登录的用户名和密码(Authorization头)
- 网站会话Cookie和令牌
- 所有未加密的浏览记录
不过漏洞影响范围也有明确边界:正常的HTTPS流量由于使用了CONNECT隧道,Squid无法解密,因此不会被泄露。但如果企业使用了Squid进行TLS解密和内容审计,那么所有经过该代理的HTTPS流量也将面临泄露风险。
03
漏洞原理:一个小小的判断失误
这个能泄露内存的严重漏洞,起因只是一行极其简单的代码:
while (strchr(w_space, *copyFrom)) ++copyFrom;
这段代码的本意是跳过FTP目录列表中的多余空格。但如果攻击者控制的FTP服务器返回一个”畸形”的目录行——在时间戳之后直接结束,没有文件名——那么copyFrom指针就会指向字符串的结束符\0。
问题就出在这里:C语言的strchr函数会把字符串结束符也当作有效字符进行搜索,因此它永远不会返回NULL,导致循环无限执行,指针直接越界访问缓冲区之后的内存。
更致命的是,Squid在释放内存时不会清零。一个刚刚存放过受害者HTTP请求的4KB内存块,在被FTP解析代码复用后,除了开头几个字节被覆盖,其余大部分内容都原封不动地保留着。攻击者通过越界读取,就能完整获取到这些敏感数据。
研究人员已经发布了概念验证代码,演示了如何从同一代理的其他用户那里窃取Authorization认证头,从而完全接管受害者的网站账号。截至目前,尚未有在野利用的报告。
04
紧急修复指南:这样做最安全
由于Squid各版本的修复状态目前存在混乱,官方维护者先是称7.6版本已修复,后又更正为7.7版本,而Debian安全团队则表示相关补丁其实已经包含在7.6中。因此单纯升级版本可能无法确保安全。
最稳妥的修复方案:
- 立即禁用FTP代理功能(强烈推荐)
- 这是最推荐的方法,一劳永逸
- Chrome浏览器早在多年前就已移除FTP支持
- 现代网络中FTP流量几乎可以忽略不计
- 无论你使用哪个版本,禁用FTP都能彻底消除攻击面
- 手动验证补丁
- 检查FtpGateway.cc文件中是否添加了空终止符检查
- 确认你使用的Linux发行版已经正确回传了补丁
SUSE将该漏洞的CVSS评分定为6.5分(中危),主要原因是攻击者需要先获得代理访问权限,且仅影响机密性,不破坏数据完整性或服务可用性。
但对于绝大多数普通用户来说,这个漏洞的实际风险远高于评分所显示的。毕竟在公共WiFi环境中,”获得代理访问权限”几乎没有任何门槛。
这个埋藏了29年的漏洞,是由Anthropic的Claude Mythos Preview大模型在代码审计中发现的。这也是AI继在FFmpeg等项目中发现多个深度隐藏的解析器漏洞后,再次展现出在软件安全领域的强大能力。
资讯来源:Calif.io安全研究报告
球分享
球点赞
球在看
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:看雪学苑 看雪学苑 看雪学苑《潜伏29年!Squidbleed 漏洞曝光,明文账号 Cookie 直接泄露》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论