安全警报
信息来源:官方
| 字段 | 内容 |
|---|---|
| 漏洞标题 | Path traversal in /api/chats/import allows arbitrary file write outside intended chat directory |
| 严重性 | 高危 |
| 包名 | sillytavern (npm) |
| 受影响版本 | <= 1.16.0 |
| 补丁版本 | 1.17.0 |
| 描述 | 在 /api/chats/import 中存在一个路径遍历漏洞。经过身份验证的攻击者可以通过将遍历序列(如 ../)注入到 character_name 参数中,从而在预期的聊天目录之外写入由攻击者控制的文件。 |
| 影响 | 完整性:攻击者可以在文件系统的非预期位置创建文件。 可用性:可能导致磁盘滥用和破坏性的文件放置。 潜在升级:当与其他本地处理行为链接时,漏洞的严重性可能会增加。 |
| 建议 | 建议升级版本:>= 1.17.0 |
| 字段 | 内容 |
|---|---|
| 漏洞标题 | Path traversal in /api/chats/export and /api/chats/delete allows arbitrary file read/delete within user data root |
| 严重性 | High |
| 包名 | sillytavern (npm) |
| 受影响版本 | <= 1.16.0 |
| 补丁版本 | 1.17.0 |
| 描述 | 聊天端点存在路径遍历漏洞。经过身份验证的攻击者可以通过提供 avatar_url="..",在其用户数据根目录下读取和删除任意文件(例如 secrets.json 和 settings.json)。 这是由于 avatar_url 输入验证器仅阻止 / 和 NUL 字节,而不阻止 .. 等遍历段。因此,像 path.join(<user>/chats, "..") 这样的构造会解析为 <user>/,从而允许直接访问聊天目录之外的文件。 |
| 影响 | **机密性:**每个用户的机密和配置数据(如 secrets.json)都会被泄露。 **完整性/可用性:**攻击者可以删除关键的按用户文件(如 settings.json),并破坏帐户操作。在多用户或远程可达部署中,风险非常显著。 |
| 建议 | 建议升级版本: >= 1.17.0 |