GitHub Advisory Databaseに、Storybookの開発サーバーに関する脆弱性「CVE-2026-114125」が公開されました。悪意あるサイトから開発中のファイルを不正に変更される恐れがあり、Storybook側は開発サーバーを再起動する前に修正版へ更新するよう求めています。
ファイル変更からコード実行につながる恐れ
Storybook側によると、ファイルの不正変更にはユーザーの操作が伴います。変更されたファイルがローカル環境で実行されると、開発者の権限で任意のコードが動く恐れがあります。開発サーバーを使っているだけで直ちにコードが実行される、と説明されたものではありません。
最悪の攻撃シナリオは、複数の脆弱性を組み合わせたものです。Storybook側は、実環境での悪用は確認していないとしています。
最近のChromeやFirefoxにある、localhostへの接続許可を確認する仕組みは、リスクを減らすものの解消はしません。localhostは、自分の端末上のサービスに接続する際に使う名前です。Storybook側は、信頼できないサイトにlocalhostサービスへの接続を許可しないよう呼びかけています。
修正版は4系列、埋め込みや通信の既定動作も変更
修正版は、11.0.0-alpha.6、10.6.2、9.1.21、8.6.19です。すぐに更新できない場合は、修正を適用するまで影響する開発サーバーを起動しないよう求めています。影響を受けるバージョンの詳しい範囲は、今回の資料には書かれていません。日本での提供は発表には書かれていません。
更新では、8系・9系を含め、一部のネットワーク機能の既定動作も変わります。開発版の管理画面やプレビューは、別ホスト名のサイト内にiframeで埋め込むことが既定で禁止されます。iframeは、別のページをページ内に表示する仕組みです。
また、画面間でメッセージを送るpostMessageの通信先は、既定で同一オリジンと他のlocalhostサービスに制限されます。同一オリジンとは、通信方式・ホスト名・ポートが同じ接続先を指します。別オリジンのStorybookを組み合わせる構成では、組み込む対象のStorybookがビルド済みでないと、既定では読み込めなくなります。
ハイライト用APIも、任意イベントの発火につながる問題への対処として変更されました。Visual Testsアドオンの該当リンク機能を維持するには、5.5.1以降への更新が必要です。一部の保護を無効化する機能フラグもありますが、利用時には影響確認が求められています。
影響する会社・しない会社
- 影響する: 該当バージョンのStorybook開発サーバーを利用する会社です。情シスが直接運用していなくても、開発部門の利用状況を確認する必要があります。
- 影響する: 更新対象の環境で、別ホスト名への埋め込みや別オリジンのStorybookを組み合わせる構成を使う会社です。修正後の機能制限も確認対象になります。
- 影響しない: ビルド済みStorybookの実行・閲覧だけを行う会社です。この利用形態は影響対象外とされています。
- 影響しない: 開発サーバーをブラウザーで一度も開かない利用形態です。こちらも影響対象外とされています。