掲載記事 165本きょう +22026年11月9日(月)運営:株式会社Rabbitly

  1. 新着npm部品bee-jsに不正な版、入れると遠隔操作のおそれ
  2. 新着PyPIに悪性パッケージ39件、入れるだけで動く手口も
  3. 新着NASをインターネットに出さない 確かめる3つの設定
  4. 新着パスキーの始め方 まず管理者のアカウントから
  5. 新着今週のセキュリティまとめ 11月1日〜7日
  6. 新着政府がサイバー緊急対策パッケージ決定 お助け隊に復旧支援を追加
  7. 新着退職者のアカウント、片づけ漏れを防ぐ5つの手順
  8. 新着OpenSSHの欠陥に攻撃、囮サーバーでroot取得と報道
  1. トップ
  2. 脆弱性情報
  3. Symfonyに複数の脆弱性、サーバーのファイルを読まれるおそれ
脆弱性情報

Symfonyに複数の脆弱性、サーバーのファイルを読まれるおそれ

サイバーセキュリティ情報センター 編集部

画像はイメージです。記事に出てくる組織や現場とは関係ありません。

PHP のフレームワーク Symfony が 7.4.23 などを公開し、多くの部品の脆弱性を直しました。送られたデータからサーバーのファイルを読まれる欠陥や、短い YAML で処理を止められる欠陥が含まれます。

脆弱性の概要

重要CVSS8.7
対象
Symfony
悪用
確認されていない
影響
サーバーのファイルを読まれる、処理を止められる
修正版
修正版あり
公表元
Symfony / GitHub
影響を受ける製品
製品対象のバージョン修正版
Symfony 8系8.1.11 より前8.1.11
Symfony 7系7.4.23 より前7.4.23
Symfony 6系6.4.50 より前6.4.50
Symfony 5系5.4.56 より前5.4.56

製品の履歴:PHPの脆弱性一覧公表されたらすぐ通知を受け取る

やること

Symfony は PHP で Web システムを作るためのフレームワークです。部品ごとに分かれていて、ほかの製品やフレームワークの中で使われていることもあります。次の順で進めてください。

  • Symfony の部品を、使っている系統の修正版(8.1.11、7.4.23、6.4.50、5.4.56)以降に更新してください。たとえば Serializer の部品なら、アドバイザリは composer update symfony/serializer --with-all-dependencies の形で更新する例を示しています
  • 自社で作ったシステムでなくても、composer.lock に symfony/ から始まる名前があれば、その製品の提供元や委託先に対応を聞いてください
  • 管理画面などを Web サーバーや WAF の設定だけで守っている場合は、Symfony の中の access_control でも守るように見直してください

何が危ないのか

Symfony は11月4日に 5.4.56、6.4.50、7.4.23、8.1.11 を公開しました。7.4.23 の変更の一覧には Config、HttpFoundation、Serializer、Yaml など、多くの部品の修正が並んでいます。GitHub のアドバイザリで深刻度が High のものは次の3件です。

1つ目は受け取ったデータをファイルの型に戻す処理の欠陥(CVE-2026-121623、CVSS v4 8.2)です。Serializer の DataUriNormalizer はデータを URI の形(data: で始まる書き方)で受け取ります。この部品は DATA: のような大文字の書き方も受け付けますが、PHP は小文字の data: しかデータとして扱わず、大文字の書き方はサーバーの中のファイルの場所として読まれます。.. で上の階層へさかのぼれるので、利用者が送ったデータからサーバーの任意のファイルの中身を読まれるおそれがあります。利用者が送ったデータを SplFileObject などのファイルの型に戻す処理が対象で、6.4 以降は #[MapRequestPayload] で受け取る項目にこの型がある場合も当てはまります。標準の構成でこの部品は有効になっています。

2つ目は YAML の読み込みの欠陥(CVE-2026-123792、CVSS v4 8.7)です。YAML は設定ファイルなどに使う書式です。細工した文書を読ませると処理の時間が極端に延び、最悪の場合は100バイトに満たない文書で PHP の処理を数秒から数分止められます。7.4 以降で Yaml の部品が入っている場合、#[MapRequestPayload] を使う窓口で acceptFormat を絞っていないと、ログインなしの1回の要求で処理を max_execution_time まで止められます。修正版では acceptFormat に挙げない限り CSV と YAML の受け付けをしなくなりました。

3つ目は Filesystem の Path の欠陥(CVE 番号なし)です。:// の前をすべて根として扱うため、決めたフォルダーの外のファイルを指せてしまいます。6.4 以降の AssetMapper では、悪意のある外部のパッケージが assets/vendor の外にファイルを書き込めるおそれがあります。

Web サーバーの制限を回避される欠陥

GitHub の評価は Low や Moderate ですが、構成によって影響が出る欠陥もあります。

GHSA-3h27-hjv7-fqjx は /index.phpadmin のような URL が /admin として扱われる欠陥です。nginx や Apache、CDN、WAF で /admin への接続を制限している構成では、この制限を回避されて保護された画面に届くおそれがあります。Symfony の中の access_control やファイアウォールは影響を受けません。以前の修正(CVE-2025-64500)で入った不具合で、5.4.50、6.4.29、7.3.7、8.0 以降の、修正版より前のバージョンが対象です。

GHSA-5mx8-mwrp-5693 は、細工したリンクを開かせると、画面の中に作られるリンクやフォームの送り先が攻撃者のホストを指す欠陥です。ログインのフォームの入力が攻撃者に送られるおそれがあります。公式の文書で推奨している Web サーバーの設定では影響を受けず、framework.trusted_hosts では防げません。

対象

上の表の修正版より前が対象です。欠陥ごとに影響を受け始めるバージョンは異なります。Symfony の発表と GitHub のアドバイザリに、悪用されたという記載はありません。

中小企業が確かめること

委託して作った PHP のシステムがあれば、Symfony の部品を使っているか、使っていれば修正版への更新の予定を委託先に聞いてください。管理画面を Web サーバーの設定だけで守っているかどうかも、あわせて確かめてください。

自社で確かめること

  1. Symfony の部品の版を見るcomposer.lock で symfony/ から始まる部品のバージョンを確かめてください。ほかの製品やフレームワークの中に入っていることもあります。
  2. 管理画面の守り方を確かめるnginx や Apache、WAF の設定だけで /admin などを制限していないかを見てください。
  3. 外から受け取る形式を見る#[MapRequestPayload] を使う窓口で、受け付ける形式を acceptFormat で絞っているかを確かめてください。
自社で確かめるのが難しい場合はCyberScope のセキュリティ診断(3万円から)

出典

コメント 0

まだコメントはありません。

関連記事