【重要】PHPにおける複数の脆弱性に関する注意喚起【10月29日更新】
(2026年10月29日更新)
I. 概要
The PHP Groupは、2026年10月21日にPHPにおける複数の脆弱性(CVE-2026-109618、CVE-2026-109619)に関するアドバイザリを公表しました。本脆弱性が悪用された場合、PHPの実行プロセスの権限で任意のコードを実行される可能性があります。
修正済みバージョンでは、認証されていない第三者によるリモートコード実行(RCE)を可能にする2件の重大な脆弱性が修正されています。影響を受けるPHPを利用している場合は、開発者や利用製品の提供元が公開する情報を確認し、速やかに対策を適用するとともに、侵害の有無を調査してください。
The PHP Group
Security advisory: Critical remote code execution vulnerabilities, update now
https://www.php.net/archive/2026.php#2026-10-21-5
JPCERT/CCでは、当該製品が国内で広く利用されていることを確認しています。本脆弱性の影響を受ける製品を利用している場合は、開発者が提供する情報などを参考に、速やかに対策の適用および侵害有無の調査を実施してください。
2026年10月29日 追記
2026年10月29日までに、本脆弱性を悪用した攻撃活動の調査で、あるファイアウォール製品の特定バージョンに対する侵害の成功を示唆する痕跡を確認したと報告されています。報告によると、攻撃者が対象製品を解析してバージョン別に本脆弱性とLinuxカーネルの権限昇格の脆弱性を組み合わせたエクスプロイトコードを開発していたとのことです。また、侵害した機器を足掛かりとして、内部ネットワークへの横展開が試みられたことを示唆する痕跡も確認されたとしています。
Dream
Chained PHP2Shell Exploit Roots 25 Servers, including US Government Servers
https://dreamgroup.com/blog/chained-php2shell-exploit-roots-25-servers
また、一部の製品ベンダーも、本脆弱性を悪用する攻撃を観測したとして、セキュリティアドバイザリを更新しています。今後も、PHPを組み込んださまざまな製品を標的とする実証コードの開発や、本脆弱性を悪用した攻撃が拡大する可能性があります。PHPを組み込んだ製品の管理者は、使用している製品が本脆弱性の影響を受けるか、当該製品を標的とする攻撃や侵害事例が報告されていないかを確認し、必要な対策および侵害調査を速やかに実施することを推奨します。
2026年10月26日 追記
本脆弱性を悪用できると主張する実証コードが多数公開されているほか、本脆弱性の悪用を試みる通信を観測したとの報告も相次いでいます。一方、実証コードを用いて実際に任意のコードを実行できるかどうかは、PHPのバージョンや実行環境、メモリ配置などの条件に依存し、環境に応じた調整が必要となります。今後も実証コードや新たな攻撃手法の公開、特定の環境を標的とした攻撃の開発が進む可能性があるため、関連情報に注視の上、修正済みバージョンへの更新および侵害有無の調査を実施することを推奨します。
また、The PHP Groupは、2026年10月23日に特定の設定とアプリケーションコードの組み合わせの下で発生する脆弱性(CVE-2026-115560)を公表しました。本脆弱性が悪用された場合、任意のコードを実行される可能性があります。ただし、開発者は、影響を受ける構成が一般的ではないことから、通常のリリースサイクルで修正する方針を示しており、修正済みバージョンが提供されるまで「IV. 緩和策」に示す設定への変更を推奨しています。
The PHP Group
Informational advisory: Session upload progress
https://www.php.net/archive/2026.php#2026-10-23-1
II. 対象
対象となる製品およびバージョンは次のとおりです。
- PHP 8.5.12より前のPHP 8.5系バージョン
- PHP 8.4.27より前のPHP 8.4系バージョン
- PHP 8.3.36より前のPHP 8.3系バージョン
- PHP 8.2.35より前のPHP 8.2系バージョン
PHP 8.1以前のバージョンは、アップデートバージョンが提供されないため、サポートされているバージョンへのアップグレードが推奨されています。ただし、開発者は脆弱性の深刻さを考慮し、PHP 7.4、PHP 8.0、PHP 8.1のEOLバージョンに対する最小限の緩和策も提供しています。詳細は開発者が提供する最新の情報を確認してください。
PHPを使用する製品やLinuxディストリビューションが提供するPHPも、本脆弱性の影響を受ける可能性があります。利用している製品やOSの提供元が公開する情報もあわせて確認してください。
III. 対策
The PHP Groupは、影響を受ける利用者に対し、修正済みバージョンを可能な限り速やかに適用するよう強く推奨しています。十分なテストを実施した上で、次のいずれかの修正版、または利用しているディストリビューション/ベンダーが提供する修正済みパッケージを適用してください。
- PHP 8.5.12
- PHP 8.4.27
- PHP 8.3.36
- PHP 8.2.35
PHP 8.1以前を利用している場合は、サポート対象バージョンへのアップグレードを検討してください。一部のディストリビューションやLTSベンダーでは、既存バージョンに修正をバックポートして提供している場合があります。利用しているベンダーに確認し、最新の情報に従ってください。
PHPのダウンロードページおよびセキュリティアドバイザリを確認し、適切な更新方法を選択してください。
IV. 緩和策
直ちにアップデートできない場合、The PHP Groupが案内する以下の緩和策によって、特定の攻撃経路に対するリスクを軽減できます。ただし、これらは脆弱性を完全に解消するものではなく、アップデートのみが本脆弱性に対する根本的な対策です。設定変更はサーバー構成やアプリケーションへの影響を確認した上で、管理者またはサーバー提供元が実施してください。
脆弱性1:メモリ不足(OOM)によるデータ破損を悪用したRCE(CVE-2026-109618)
-
memory_limit=-1 を設定する。可能であれば、アプリケーション側から上書きできない方法(例:FPMのプール設定やApache設定での
php_admin_value)を使用してください。プール、ディレクトリ、アプリケーション単位で有限のメモリ制限が再設定されていないことも確認してください。この設定はPHPで設定されたメモリ上限への到達を原因とする経路を排除しますが、実際のメモリ確保失敗など別の要因によるメモリ不足には効果が及ばない可能性があります。 -
post_max_size を低く設定する。ファイルアップロードを必要としないアプリケーションでは
8M、必要とするアプリケーションでは32Mを目安とし、upload_max_filesizeはpost_max_sizeより小さい値にしてください。 -
Webサーバーやプロキシで、デコード後のリクエストサイズ、入力フィールド数、マルチパートリクエストのパート数、ヘッダー数、データのネストの深さを制限してください。有効な
Content-Lengthヘッダーがないリクエストにも制限を適用する必要があります。 -
コンテナまたはcgroupによるリソース制限を、サービスの可用性を守るための境界として利用してください。可能であれば、影響を受けたワーカーだけを終了させるポリシーを採用してください。
RLIMIT_ASやRLIMIT_DATAを代替策として使用しないでください。
脆弱性2:古いグローバル状態を悪用したRCE(CVE-2026-109619)
-
session.upload_progress.enabled=0 を設定して、セッションのアップロード進捗追跡機能を無効にし、その後すべてのワーカーを再起動してください。設定はリクエスト解析の開始前に適用する必要があるため、
php.ini、FPMのプール設定、またはサーバー設定を使用してください。ini_set()やFPMの.user.iniに依存しないでください。この設定は確認されているセッション関連の攻撃経路を遮断しますが、他の攻撃経路をすべて遮断するものではありません。 - PHP 8.5を利用している場合は、fatal_error_backtraces=0 を設定し、すべてのワーカーを再起動してください。これは致命的エラーのバックトレースに関連する攻撃経路への対策であり、他の攻撃経路を遮断するものではありません。
-
リクエストごとに適用され、初期化前に診断メッセージを発生させる不正または非推奨の設定を取り除いてください。
error_reporting、display_errors、またはエラー抑制演算子@で診断メッセージを非表示にしても対策にはなりません。 - 攻撃者が引き起こせる致命的エラーや実行タイムアウトを修正してください。対象には、コールバック処理、ファイルアップロード処理、インポート処理、クリーンアップ処理などが含まれます。
2026年10月26日 追記
The PHP Groupは、CVE-2026-115560へのアップデートリリースまで、次の緩和策の設定を推奨しています。
- session.upload_progress.enabled=0 に設定し、すべてのワーカーを再起動してください。
なお、本設定はCVE-2026-109619に対する緩和策としても案内されており、すでに適用している場合は追加の対応は不要とされています。
V. 侵害調査
本脆弱性を悪用した攻撃を受けた可能性がないか、次の点を確認してください。
- 過去のHTTPレスポンスで、不自然に長い、または異常な形式の値を含む
PHPSESSIDCookieが設定されていないか。 - 不審な
multipart/form-data形式のHTTPリクエストが送信されていないか。また、その前後にPHPのメモリ上限に関連するエラーやHTTP 500エラーが発生していないか。 - PHPのワーカープロセスが予期せず異常終了したり、頻繁に再起動したりした痕跡がないか。
本脆弱性には複数の悪用経路があるため、単一の検知ルールですべての攻撃を検出できるとは限りません。また、攻撃手法やログの記録状況によっては痕跡が残らない場合があります。上記の痕跡が確認されない場合でも、攻撃を受けていないと断定することはできません。
修正済みバージョンへの更新を速やかに実施するとともに、不審なプロセスの実行や外部通信、不審なファイルの作成など、侵害を示す他の痕跡も確認し、継続的に監視してください。侵害が疑われる場合は、関連ログなどの証拠を保全した上で、影響範囲の調査や当該システムの隔離など、必要な対応を実施してください。
PHP2Shell
https://www.php2shell.com/
Wiz
PHP2Shell: AI uncovers critical RCE vulnerabilities affecting 70% of the Internet
https://www.wiz.io/blog/php2shell-php-rce
VI. 参考情報
JPCERT/CC
PHPにおける複数の脆弱性(CVE-2026-109618、CVE-2026-109619)に関する注意喚起
https://www.jpcert.or.jp/at/2026/at260033.html
GitHub php / php-src
RCE via OOM corruption
https://github.com/php/php-src/security/advisories/GHSA-w8hw-w9fx-j79w
GitHub php / php-src
RCE via stale global state
https://github.com/php/php-src/security/advisories/GHSA-6wmf-4rv5-p3rp
The PHP Group
Informational advisory: Session upload progress
https://www.php.net/archive/2026.php#2026-10-23-1
2026年10月29日 追記
GitHub NCSC-NL / php2shell
php2shell vulnerabilities (CVE-2026-109618, CVE-2026-109619)
https://github.com/NCSC-NL/php2shell
※ オランダの国家サイバーセキュリティセンター(NCSC-NL)が公開する、本脆弱性の影響を受ける可能性がある製品の一覧や対策情報などをまとめたリポジトリー