CVE-2025-59159SillyTavern是一款本地安装的用户界面,允许用户与文本生成大语言模型、图像生成引擎以及文本转语音语音模型进行交互。在1.13.4版本之前,SillyTavern的Web用户界面存在DNS重绑定漏洞,攻击者可利用该漏洞执行多种恶意操作,包括安装恶意扩展、读取聊天记录、注入任意HTML进行钓鱼攻击等。该漏洞的CVSS评分为9.6,属于严重级别,攻击者无需认证即可通过网络发起攻击,但需要用户交互(如点击恶意链接)。该漏洞已在1.13.4版本中通过引入服务器配置设置得到修复,该设置可对入站HTTP请求中的主机名进行验证,根据提供的允许主机列表进行检查。用户可通过在config.yaml文件中设置`hostWhitelist.enabled`或通过环境变量`SILLYTAVERN_HOSTWHITELIST_ENABLED`来启用该功能。虽然该设置默认处于禁用状态以保持对现有用户配置的广泛兼容性和向后兼容性,但建议现有用户和新用户审查其服务器配置并应用必要的更改,尤其是在通过本地网络托管且未使用SSL的情况下。SillyTavern项目维护者已发布安全公告(GHSA-7cxj-w27x-x78q),详细描述了该漏洞的影响范围和修复方案。
DNS重绑定(DNS Rebinding)是一种针对浏览器的攻击技术,攻击者通过操控DNS响应,使得恶意网站的域名解析到受害者本地网络中的内部IP地址(如127.0.0.1或192.168.x.x),从而绕过同源策略(SOP)的限制。在SillyTavern的案例中,当用户在浏览器中访问SillyTavern的Web界面(如http://localhost:8000)时,攻击者控制的恶意网页可以通过DNS重绑定技术将域名解析为127.0.0.1,随后利用浏览器对该本地地址的信任,通过XMLHttpRequest或fetch API向本地SillyTavern服务器发送请求。由于SillyTavern默认未验证HTTP请求中的Host头,服务器会接受来自恶意网站的请求并执行相关操作。攻击者可利用此漏洞执行以下操作:1)通过扩展安装接口安装恶意扩展;2)通过API读取用户的聊天记录和敏感数据;3)通过响应注入在SillyTavern界面中注入任意HTML内容进行钓鱼攻击;4)修改服务器配置或执行其他管理操作。修复方案是在服务器端验证请求的Host头是否在白名单中,拒绝来自未授权主机的请求。