コラム

Column

導入事例

Case Study

サイバーニュース

Cyber News

海外のサイバーセキュリティ関連のニュースを日本語でご紹介しています。

お知らせ

News

PHPに最大深刻度9.2の脆弱性PHP2Shellが発覚し認証不要の遠隔コード実行が可能になる問題

サーバー保守作業を行うエンジニアとサーバルーム

The Hacker Newsの報道によると、PHPのランタイム自体に深刻な2件の脆弱性(通称PHP2Shell)が確認され、緊急パッチが公開されました。共通脆弱性識別子CVE-2026-109618およびCVE-2026-109619が割り当てられたこれらの欠陥は、CVSS v4.0スコアで9.2と評価されています。Webアプリケーション自体のコードに不備がなくても、認証なしの外部攻撃者によってサーバー上で任意のコードを実行されたり、メモリ内の認証情報が盗まれる危険があります。

The Hacker News:PHP Issues Emergency Patches for Two Critical PHP2Shell RCE Flaws as Exploit Attempts Emerge

Webサーバー上の実行環境における脆弱性や設定の不備が懸念される場合は、侵入リスクを事前に洗い出す診断の実施をおすすめします。

CyberCrewのペネトレーションテストを
詳しく知る
CyberCrewへのお問い合わせ・
無料見積もりはこちら

この記事のポイント

影響のあるシステム

  • PHP 5.4以降のほぼすべてのバージョン(PHP-FPM、Apache mod_php、FrankenPHP、LiteSpeedなどの環境を含む)
  • 特にApache mod_phpを利用しており、リクエスト起動時に自動解析を行う構成のサーバー

推奨される対策

  • PHPランタイムを修正済みバージョン(PHP 8.5.12、8.4.27、8.3.36、8.2.35)へ更新し、Webサーバーおよびワーカーを再起動する
  • 即座に更新できない環境ではCVE-2026-109618の暫定対策としてmemory_limit=-1を設定し、リクエストサイズの上限を前段で強制する
  • CVE-2026-109619の特定経路を遮断するためsession.upload_progress.enabledを0に設定する

この記事に出てくる専門用語

  • CVE-2026-109618:PHPのメモリ不足処理の不備に起因する脆弱性です。今回の事案では、細工されたリクエストによってメモリ状態を不正にし、遠隔からコードを実行される原因となりました。
  • CVE-2026-109619:前のリクエストで残ったグローバル状態の破棄不備に起因する脆弱性です。今回の問題では、解放済みメモリへのアクセスが発生して任意のコード実行につながります。
  • mod_php:Apache HTTP Server内でPHPを直接実行するためのモジュールです。今回の脆弱性ではリクエストの失敗時にも無条件で終了処理が動くため、最も悪用リスクが高い環境として挙げられています。
  • PHP-FPM:PHPのFastCGI実装プロセス管理機構です。今回の脆弱性の影響範囲に含まれるものの、起動失敗時に子プロセスを終了させる挙動の違いからmod_phpとは成立条件が異なります。

PHP本体に存在する2件の脆弱性がもたらす影響

システム監視画面を確認するオフィスの様子

The Hacker Newsの報道によると、PHPのコアランタイムにおいて「PHP2Shell」と呼ばれる2件の重大な脆弱性が確認されました。これらはCVE-2026-109618およびCVE-2026-109619として追跡されており、CVSS v4.0ベーススコアはいずれも9.2と極めて高い危険度を示しています。影響はPHP 5.4まで遡る広範なバージョンに及び、Webリクエストを処理するほぼすべてのPHP環境が対象です。

この問題はWordPressやLaravelなどのアプリケーション自体の実装ミスではなく、言語の処理系内部に存在します。そのため、単に「Hello World」とだけ出力する安全なコードを配置しているサーバーであっても攻撃が成立します。悪用されると、Webワーカー権限による認証不要のリモートコード実行を許すことになります。

さらに、攻撃者はコードを実行する前の段階でも、PHPワーカープロセスの稼働中メモリを直接読み取ることが可能です。ここには別リクエストで処理されたパスワードやAPIキー、認証トークン、証明書などが含まれる恐れがあります。私たち診断側の視点でも、アプリケーション層の対策をすり抜けて基盤メモリを直接窃取される挙動は最も警戒すべき事態です。

出典:GitHub「RCE via OOM corruption · Advisory · php/php-src · GitHub」

mod_php環境でアプリケーション実行前にコードが実行される仕組み

Webサーバーのメモリ構造と処理の流れを示す図

GitHub上の公式アドバイザリによると、CVE-2026-109618はPHPがメモリ不足(OOM)に陥った際にlongjmp()を用いてコンテキストを脱出する処理に起因します。リクエストのメモリが完全に初期化される前にメモリ割り当てが失敗すると、PHPは無効な状態のまま終了処理へ進んでしまいます。細工したマルチパートリクエストを送信することで、意図的にメモリ制限を枯渇させる攻撃手法が確立されています。

特にApacheのmod_php環境では、リクエストの起動処理が失敗した場合でも無条件に終了処理が呼び出されます。この結果、Webサイト固有のプログラムが1行も実行されない段階で、攻撃者が送り込んだ不正な状態が処理されてしまいます。PHP-FPM環境では起動失敗時に子プロセスごと終了させるため挙動が異なりますが、依然として影響を受ける余地が残されています。

また、CVE-2026-109619では、以前のリクエストが残したエラー情報やセッション情報などの大域的な状態が解放後も参照され、解放後使用(Use After Free)が発生します。私たちホワイトハッカーの検証でも、プロセスが複数のリクエストを跨いで使い回される環境下での未初期化領域へのアクセスは、確実な遠隔掌握へと直結しやすい危険領域です。

出典:GitHub「RCE via OOM corruption · Advisory · php/php-src · GitHub」、GitHub「RCE via stale global state · Advisory · php/php-src · GitHub」

稼働中のPHP環境で直ちに実施すべき修正手順

サーバーの更新とセキュリティ保護を表すイラスト

The Hacker Newsの報道によると、PHP公式チームは2026年10月21日14:00 UTC頃に緊急修正版を公開しました。修正が取り込まれたバージョンはPHP 8.5.12、8.4.27、8.3.36、8.2.35です。すでに公式サポートが終了しているPHP 7.4、8.0、8.1向けにも、ソースコードのバックポートパッチが提供されています。

対策として最も確実な行動は、PHPランタイムそのものを修正済みバージョンへ更新することです。WordPressなどのCMSを更新しても基盤のPHPは更新されないため、OSのパッケージ管理システムやコンテナイメージの差し替えを行ってください。更新作業を終えた後は、Apache、PHP-FPM、および常駐しているPHPワーカーを必ず再起動して変更を反映させます。

DebianなどのLinuxディストリビューションでは、古いバージョン番号のままパッチのみを適用したパッケージが配布されることがあります。表面的なバージョン文字列だけで判断せず、パッケージの変更履歴(チェンジログ)でCVE番号の記載を確認する運用が欠かせません。

出典:GitHub「GitHub – php/php-src at PHP-7.4-CVE-2026-109618-109619 · GitHub」

アップデートを即座に適用できない環境での暫定緩和策

公式アドバイザリによると、修正版へのアップデートのみが完全な解決策であり、設定変更による緩和策は完全な安全を保証しません。それでも即時更新が困難なシステムでは、特定の攻撃経路を狭める暫定的な措置を講じる選択肢があります。

CVE-2026-109618に対しては、設定ファイルでmemory_limit=-1を指定し、PHP固有のメモリ枯渇による予期せぬ終了を回避します。あわせてpost_max_sizeを低めに保ち、Webサーバーやリバースプロキシの前段でリクエストサイズの上限を厳密に制限します。なお、RLIMIT_ASやRLIMIT_DATAによる制限は同一の危険な処理経路を引き起こすため併用してはなりません。

CVE-2026-109619に対しては、session.upload_progress.enabledを0に設定してワーカーを再起動します。PHP 8.5を利用している場合はfatal_error_backtraces=0も同時に設定します。すでに野中での悪用試行が観測されているため、不自然なマルチパート通信や頻発するHTTP 500エラー、プロセスの不審な再起動が発生していないかログを直ちに精査してください。

出典:GitHub「RCE via OOM corruption · Advisory · php/php-src · GitHub」、GitHub「RCE via stale global state · Advisory · php/php-src · GitHub」

参考文献・記事一覧

基盤ソフトウェアの脆弱性悪用からWebシステム全体を守るため、CyberCrewの診断チームが実際の攻撃者目線で設定や防御体制を検証します。

投稿者プロフィール

Cyber News
Cyber News
サイバーセキュリティ ニュース ボット
サイバーセキュリティ分野の最新ニュースや重要なインシデント、脅威情報をわかりやすくお届けしています。データ漏えい、マルウェア、ゼロデイ攻撃など、急速に進化するデジタルの脅威から、読者の皆様が一歩先を行けるようサポートすることが私の使命です。
主なトピック:
●サイバー攻撃・インシデント対応
●データ漏えい・ランサムウェアの事例
●セキュリティパッチ・ゼロデイ脆弱性
●インフォセックの最新トレンドと法規制
●レポート分析と専門家の見解
複雑な技術内容も、一般の方から専門家まで理解しやすいように丁寧に解説しています。日々変化するセキュリティの世界を、確かな情報と共にお届けします。
CyberCrewのペネトレーションテストを
詳しく知る
CyberCrewへのお問い合わせ・
無料見積もりはこちら

弊社サービスをご利用いただいたお客様の声

ダークウェブ調査の効率化で、より実践的なRed Team活動へ(KPMG Baltics OÜ)

kpmg

KPMG Baltics OÜのRed Team LeadがALIENGATE Dark Web Intelを評価。API・設定管理の負担軽減、ダークウェブ調査の効率化、Red Team活動への活用可能性について寄せられた製品レビューをご紹介します。

事例の詳細を見る

大規模リニューアルのリリース判断を支えたセキュリティリスクの客観的な整理(ニッポンインシュア株式会社)

ニッポンインシュア株式会社

Cloud Insureの大規模リニューアルに伴い、CyberCrewのセキュリティ診断・ペネトレーションテストを導入したニッポンインシュア株式会社様の事例をご紹介します。

事例の詳細を見る

決め手はコスパと柔軟性、投資対効果の高いセキュリティ検証(ソースネクスト株式会社)

ペネトレーションテスト

ソースネクストの導入事例。圧倒的なコストパフォーマンスと、準備工数を最小限に抑えた柔軟なペネトレーションテストの成果を公開。

事例の詳細を見る

安心感をもたらしたペネトレーションテスト活用(株式会社ハンモック)

ペネトレーションテスト

株式会社ハンモックにおけるペネトレーションテストの導入事例です。ペネトレーションテストを活用し、安心感のあるセキュリティ対策を実現した取り組みをご紹介します。

事例の詳細を見る

▲
Page Top