4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PHPの重大な脆弱性、うちの会社は大丈夫? Web担当者が確認すること

4
Posted at

2026年10月22日 日本時間17時時点の情報です。最新の状況は末尾の公式発表で確認してください。

3行まとめ

  • 10月21日〜22日、FF14やグラブル、ニコニコなどの一部サービスで、「PHPの脆弱性への対応」としてメンテナンスが行われました。いずれも予防のための対応です。
  • 原因は、ウェブサイトの裏側で広く使われる「PHP」本体の弱点2件で、ログインなしで外からサーバーを操作されるおそれがあります。修正版は PHP 8.5.12/8.4.27/8.3.36/8.2.35 です。
  • 自社サイトがPHPで動いているなら、制作会社やサーバー会社に「修正済みか、誰がいつ直すか」を確認してください。WordPressやプラグインの更新では直りません。

どのサービスでメンテナンスがあったのか

10月21日の夜から22日にかけて、次のサービスの一部で、運営元が「PHPの脆弱性への対応」としてメンテナンスを行いました。

  • ファイナルファンタジーXIV:パッチサーバーを停止し、全ワールドで新規ログインを一時停止(公式サイト The Lodestone)
  • グランブルーファンタジー、ウマ娘 プリティーダービー、Shadowverse: Worlds Beyond(Cygames):21日23時ごろから緊急メンテナンス(各公式X。ファミ通・GAME Watchが引用)
  • ニコニコ動画などニコニコの各サービス:21日19時ごろから順次メンテナンスし、22日に再開(ニコニコ公式X。電ファミニコゲーマーが引用)

いずれも攻撃を受けたからではなく、予防のためのメンテナンスです。Cygamesの告知では、被害やデータの流出は確認されていないとしています。

では、PHPとは何で、何が起きたのか

PHPは、ホームページや予約システム、ネットショップ、ゲームのサーバーなどの“裏方”として動くプログラミング言語です。WordPressもPHPで動いています。

今回見つかったのは、CVE-2026-109618とCVE-2026-109619という2件の脆弱性(弱点)で、まとめて「PHP2Shell」と呼ばれています。PHP公式の深刻度評価は、どちらも10点満点中9.2(CVSS v4.0)の「緊急」です。10月21日23時(日本時間)に修正版が公開されました。

根本の原因は、PHPがメモリ不足になったとき、作業を途中で投げ出して後片付けに移る作りになっていたことです。作業途中のデータは、まだ中身が書き込まれていない状態で残ります。後片付けの係はそれを「完成したデータ」だと思って読み、そこに書かれた指示どおりに動いてしまいます。

2件のうち1件目(CVE-2026-109618)では、攻撃者がこの性質を次のように突きます。

これはすべて、サイト本体のプログラムが動き出す前、ログイン画面よりも手前で起きます。修正版では、メモリ不足になってもすぐに作業を投げ出さず、区切りのいいところまで進めてから止めるように直されました。

2件目(CVE-2026-109619)は、前のアクセスで使ったデータが後片付けされずに残り、次のアクセスで使われてしまう問題です。初期設定で有効な機能(ファイルアップロードの進み具合を記録する機能)がこの残ったデータを使うため、特別な設定をしていないサイトも対象になります。

調査に関わったWiz社は、最新版のWordPress・Drupal・Joomlaでログインなしに乗っ取れることを実演しました。サーバー内のパスワードやAPIキーを盗み見られるおそれも指摘されています。

自社は関係ある? 3つのチェック

  • ① PHPを使っているか。 WordPressで作ったサイトなら、まずPHPで動いています。採用サイト、ネットショップ、予約フォーム、社内ツールも含めて洗い出してください。
  • ② サーバーは誰が管理しているか。 共用のレンタルサーバーなら、更新は基本的にサーバー会社が行います(例:mixhostは22日に全サーバーで適用を完了し「お客様の作業は不要」と告知)。VPSやクラウドの場合は、自社か委託先が更新しないと直りません。
  • ③ バージョンが古すぎないか。 PHP 8.1以前は公式サポートが終わっていて、公式の修正版は出ません。7.4〜8.1向けに最小限の修正コードは公開されていますが、基本はサポート中の版への移行が必要です。

何をすればいいか

制作会社・保守会社・サーバー会社に、次の5点を聞いてください。

  1. 当社のサイトは、PHP2Shell(CVE-2026-109618/109619)の影響を受けますか?
  2. 修正はもう適用済みですか? まだなら、いつ、誰が行いますか?
  3. 今のPHPのバージョンは? 8.1以前なら、移行の費用と日程の目安は?
  4. 更新前にバックアップを取り、更新後に表示・フォーム・注文が正常か確認してもらえますか?
  5. 不審なファイルやアクセスの痕跡がないか、確認してもらえますか?

画面に表示されるバージョン番号だけでは判断できません。サーバー会社などが修正を独自に組み込んだ場合、番号は変わらないためです(mixhostも修正後も表示は変わらないと案内)。修正済みかどうかは管理者に直接確認してください。

すぐに更新できない重要なサイトについては、IPAや米CISAがアクセス制限や一時停止も選択肢に挙げています。上のゲームやサービスのメンテナンスも、この考え方です。設定変更やWAFで被害を減らす方法もありますが、PHP公式は「完全な回避策はなく、更新が唯一の安全な選択肢」としています。

慌てなくていいこと・誤解しやすいこと

  • 「インターネット終了」ではありません。 修正版は出ており、レンタルサーバー各社も対応を進めています。
  • 「CVSS 10.0」は誤りです。 発表前にSNSで出回った数字で、PHP Foundationは正しくは9.2としています。
  • 悪用は「試み」が確認された段階です。 AWSは10月17日におとり用サーバーへの攻撃の試みを観測し、その後「広く悪用されている」としました。ただ、実際のサイトで成功したかは「不明」としており、watchTowr社も21日時点で成功例は見ていないとしています。それでも攻撃は始まっているので、更新を先送りする理由にはなりません。
  • サイトが見られなくても、すぐ被害とは限りません。 予防のための停止も多いので、まずサーバー会社のお知らせを確認してください。

用語メモ

  • 脆弱性(ぜいじゃくせい):ソフトウェアに潜む、悪用できる弱点。
  • RCE(リモートコード実行):外部の第三者に、自社のサーバー上で好きなプログラムを動かされること。乗っ取りに直結します。
  • CVSS:脆弱性の深刻さを0〜10で表す共通の物差し。9.0以上は「緊急」。
  • WAF:サイトの手前で怪しい通信をふるい落とす“門番”。時間稼ぎにはなりますが、根本対策ではありません。

出典

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?