
2025/12/12 5:46
Denial of service and source code exposure in React Server Components
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
React は Server Components 機能における 2 つの重大なセキュリティ脆弱性(CVE‑2025‑55184(Denial of Service、CVSS 7.5)と CVE‑2025‑55183(Source Code Exposure、CVSS 5.3))に対するパッチをリリースしました。いずれの脆弱性も Remote Code Execution を可能にしないため、既存の React2Shell パッチは有効なままです。
バグは
react-server-dom-webpack、react-server-dom-parcel、および react-server-dom-turbopack のそれぞれ 19.0.0/1、19.1.0‑1.2、および 19.2.0‑1 バージョンに影響します。修正リリースは 19.0.2、19.1.3、そして 19.2.2 です;これらのいずれかを直ちにインストールしてください。対象となる React フレームワーク/バンドラーには Next.js、react‑router、waku、@parcel/rsc、@vite/rsc-plugin、および rwsdk が含まれます。アプリケーションが Server Components またはそれをサポートするバンドラー/プラグインを使用していない場合、影響はありません。
DoS 脆弱性は、特定の HTTP リクエストを逆直列化すると無限ループに陥り、ソースコード脆弱性は任意の Server Function の文字列表現(stringified body)を返し、ハードコーディングされた秘密情報が漏洩する恐れがあります。
React Native を monorepo で使用している場合、影響を受ける
react-server-dom-* パッケージだけを更新すれば十分です;core の react/react-dom バージョンは変更不要です。ホスティングプロバイダーは一時的な緩和策を適用していますが、サーバー停止や秘密情報の偶発的漏洩を防ぐために開発者は依存関係を直ちに更新する必要があります。
*上記の要約をそのまま保持したい場合は、元のまとめを繰り返してください。
本文
2025年12月11日 – React チーム
セキュリティ研究者は、先週の重要パッチを悪用しようとした際に React Server Components に追加で2つの脆弱性を発見しました。
これら新たな問題はリモートコード実行(RCE)を許容するものではなく、既存の React2Shell 修正は有効です。
新規公開された脆弱性
| 重大度 | CVE | CVSS | 説明 |
|---|---|---|---|
| High | CVE‑2025‑55184 | 7.5 | Denial of Service – 整形された HTTP リクエストが Server Functions 内で無限ループを引き起こし、サーバーを停止させ CPU を消費します。 |
| Medium | CVE‑2025‑55183 | 5.3 | ソースコード露出 – 悪意あるリクエストにより脆弱な Server Function のソースコードが返却される可能性があります(関数内にハードコーディングされた秘密情報のみが漏洩します)。 |
即時対策
- これらの脆弱性は CVE‑2025‑55182 と同じパッケージ・バージョンに影響します。
react-server-dom-webpackreact-server-dom-parcelreact-server-dom-turbopack
| 対象バージョン | 修正済みバージョン |
|---|---|
| 19.0.0, 19.0.1, 19.1.0, 19.1.1, 19.1.2, 19.2.0, 19.2.1 | 19.0.2, 19.1.3, 19.2.2 |
上記パッケージを使用している場合は、直ちに修正済みバージョンへアップグレードしてください。
- アプリケーションが React Server Components を使用せず、またそれらをサポートするフレームワーク/バンドラも利用していない場合は影響ありません。
追加注意事項
- 先週公開されたパッチも脆弱性を残しています。すでに重要脆弱性のためアップデート済みの場合でも、再度更新してください。
- ホスティングプロバイダーは一時的な緩和策を適用していますが、これに頼らず直ちにアップグレードしてください。
- React Native ユーザー向け:
内で React のバージョンを固定します。package.json- モノレポを使用している場合は、影響を受けるパッケージ (
) のみ更新し、react-server-dom-*
やreact
は変更不要です。react-dom
脆弱性詳細情報
Denial of Service (CVE‑2025‑55184)
- 基本スコア: 7.5(High)
整形された HTTP リクエストが任意の Server Function エンドポイントでデシリアライズ中に無限ループを引き起こし、サーバーを停止させ CPU を消費します。 - パッチはこの無限ループを防止します。
Source Code Exposure (CVE‑2025‑55183)
- 基本スコア: 5.3(Medium)
脆弱な Server Function に対する悪意あるリクエストにより、関数がデータを文字列化するときにソースコードが漏洩する可能性があります。 - ハードコーディングされた秘密情報のみが露出し、実行時の環境変数 (
) は安全です。process.env.* - パッチは意図せぬ文字列化を防ぎます。
タイムライン
| 日付 | イベント |
|---|---|
| 12/3 | Vercel と Meta Bug Bounty(Andrew MacPherson)への漏えい報告 |
| 12/4 | Meta Bug Bounty(RyotaK)への DoS 初期報告 |
| 12/6 | 両問題の確認と調査開始 |
| 12/7 | 初期修正作成・検証開始 |
| 12/8 | ホスティングプロバイダーおよびオープンソースプロジェクトへ通知 |
| 12/10 | プロバイダー緩和策実装、パッチ検証完了 |
| 12/11 | 追加 DoS 報告・パッチ更新 |
| 12/11 | CVE‑2025‑55183 / 55184 としてパッチ公開 |
属性
- Andrew MacPherson (AndrewMohawk) – ソースコード露出報告
- RyotaK(GMO Flatt Security Inc.) – 初期 Denial of Service 報告