Astroでreact2shellのような脆弱性が起きない理由
BRANK

2025年12月3日に公開されたサーバー側での任意コード実行が可能となるReact及びNext.jsにおける脆弱性CVE-2025-55182。通称react2shell。この脆弱性は単なる実装バグとしては片付けられない、フロントエンド界隈全体に及ぶ議論を巻き起こしました。!この記事では以下の略語を使用します。RSC: React Server Component。Reactコンポーネントのレンダリングを全てサーバー側で行う仕組みのこと。主な目的はバンドルサイズやパフォーマンス向上。この記事ではRSCには深く触れません。RSF: React Server Functions。RSCの仕組みの上に成り立つものです。いわゆる"use server"ディレクティブを使用する機能です。今回の脆弱性は主にこちらで起きた話です。主な目的はより簡単にフォーム送信やデータ処理が行えるようにすること。react2shellはなぜ起こるの?RSCが有効になっているサーバーに細工されたリクエストを送ることで、サーバー側で攻撃者の指定する任意のコードを実行することができます。具体的にはReactのFlightプロトコルに関数の参照やプロトタイプ汚染などを仕組むことで、認証の有無に関係なく攻撃が可能となります。この攻撃の流れを観察すると2つの問題点が見…

zenn.dev
Related Topics: Security React Vulnerability