CVE-2026-41905FreeScout是基于Laravel框架的开源帮助台系统。在1.8.217版本之前,其Helper::sanitizeRemoteUrl()函数存在安全缺陷。该函数能够跟随HTTP重定向获取最终地址,但仅对用户输入的原始URL进行安全验证,忽略了重定向后的目标URL。攻击者可利用此漏洞绕过主机检查,诱导FreeScout访问内部HTTP服务或云元数据,导致敏感信息泄露。
该漏洞核心在于FreeScout的URL重定向处理机制存在逻辑缺陷。位于app/Misc/Helper.php的Helper::sanitizeRemoteUrl()函数旨在防止SSRF攻击,但在实现上存在疏漏。当系统处理用户提供的URL时,会通过curlGetLastRedirectedUrl()跟随HTTP 301/302等重定向跳转。问题在于,代码仅对初始输入的URL进行主机名和内网IP地址的合法性校验,一旦初始URL通过验证,系统便会盲目信任并请求重定向后的最终目标地址。
攻击者可利用此特性,构造一个指向外部恶意服务器的URL(该URL通过初始检查),并在恶意服务器上设置重定向响应,将流量引导至内网敏感资源(如AWS/GCP的云元数据服务169.254.169.254,或内网API接口)。这使得攻击者能够绕过网络边界防御,探测或窃取内部服务数据,造成严重的信息泄露风险。