PHP2Shell:ネットショップ運営者がいますぐやること

2026年10月21日、PHP プロジェクトは、ログインなしでウェブサーバー上でコードを実行されるおそれがある2件の重大な脆弱性 CVE-2026-109618 と CVE-2026-109619(通称 PHP2Shell)を修正しました。WooCommerce、Magento、PrestaShop、OpenCart など PHP で動く自社運営のショップは、PHP 8.5.12、8.4.27、8.3.36、8.2.35、またはホスティング会社の修正済みパッケージに更新する必要があります。米国 CISA は2026年10月26日、両方を悪用が確認された脆弱性のカタログに追加しました。

今日やること#

  1. ショップの PHP バージョンを確認する

    レンタルサーバーの管理画面を確認します。WordPress なら「ツール」→「サイトヘルス」→「情報」→「サーバー」で確認できます。バージョンと、PHP をホスティング会社が管理しているかどうかを控えておきます。

  2. PHP を更新する、またはホスティング会社に修正済みか確認する

    PHP 8.5.12、8.4.27、8.3.36、8.2.35 に更新します。または、2026年10月21日の CVE-2026-109618 と CVE-2026-109619 の修正がサーバーに適用済みか、ホスティング会社に書面で問い合わせます。

  3. 作業の前後にバックアップを取る

    ファイルとデータベースの完全なバックアップをダウンロードし、サーバー以外の場所にも保管します。問題が見つかったときに、きれいな状態へ戻せるようにするためです。

  4. ショップ本体とすべてのプラグインを更新する

    WordPress、WooCommerce やショップシステム、テーマ、すべてのプラグインやモジュールの更新を適用し、使っていないものは削除します。

  5. 管理者ユーザーを確認し、パスワードを変更する

    心当たりのない管理者アカウントを削除し、管理画面、サーバー、データベースのパスワードと、ショップに保存しているメール配信サービスのパスワードや API キーを変更します。

何が起きたのか#

PHP は、自社で運営する多くのネットショップが動いているプログラミング言語です。2026年10月21日、PHP プロジェクトは 8.5.12、8.4.27、8.3.36、8.2.35 をリリースし、2件の重大な脆弱性 CVE-2026-109618 と CVE-2026-109619 を修正しました S1。セキュリティ研究者はこの2件を PHP2Shell と呼んでいます S5S6。深刻度はどちらも 10 点中 9.2 点です S5。日本では IPA も2026年10月22日に注意喚起を出しています S8。

問題は特定のプラグインではなく、PHP そのものにあります。PHP プロジェクトによると、ウェブのリクエストを処理するすべての PHP 環境が影響を受け、一部のサーバー構成では、ログインしていない第三者のリクエストによって、ショップのプログラムが動く前に攻撃が成立します S1。管理画面のログインやセキュリティプラグイン、強いパスワードだけでは防げません。PHP プロジェクトは、完全な回避策はなく、更新だけが安全な選択肢だとしています S1。

攻撃の試みは早い段階から始まっていました。Datadog によると、AWS は修正が公開される前の2026年10月17日には悪用の試みを観測していました S6。2026年10月26日、米国サイバーセキュリティ・インフラストラクチャセキュリティ庁(CISA)は、両方の CVE を「既知の悪用された脆弱性」カタログに追加しました。このカタログには、実際に悪用された証拠がある脆弱性が載ります S3S4。

別の脆弱性 CVE-2026-115560 が、2026年10月23日に PHP プロジェクトから公表されています。これは PHP2Shell には含まれず、10月21日のリリースでも修正されていません。特殊なセッション設定を組み合わせたアプリケーションだけが対象で、修正は次の定期リリースで予定されています。それまでは session.upload_progress.enabled = 0 の設定が推奨されています S2。この記事は2026年10月30日時点の情報です。

自分のショップは影響を受けるか#

自社でサーバーを用意してショップを運営しているなら、PHP で動いている可能性が高いです。WordPress は PHP のアプリケーションなので S7、WooCommerce のショップは PHP で動いています。Magento(Adobe Commerce)、PrestaShop、OpenCart、そして EC-CUBE も PHP 製です。ショップ自体は別の場所にあっても、WordPress で作ったブログやキャンペーンページも対象になります。

ショップの運営形態と PHP の更新担当
運営形態PHP を使うかPHP を更新するのは誰か
WordPress 上の WooCommerce使う契約プランによって、自分またはレンタルサーバー会社
自社サーバー上の Magento、EC-CUBE、PrestaShop、OpenCart使う自分、またはサーバーを管理する開発会社や制作会社
マネージド WordPress や EC 向けマネージドホスティング使う通常はホスティング会社。修正済みか確認する
Shopify のようなフルホスティング型のプラットフォーム自分では PHP を動かさないプラットフォーム側が自社のサーバーを管理する

PHP のバージョンは、レンタルサーバーの管理画面の「PHP 設定」や「PHP バージョン」のメニューで確認できます。WordPress なら「ツール」→「サイトヘルス」→「情報」タブを開き、「サーバー」を展開します。修正済みのバージョンは、各系列の 8.5.12、8.4.27、8.3.36、8.2.35 以降です S1。

バージョン番号だけでは判断できない場合もあります。Linux ディストリビューションやホスティング事業者は事前に修正を受け取っており、バージョン番号を変えずに自社パッケージへ修正を取り込むことがあります S1S6。わからないときは、CVE-2026-109618 と CVE-2026-109619 の修正がサーバーに含まれているか、ホスティング会社に直接確認してください。

PHP 8.1 以前を使っているショップは、より難しい状況にあります。PHP プロジェクトはこれらのバージョンをもう更新しておらず、一部のベンダーが修正を提供しているため、ベンダーへの確認かアップグレードを案内しています S1。IPA も、サポートが提供されている PHP への更新や、対策済みの製品・サービスへの移行の検討を呼びかけています S8。なお、PHP 8.2 は2026年12月31日にサポートが終了します S1。

今日やること#

上の番号付きリストは要点だけをまとめたものです。各手順をより安全に進めるための補足を書きます。

サーバーを自分で管理している場合

システムのパッケージや管理画面から PHP を更新し、PHP とウェブサーバーを再起動して、すべてのワーカーが修正済みのバージョンで動くようにします。CISA は、インターネットに公開しているシステムからすぐに修正を適用し、すぐに修正できない場合は一時的にシステムを停止するか、ウェブアプリケーションファイアウォール(WAF)を前に置くよう勧めています S3。PHP プロジェクトは一時的な設定もいくつか挙げていますが、それで安全になるわけではないと注意しています S1。

ホスティング会社や制作会社が管理している場合

短い問い合わせを書面で送ります。「2026年10月21日に公開された CVE-2026-109618 と CVE-2026-109619 の PHP の修正が、当社のサーバーに適用されているかご確認ください。あわせて、現在の PHP のバージョンまたはパッケージを教えてください。」返信は記録として保管しておきます。

作業の前にバックアップを取る

ファイルとデータベースの完全なバックアップを取り、サーバー以外の場所に保管します。修正前にすでに侵入されていた場合は、もっと前のきれいなバックアップから戻す必要があるかもしれないので、古いバックアップはまだ上書きしないでください。

プラグインの更新と管理者ユーザーの確認

PHP を更新すればこの穴はふさがりますが、ショップのほかの部分も手入れが必要です。WordPress、WooCommerce やショップシステム、テーマ、すべてのプラグインを更新します。ユーザー一覧で、自分が作っていない管理者アカウントがないか確認します。そのうえでパスワードを変更し、決済、配送、メール配信サービスなど、ショップに保存している API キーや SMTP のパスワードを再発行します。サーバーに入り込んだ人がいれば、それらを読めた可能性があるためです。

顧客リストとメール送信の信頼性を守る#

ショップのデータベースには注文以外の情報も入っています。多くの場合、顧客の氏名、メールアドレス、配送先住所、購入履歴、そしてメルマガの購読者リストです。サーバー上でコードを実行できる攻撃者は、このデータベースを読めることが多く、サーバーを使ってあなたの名前でメールを送ることもできます。

異常のサイン

  • 送った覚えのないメールへのエラー通知や返信が届く。
  • ホスティング会社から、迷惑メールの送信やサーバー負荷の異常について連絡がある。
  • 追加した覚えのない管理者アカウント、プラグイン、ファイルがある。または決済ページが書き換えられている。
  • DMARC レポートに、使っていないサーバーがあなたのドメインで送信した記録がある。
  • 迷惑メール報告が急に増える。またはドメインやサーバーの IP アドレスがブラックリストに載る。

ドメインの送信者レピュテーションは時間をかけて積み上がりますが、あなたの名前で迷惑メールが送られると短期間で下がることがあります。SPF、DKIM、DMARC のレコードは、どのサーバーがあなたのドメインで送信してよいかを受信側に伝え、DMARC レポートでなりすましの試みが見えるようになります。各レコードの役割は SPF・DKIM・DMARC の解説、レポートの読み方は DMARC 設定ガイドにまとめています。ショップのサーバーからメルマガを送っていないなら、そのサーバーを SPF レコードに含めないことで、侵入されたサーバーがあなたのドメインでできることを減らせます。

顧客データが漏れたおそれがある場合

情報漏えい後の法的な義務は国によって異なります。多くの個人情報保護法は、規制当局、影響を受けた顧客、またはその両方への報告を一定期間内に求めています。顧客に連絡する前に、販売している各市場のルールを確認するか、弁護士に相談してください。メールマーケティングの法規制ガイドでは市場ごとの同意のルールをまとめていますが、漏えい時の報告ルールはそれとは別で、各国の法律によります。

顧客への連絡は、わかりやすく書きます。何が起きたか、どの情報が関係するか、何をしたか、顧客は何に注意すべきか。その後にショップを装ったフィッシングメールが届くことがよくあるので、パスワードやカード番号をメールで尋ねることはないと伝えてください。Ninefold のようなアパレルブランドなら、この連絡はいつもの送信元アドレスから、割引などを付けずに送り、宣伝メールに見えないようにします。

次に備えて、狙われる部分を減らす#

緊急の更新は PHP2Shell で終わりではありません。最新の状態を保ちやすいショップほど、守りやすくなります。

  • プラグインを減らす。プラグインやモジュールは、どれもサーバー上で動き、更新が必要なコードです。使っていないものは削除し、可能なら複数の小さなプラグインを、よく保守されている1つにまとめます。
  • サポート中の PHP を使う。2026年12月31日の PHP 8.2 のサポート終了までに移行を計画し、それより古いバージョンはいますぐ移行します S1。
  • マネージドホスティングや外部サービスを使う。マネージドホスティングや、決済、検索、メール配信などのホスティング型サービスを使えば、修正の作業をそれを専門とする事業者に任せられます。今回どれくらいの速さで対応したか聞いてみてください。
  • 自動更新とサーバー外のバックアップ。プラットフォームが対応していればマイナーアップデートの自動適用を有効にし、定期的なバックアップをサーバー以外の場所に保管します。
  • 担当者を決める。自分、開発者、ホスティング会社のうち、誰がショップのセキュリティ情報を確認するかを決めておきます。

Tellnod の位置づけ#

Tellnod は、Claude や ChatGPT からマーケティングメールを作成、プレビュー、送信するための MCP コネクタです。ショップのサーバーではなく、Tellnod 自身のインフラ上で動くホスティング型のサービスなので、メルマガ用のプラグインの代わりに使えば、サーバー上で更新が必要なプラグインが1つ減り、ショップのデータベースに保存する送信用の認証情報も1つ減ります。

サーバー上にあるものは減りますが、それでショップが安全になるわけではありません。PHP とショップシステムの更新は引き続き必要です。また、顧客リストは Tellnod にも保存されることになるので、どの事業者に対しても、データをどう守っているかを確認するのは当然のことです。Tellnod の送信とデータの扱いはセキュリティのページで説明しています。試すには、Tellnod を Claude または ChatGPT に接続してください。承認カードで Confirm を押すまで、何も送信されません。

よくある質問#

PHP2Shell とは何ですか?

PHP2Shell は、CVE-2026-109618 と CVE-2026-109619 の通称です。ログインなしでウェブサーバー上のコードを実行されるおそれがある PHP の重大な脆弱性で、PHP プロジェクトが2026年10月21日に修正しました S1S6。

WooCommerce のショップは影響を受けますか?

WooCommerce は PHP のアプリケーションである WordPress 上で動くため S7、サーバーがすでに PHP 8.5.12、8.4.27、8.3.36、8.2.35、またはホスティング会社の修正済みパッケージでない限り対象です S1。わからない場合はホスティング会社に確認してください。

Shopify のショップは影響を受けますか?

Shopify のようなフルホスティング型のプラットフォームでは、自分のサーバーで PHP を動かしていないので、自分で更新する PHP はありません。ただし、WordPress のブログなど、別に自分で運営しているサイトは確認が必要です。

セキュリティプラグインやファイアウォールで十分ですか?

十分ではありません。攻撃はショップのプログラムやプラグインが動く前に始まることがあり、PHP プロジェクトは更新だけが安全な選択肢だとしています S1。CISA もウェブアプリケーションファイアウォールを、修正を適用するまでの一時的な対策としています S3。

10月21日の更新で CVE-2026-115560 も修正されますか?

修正されません。CVE-2026-115560 は2026年10月23日に公表された別の問題で、修正は次の定期リリースで予定されています。それまで PHP プロジェクトは session.upload_progress.enabled = 0 の設定を推奨しています S2。

出典#

  1. [S1] PHP: Security advisory: critical remote code execution vulnerabilities, update now, 確認日
  2. [S2] PHP: Informational advisory: session upload progress, 確認日
  3. [S3] CISA: Critical vulnerabilities in PHP require immediate patching, 確認日
  4. [S4] CISA: Known Exploited Vulnerabilities catalog, 確認日
  5. [S5] Rapid7: CVE-2026-109618 and CVE-2026-109619, critical unauthenticated remote code execution in PHP, 確認日
  6. [S6] Datadog Security Labs: PHP2Shell, critical vulnerabilities in PHP, 確認日
  7. [S7] WordPress.org: Requirements, 確認日
  8. [S8] IPA: PHPの脆弱性対策について(CVE-2026-109618、CVE-2026-109619:PHP2shell), 確認日