PHPの重大な脆弱性「php2shell」まとめ|CVE-2026-109618/109619の影響バージョン・修正版と今すぐやるべき対策【2026年10月】

2026年10月21日、PHPの開発チームは、PHP本体の重大な脆弱性2件(CVE-2026-109618、CVE-2026-109619、通称「php2shell」)を修正したPHP 8.5.12/8.4.27/8.3.36/8.2.35を公開しました。深刻度はいずれも9.2(緊急)で、認証なしで外部からサーバーを乗っ取られるおそれがあります。国内でも予防的なサービス停止が相次ぎました。
本記事では、脆弱性の内容、影響を受けるバージョンと修正版、自社サイトの確認方法、今すぐやるべき対策と暫定策を、公式発表と公的機関・セキュリティ企業の情報をもとに日本語でわかりやすくまとめます。
この記事でわかること
- php2shell(CVE-2026-109618/109619)の概要と深刻度
- 影響を受けるPHPのバージョンと修正版
- レンタルサーバー・自社サーバー・委託先別の確認方法
- 今すぐやるべき対策と、更新できない場合の暫定策
- 更新後に確認したい攻撃の兆候
この記事の結論
PHPの重大な脆弱性「php2shell」は、PHP 5.4以降のほぼすべてのバージョンに影響し、Webリクエストを処理するすべてのPHP環境(PHP-FPM、Apache mod_phpなど)が対象です。対策は、PHP 8.5.12/8.4.27/8.3.36/8.2.35(またはCVEが修正されたOSパッケージ)への更新と、PHPプロセスの再起動です。設定変更による暫定策は完全ではありません。WordPressなどのアプリを更新してもPHP本体は直らないため、レンタルサーバーや制作会社に任せている場合も、対応状況とバージョンを必ず確認しましょう。
目次
1.PHPの重大な脆弱性「php2shell」とは
「php2shell」は、2026年10月21日に修正版が公開された、PHP本体(処理系)の2件の脆弱性の通称です。WordPressやLaravelなどのアプリやプラグインではなく、その下で動くPHPそのものに問題があるため、自社で書いたコードに問題がなくても影響を受けます。
| 通称 | php2shell(PHP2Shell) |
|---|---|
| CVE番号 | CVE-2026-109618/CVE-2026-109619 |
| 深刻度 | いずれもCVSS v4.0で9.2(Critical/緊急) |
| 影響 | 認証なしで、外部からサーバー上の任意のコードを実行される(リモートコード実行) |
| 対象 | Webリクエストを処理するすべてのPHP環境(PHP-FPM、Apache mod_php、php-cgi、FrankenPHP、LiteSpeedなど) |
| 修正版 | PHP 8.5.12/8.4.27/8.3.36/8.2.35 |
| 公開日 | 2026年10月21日(日本時間22時40分頃) |
| 発見者 | Wiz Research、Calif、OpenAIのCodex Securityチーム |
W3Techsの調査では、サーバー側の言語が判明しているWebサイトの約7割がPHPを使っています(2026年8月時点で70.5%)。企業のコーポレートサイト、ECサイト、予約・会員サイト、WordPressのブログなど、影響を受けうるサイトが非常に多いのが今回の特徴です。
1 - 1.2件の脆弱性の中身
| CVE | 内容 | 深刻度 |
|---|---|---|
| CVE-2026-109618 | メモリ不足(OOM)時の処理で、初期化が途中のデータが後始末の処理に使われ、メモリが破壊される。フォームやファイルアップロードに使うmultipartリクエストで引き起こせる | 9.2 |
| CVE-2026-109619 | 前のリクエストで解放されたメモリを指す内部状態が残り、同じワーカーが処理する次のリクエストがそれを使ってしまう(Use After Free)。初期設定で有効な「セッションアップロード進捗」機能が攻撃経路になる | 9.2 |
PHP開発チームの公式アドバイザリによると、研究段階でApache mod_phpとPHP-FPMの両方でリモートコード実行に成功しています。特にmod_phpは、アプリのコードが動く前に1回の認証なしリクエストで攻撃が成立するため、最も危険とされています。
また報道によると、コード実行に至らなくても、PHPワーカーのメモリ上にある他のリクエストのパスワード、認証トークン、APIキーなどを読み取られるおそれがあります。
1 - 2.公開までの経緯(時系列)
| 日時(日本時間) | 出来事 |
|---|---|
| 10月21日 未明 | 海外の掲示板に、PHPのリモートコード実行の脆弱性2件が近く公表されるとの投稿。情報が事前に漏れる |
| 10月21日 朝(現地時間20日) | PHPセキュリティチームが、10月21日23時(日本時間)に緊急のセキュリティリリースを出すと予告 |
| 10月21日 日中 | IPA(情報処理推進機構)が事前準備を呼びかけ。国内で予防的なサービス停止・緊急メンテナンスが相次ぐ |
| 10月21日 22時40分頃 | PHP 8.5.12/8.4.27/8.3.36/8.2.35を公開。「すべてのPHPユーザーは直ちに更新を」と案内 |
| 10月21日 深夜 | セキュリティ企業が、両脆弱性を狙う攻撃の試み(スキャンや攻撃通信)を観測と報告 |
もともと10月22日に公表予定だったところ、情報の漏えいを受けて前倒しで公開されました。公開直後から攻撃の試みが報告されており、「パッチを当てるまでの時間」がそのままリスクになる状況です(2026年10月22日時点で、特定のサーバーへの侵入が確認されたという報告はありません)。
2.影響を受けるバージョンと修正版
| PHPのバージョン | 影響 | 対応 |
|---|---|---|
| 8.5系 | 8.5.12より前 | 8.5.12に更新 |
| 8.4系 | 8.4.27より前 | 8.4.27に更新 |
| 8.3系 | 8.3.36より前 | 8.3.36に更新 |
| 8.2系 | 8.2.35より前 | 8.2.35に更新(8.2系のサポートは2026年12月31日で終了) |
| 8.1系・8.0系・7.4系 | 影響あり | 公式の通常更新は終了。開発チームが最小限の修正ソースを公開。サポート中のバージョンへの移行を推奨 |
| 7.3系以前・5.x系 | 影響ありと考えるべき | 修正は提供されない。早急にサポート中のバージョンへ移行 |
「バージョン番号」だけで判断しない
UbuntuやRed Hat系などのLinuxディストリビューションや長期サポートを提供するベンダーには、事前に修正が渡されています。そのため、バージョン番号が古く見えても修正済みの場合や、その逆の場合があります。OSのパッケージを使っている場合は、パッケージの更新履歴(changelog)にCVE-2026-109618/109619が含まれているかで確認しましょう。
3.自社サイトが影響を受けるか確認する方法
まずは、自社が運営・委託しているWebサイトやシステムのうち、PHPを使っているものを洗い出します。使い方によって、確認する人と方法が異なります。
| 使い方 | 誰が更新するか | 確認すること |
|---|---|---|
| レンタルサーバー(エックスサーバー、さくらのレンタルサーバ、ロリポップなど) | サーバー会社 | 各社のお知らせで対応完了を確認。管理画面でドメインごとに選んでいるPHPのバージョンを確認し、8.1以前なら8.3以降へ切り替え |
| VPS・クラウド・自社サーバー | 自社(または保守会社) | php -vでバージョンを確認し、OSのパッケージまたは修正版に更新。Apache・PHP-FPMを再起動 |
| 制作会社・保守会社に運用を委託 | 委託先 | 委託先に「PHPの更新は済んだか」「どのバージョンか」を必ず問い合わせる |
| SaaS・クラウドサービス | サービス提供元 | 提供元のお知らせを確認。個別の作業は通常不要 |
| 業務システム・ネットワーク機器などの製品 | 製品の開発元 | 製品のマニュアルや開発元のセキュリティ情報を確認 |
WordPressやLaravelなどのアプリ本体・プラグインを更新しても、PHP本体は更新されません。PHP本体はサーバー(OSのパッケージ、ホスティング会社、コンテナイメージ)側で更新する必要があります。
なお、phpinfo()を表示するファイルでバージョンを確認した場合は、確認後に必ず削除してください。サーバーの情報を外部に知られる原因になります。
4.今すぐやるべき対策チェックリスト
- PHPを使っているサイト・システムを洗い出す(サブドメインのキャンペーンサイトや、更新が止まった古いサイトも含める)
- 修正版に更新する(8.5.12/8.4.27/8.3.36/8.2.35、またはCVEが修正されたOSパッケージ)
- Apache・PHP-FPMなど、PHPを動かしているプロセスをすべて再起動する(再起動しないと古いPHPが動き続ける)
- 8.1以前を使っている場合は、サポート中のバージョンへの移行を計画する
- 更新できるまでの間、サイトを一時停止するか、暫定策を入れる
- 更新後、攻撃を受けた形跡がないかログを確認する
- 委託先・ホスティング会社の対応状況を記録しておく
IPAも、PHPを使っているプログラムの棚卸しと、修正版を速やかに適用できる体制づくりを呼びかけています。サポートが終了した古いPHPを使い続けているサイトも見受けられるとして、注意を促しています。
4 - 1.すぐに更新できない場合の暫定策
暫定策は「完全な対策」ではありません
PHP開発チームは「完全な緩和策はなく、更新が唯一の安全な選択肢」としています。以下は特定の攻撃経路を減らすための一時しのぎです。
| 設定 | 効果と注意点 |
|---|---|
session.upload_progress.enabled=0 | CVE-2026-109619の確認済みの攻撃経路をふさぐ。php.iniやサーバー設定で指定し、全ワーカーを再起動する(アプリ内のini_set()や.user.iniでは間に合わない) |
memory_limit=-1 | CVE-2026-109618の確認済みの攻撃経路を減らす。アプリから上書きできない形で設定する。メモリ上限がなくなるため、下記のリクエストサイズ制限とセットで使う |
post_max_size | アップロード不要なら8M、必要なら32M程度に抑える(開発チームの推奨値) |
fatal_error_backtraces=0 | PHP 8.5のみ。確認済みの攻撃経路の1つをふさぐ |
| multipartリクエストの遮断 | フォームやファイルアップロードを使わないサイトなら、Webサーバーやプロキシで遮断する |
CloudflareなどのWAF(Webアプリケーションファイアウォール)事業者も防御ルールを公開していますが、攻撃者が回避を試みていると報告されており、あくまで更新までのつなぎです。対応が終わるまでサイトを一時停止するのも有効な選択肢です。
4 - 2.更新後に確認したいこと(攻撃の兆候)
すでに攻撃を受けていないか不安な場合は、発見者の研究チームが挙げている次のような兆候がないか、ログを確認しましょう。
- 不審なmultipartリクエストのあとに、メモリ上限エラーやHTTP 500エラーが続いている
- レスポンスのPHPSESSID(セッションのCookie)が異常に大きい
- PHPワーカーの説明のつかない再起動がある
ただし、ログに記録が残っていないことは安全の証明にはなりません。侵害が疑われる場合は、サーバー内のファイルの改ざん確認、パスワードやAPIキーの変更、クラウドの権限(IAMロールなど)の確認も行いましょう。
また修正版では新たにメモリの上限が追加されています。上限に達するとプロセスが終了するため、memory_limitやpost_max_sizeがアプリに合っているかも見直してください。
5.国内の影響|予防的なサービス停止が相次ぐ
修正版の公開を前に、国内では多くの企業・団体が予防的にWebサービスやサイトを一時停止しました。報道によると、保育園向けサービスのコドモン、ネットショップ作成のBASE、Cygames、pixiv、金融機関や鉄道会社などが公式サイトやサービスを止め、さくらインターネット、エックスサーバー、GMOペパボなどのレンタルサーバー各社も緊急メンテナンスを実施しました。
国家サイバー統括室も公式Xで、公開しているWebサイトでのPHPの使用有無の確認と、修正版を速やかに適用できる準備を呼びかけました。首相が公式Xでパッチ適用を呼びかけたことも報じられています。
大企業だけでなく、自社サイトをPHPで運営している中小企業や個人事業主も対象です。「うちは制作会社に任せているから大丈夫」と考えず、委託先に対応状況を確認しましょう。
6.ビズリサーチ掲載|Webサイトとセキュリティの見直しに役立つ商材
今回の件で、「自社サイトのPHPのバージョンを誰も把握していなかった」「更新されていない古いサイトが残っていた」という企業も多かったはずです。事業者向けの代理店・フランチャイズ募集サイト「ビズリサーチ」には、Webサイトやセキュリティの見直しにつながる商材が掲載されています。
※いずれもPHPの脆弱性そのものを修正するものではありません。PHPの更新を済ませたうえで、再発防止や周辺の対策として検討してください。
6 - 1.BARIUS|Norton連携の統合型セキュリティサポート
世界的なセキュリティブランド「Norton」との提携で生まれた、セキュリティとライフサポートを組み合わせたサービスです。Norton製品による通信・端末の保護、個人情報流出への対策、24時間の駆け付けサポートなどをまとめて提供します。
代理店は初期費用・加盟金・保証金が不要で、成約ごとに成果報酬が支払われます。Web制作会社やIT企業が、今回の件で顧客のセキュリティ意識が高まったタイミングに追加提案しやすい商材です。
6 - 2.ホームページLite|古いサイトを作り直すなら
サポートが終了した古いPHPで動いているサイトは、PHPを最新にするとサイトが動かなくなることがあります。更新が難しい古いサイトは、作り直しも選択肢です。「ホームページLite」は、スマホにも対応した完全オリジナルのホームページを手頃な価格で制作するサービスで、紹介店を募集しています。
制作費(44万円)と販売価格の差額が紹介店の利益になる仕組みで、加盟金・保証金はかかりません(初期費用として与信調査費5万円)。
6 - 3.IT企業・Web制作会社は「保守・セキュリティ」を追加商材に
今回のように、顧客から「うちのサイトは大丈夫?」と問い合わせが集まるタイミングは、保守契約やセキュリティ商材を提案する好機でもあります。ビズリサーチでは、IT企業やWeb制作会社が既存の顧客に提案できる商材を多数掲載しています。
- 広告代理店・Web制作会社の追加商材5選|メディア広告・サジェスト対策・セキュリティ・営業DX
- IT企業・SIerが扱える追加商材12選|既存顧客に提案できるSaaS・AI・通信の代理店募集
- 広告代理店・Web制作会社が付け加えやすい集客商材14選
また、セキュリティ診断やサーバー保守などのサービスを提供している企業は、ビズリサーチに代理店募集を掲載して販売パートナーを集めることもできます。詳しくは代理店募集の掲載・広告の始め方をご覧ください。
7.まとめ|PHPは「更新」が唯一の対策。委託先任せにせず確認を
2026年10月21日に公表されたPHPの脆弱性「php2shell」(CVE-2026-109618/109619)は、認証なしでサーバーを乗っ取られるおそれがある深刻なものです。PHP 5.4以降のほぼすべてのバージョンが影響を受け、公開直後から攻撃の試みが報告されています。
PHP 8.5.12/8.4.27/8.3.36/8.2.35(またはCVEが修正されたOSパッケージ)への更新と、PHPプロセスの再起動を最優先で行いましょう。設定変更による暫定策は完全ではありません。レンタルサーバーや制作会社に任せている場合も、対応状況とPHPのバージョンを必ず確認してください。8.1以前を使っているサイトは、これを機にサポート中のバージョンへの移行やサイトの作り直しを検討しましょう。
■ 参考資料・出典
- The PHP Group「PHP 8.5.12, 8.4.27, 8.3.36, 8.2.35 Released」(2026年10月21日)
- PHP公式セキュリティアドバイザリ(CVE-2026-109618)
- PHP公式セキュリティアドバイザリ(CVE-2026-109619)
- IPA「【事前準備のお願い】PHPのセキュリティリリース公開予定について」(2026年10月21日)
- ITmedia NEWS「PHPの「緊急」レベルの脆弱性、開発元が修正バージョン公開」(2026年10月22日)
- Rapid7「CVE-2026-109618 and CVE-2026-109619」(2026年10月21日)
- The Hacker News「PHP Issues Emergency Patches for Two Critical PHP2Shell RCE Flaws」(2026年10月21日)
- GMO Flatt Security「PHPの重大な脆弱性「php2shell」の概要と対応指針」
- piyolog「修正予告されたPHPの2件の深刻な脆弱性についてまとめてみた」
- W3Techs「Usage statistics of PHP for websites」
8 - 1.php2shellとは何ですか?
2026年10月21日に修正版が公開された、PHP本体の2件の脆弱性(CVE-2026-109618、CVE-2026-109619)の通称です。いずれもCVSS v4.0で9.2の緊急レベルで、認証なしで外部からサーバー上の任意のコードを実行されるおそれがあります。
8 - 2.影響を受けるPHPのバージョンは?
PHP 8.5.12、8.4.27、8.3.36、8.2.35より前のバージョンが影響を受けます。PHP 8.1以前も影響を受け、報道ではPHP 5.4以降のほぼすべてのバージョンが対象とされています。
8 - 3.WordPressを更新すれば大丈夫ですか?
いいえ。WordPressやプラグインを更新しても、PHP本体は更新されません。PHP本体はサーバー側(OSのパッケージ、レンタルサーバー会社、コンテナイメージ)で修正版に更新する必要があります。
8 - 4.レンタルサーバーを使っている場合は何をすればいいですか?
PHP本体の更新はサーバー会社が行います。各社のお知らせで対応完了を確認し、管理画面でドメインごとに選んでいるPHPのバージョンを確認しましょう。PHP 8.1以前を選んでいる場合は、サポート中のバージョンへの切り替えを検討してください。

