CVE-2025-14523CVE-2025-14523是libsoup库中的一个高危安全漏洞,CVSS评分8.2。该漏洞存在于libsoup的HTTP头部处理机制中,允许攻击者在单个HTTP请求中注入多个Host头字段。libsoup在处理时会返回最后一个Host头用于服务器端处理,而常见的反向代理服务器通常只识别并使用第一个Host头进行路由决策。这种处理差异导致前端代理和后端服务器对请求目标的理解不一致,从而产生虚拟主机(Vhost)混淆问题。攻击者可利用此漏洞执行请求走私攻击、缓存污染操作,并可能绕过基于主机名的访问控制策略。由于无需认证且可远程利用,对暴露在网络中的服务构成严重威胁。
漏洞根源在于libsoup的HTTP头部解析逻辑存在缺陷。HTTP规范允许同一字段出现多次,但libsoup错误地实现了对多个Host头的处理——它选择返回最后一个Host头值,而标准实践和大多数代理服务器(包括Nginx、Apache等)都是使用第一个Host头。当攻击者构造包含两个Host头的请求时:第一个Host头(如legitimate.example.com)被前端代理用于路由决策,将请求转发到后端服务器A;而后端libsoup服务器收到请求后,使用最后一个Host头(如malicious.example.com)进行虚拟主机匹配和处理,导致请求被错误地路由到目标B。这种解析不一致性使得攻击者可以:1) 走私隐藏的请求片段,绕过安全检查;2) 污染共享缓存,使用户获取恶意内容;3) 绕过基于Host头的WAF规则或IP黑白名单限制。攻击者通过精心构造的请求即可实现对目标系统的未授权访问和数据篡改。