React Server Componentsに新たな脆弱性が発覚
セキュリティ研究者により、React Server Components (RSC) において、サーバーをサービス運用妨害(DoS)攻撃とソースコード漏洩の危険に晒す二つの新たな脆弱性が公表されました。これらの欠陥は、先週発見された重大な「React2Shell」脆弱性に対するパッチ分析中に発見されたものです。リモートコード実行(RCE)には至らないものの、アプリケーションの安定性とデータプライバシーに対して依然として大きなリスクをもたらします。
詳細な脆弱性の内容
今回発見された脆弱性は以下の通りです。
- サービス運用妨害 (DoS): 最も深刻な欠陥の一つは、深刻度「高」と評価されるDoS脆弱性です。攻撃者は、特別に細工されたHTTPリクエストをサーバーのエンドポイントに送信することでこれを悪用できます。Reactがこの悪意のあるリクエストを処理すると、無限ループが発生し、サーバープロセスがハングアップし、過剰なCPUリソースを消費します。これにより、サーバーがクラッシュするか、正当なユーザーが利用できなくなる可能性があります。
- ソースコード漏洩: 第二の脆弱性では、不正なソースコードの公開が可能となります。特定の条件下で悪意のあるリクエストがServer Functionに自身のソースコードを文字列として返させる可能性があることが判明しました。これは、機密性の高いロジックや、関数コード内に埋め込まれた内部データベースキーが漏洩する恐れがあります。
関連するCVE情報
発見された脆弱性には以下のCVE IDが付与されています。
- CVE-2025-55184: 深刻度 高 (7.5) – サービス運用妨害 (DoS)
- CVE-2025-67779: 深刻度 高 (7.5) – サービス運用妨害 (DoS)
- CVE-2025-55183: 深刻度 中 (5.3) – ソースコード漏洩
開発者への影響と対応策
Reactチームは、今週初めにリリースされたバージョン(19.0.2、19.1.3、19.2.2)のアップデートが不完全であり、これらの新たなエクスプロイトに対して脆弱なままであると警告しています。これらのバージョンに更新した開発者は、直ちに新たにリリースされた修正済みバージョンへ再度アップデートする必要があります。
この脆弱性は、react-server-dom-webpack、react-server-dom-parcel、およびreact-server-dom-turbopackといった広く利用されているパッケージに影響を及ぼします。また、Next.js、React Router、Wakuなどの人気フレームワークもこれらのコンポーネントに依存しているため影響を受けます。
React Nativeユーザーがモノレポ設定でこれらのサーバーパッケージを使用している場合、コアのReactバージョンを変更せずに特定のサーバーパッケージをアップデートすることで、不整合を避けることができます。
元記事: https://gbhackers.com/severe-flaws-in-react-server-components-enable-dos-attacks/
