CVE-2024-39123:Calibre-web 0.6.21 中的存储型 XSS 漏洞
漏洞利用详情
- 漏洞利用标题:Calibre-web 中的存储型 XSS 漏洞
- 日期:2024-05-07
- 漏洞利用作者:Catalin Iovita & Alexandru Postolache (Pentest-Tools.com)
- 厂商主页:Calibre-web GitHub 仓库
- 版本:0.6.21 - Romesa
- 测试环境:Linux 5.15.0-107、Python 3.10.12、lxml 4.9.4
- CVE:CVE-2024-39123
漏洞描述
Calibre-web 0.6.21 存在存储型跨站脚本(XSS)漏洞。该缺陷允许攻击者在服务器上注入并存储恶意脚本。当其他用户访问应用程序中受感染的区域时,这些脚本会在其会话上下文中被执行。
复现步骤
-
登录:使用有效的用户账户对 Calibre-web 应用程序进行身份验证。
-
上传新书:导航到上传区域并上传一本新书。
-
访问书籍列表:访问 /table?data=list&sort_param=stored 端点以查看书籍列表。
-
注入载荷:在已上传书籍的 Comments 字段中,插入以下载荷:
<a href=javas%1Bcript:alert()>Hello there!</a>
-
保存更改:提交表单以保存更改。
-
触发载荷:进入已上传书籍的书籍详情页面。点击描述以触发存储的脚本。将出现一个警告框,表明注入的脚本已成功执行。
影响
该漏洞允许攻击者在其他用户的上下文中执行任意 JavaScript。这可能导致:
- 会话劫持:窃取用户会话。
- 数据篡改:修改或删除数据。
- 钓鱼攻击:将用户重定向到恶意网站。
- 信息泄露:暴露敏感信息。
缓解措施
- 更新:用户应更新到已修复此漏洞的 Calibre-web 版本。
- 输入净化:开发人员应实施严格的输入验证和输出编码,以防止 XSS 攻击。
参考
