PHP2Shellは、PHPサーバーにおけるリモートコード実行のリスクに関する、近年注目を集めているセキュリティトピックです。主に、攻撃者が脆弱なPHPランタイム環境または関連するアプリケーションコンポーネントを悪用し、認可なくサーバーサイドのコードを実行することを指します。PHPは、Webサイト、コンテンツ管理システム、各種バックエンドサービスで広く使用されています。そのため、関連する脆弱性がインターネットに公開されたサービスに影響を与える場合、ユーザーデータ、本人認証、業務システムのセキュリティもさらに脅かされる可能性があります。
暗号資産業界において、PHP脆弱性のリスクは従来型のWebサイトに限定されません。暗号資産取引プラットフォーム、プロジェクトのWebサイト、ウォレット関連サービス、Web3アプリケーションも、アカウント管理、市場データ、取引機能を提供するために、サーバー、データベース、APIに依存しています。これらのシステムに重大なセキュリティ上の欠陥がある場合、攻撃者はWebサービスへの侵入を通じて機密性の高い認証情報にアクセスしたり、ユーザー操作を操作したりする可能性があり、セキュリティインシデントの影響範囲が拡大するおそれがあります。
ただし、サーバーのセキュリティリスクとブロックチェーンプロトコルのセキュリティは同一ではありません。PHPの脆弱性によってウォレットの秘密鍵が自動的に解読されるわけではなく、サーバーが侵害されたことだけでユーザー資産が盗まれたと判断することもできません。本記事では、PHP2Shellの基本概念から始め、リモートコード実行の技術的原理、脆弱性が暗号資産アカウントに影響を与える可能性のある経路、およびプラットフォーム、開発者、一般ユーザーがより効果的なセキュリティ対策を構築する方法について解説します。
PHP2Shellは、PHPのリモートコード実行に関するセキュリティリスクと関連する、近年注目されている名称です。中核となる問題は、攻撃者が脆弱なサーバーサイド環境を通じて認可されていないコードを実行できる可能性があることです。
リモートコード実行(RCE)は、通常のWeb脆弱性とは異なります。深刻な場合、サーバー権限、データベースへのアクセス、バックエンドの業務ロジックに影響を及ぼす可能性があります。
PHPサーバーが侵害されても、ブロックチェーンネットワークやユーザーの秘密鍵が解読されたことを意味するわけではありません。暗号資産が影響を受けるかどうかは、サーバーとアカウント認証、トランザクション署名、資産保管システムとの権限関係によって決まります。
中央集権型取引プラットフォームでは、ユーザーセッション、API認証情報、アカウントデータ、業務インターフェースが潜在的なリスクに関与する可能性があります。ノンカストディアルウォレットでは、悪意のあるWebページ、フィッシング操作、危険なトランザクション署名に主に注意する必要があります。
セキュリティパッチの迅速な適用、サーバー権限の制限、機密認証情報の分離、多要素認証の有効化、トランザクション署名の独立した検証は、関連リスクを低減するための重要な対策です。
PHP2Shellは、単一のPHP関数やサードパーティ製プラグインではありません。これは、PHPコアの2つのセキュリティ脆弱性、CVE-2026-109618およびCVE-2026-109619の総称です。これら2つの脆弱性は2026年10月21日に公開されました。いずれも、PHPによる例外的なリクエストとメモリ状態の処理における潜在的なセキュリティ問題に関わるもので、CVSS v4.0スコアはともに9.2であり、重大度は「Critical」に分類されています。
従来のPHPアプリケーションの脆弱性とは異なり、PHP2ShellはPHPランタイム環境内で発生します。これは、Webサイト開発者が標準的なユーザー入力フィルタリングを適用しており、アプリケーション自体に明らかなSQLインジェクションやファイルアップロードの欠陥がない場合でも、脆弱性により基盤となるPHPコンポーネントが攻撃にさらされる可能性があることを意味します。
PHP2Shellの主な危険性は、攻撃者が事前に対象Webサイトへログインする必要がない可能性がある点です。特別に細工されたリクエストを通じて異常なメモリ操作を引き起こし、さらにリモートコード実行を達成する機会を得る可能性があります。実際の悪用条件は、PHPのバージョン、サーバーの動作モード、デプロイ設定に依存します。すべてのPHP Webサイトがまったく同じ攻撃対象領域を持つわけではありません。
| 脆弱性ID | 中核的な問題 | 潜在的なセキュリティへの影響 |
|---|---|---|
| CVE-2026-109618 | メモリ不足(OOM)例外処理中のメモリ状態エラー | リモートコード実行 |
| CVE-2026-109619 | リクエスト処理およびクリーンアップ中の無効なメモリ参照の使用 | リモートコード実行、メモリ情報の漏えい |
PHPはすでにパッチ適用済みバージョンを正式にリリースしており、影響を受けるユーザーに対して可能な限り早急なアップグレードを明確に推奨しています。

PHP2Shellのリスクを理解するには、まずPHPサーバーがユーザーリクエストをどのように処理するかを理解する必要があります。
ユーザーがWebサイトを閲覧し、フォームを送信し、またはAPIを呼び出すと、Webサーバーは関連するリクエストをPHPランタイム環境に渡して処理します。PHPはリクエストデータを解析し、アプリケーションコードを実行して、結果をユーザーに返します。この過程で、サーバーはメモリを割り当て、リクエスト状態を保持し、リクエスト終了後に関連リソースを解放する必要があります。
通常、PHPはリクエスト処理が失敗した場合でも、割り当て済みのリソースを安全にクリーンアップする必要があります。しかし、PHP2Shellに関連する2つの脆弱性は、まさに例外処理とメモリのクリーンアップ時に発生します。
CVE-2026-109618は、メモリ不足時の処理に関連します。PHPがリクエストを解析している際にメモリ割り当ての失敗が発生すると、一部の内部データがまだ完全に初期化されていない可能性があります。後続のクリーンアップルーチンがこのデータを有効な状態として誤って扱う場合、メモリ破損が発生する可能性があります。
CVE-2026-109619は、リクエスト処理中の無効なメモリ参照に関わるものです。特定のリソースがすでに解放されているにもかかわらず、関連するポインタまたは状態が保持されている場合、後続の操作が有効ではなくなったメモリ領域に誤ってアクセスする可能性があります。この種の問題は一般にuse-after-freeと呼ばれます。
特定の悪用条件が満たされると、攻撃者はこれらのメモリエラーを利用してプログラムの通常の実行フローを変更し、サーバーに認可されていないコードを実行させる可能性があります。実行権限は通常、PHPワーカーアカウントの権限によって制限されます。ただし、サーバー権限が不適切に設定されている場合、攻撃者は機密ファイルにアクセスしたり、制御範囲の拡大を試みたりする可能性があります。
実際のリスクはデプロイモードによって異なる点に注意が必要です。たとえば、Apache mod_phpに関する一部の悪用経路は検証されていますが、PHP-FPMなどの他の環境におけるトリガー条件や悪用可能性はまったく同じではありません。
PHP2Shellは、現在も使用されている複数のPHPバージョンに影響します。2026年10月21日、PHPはこの2つの重大な脆弱性を修正するための対応するセキュリティアップデートをリリースしました。
2026年10月27日時点で、主な影響対象バージョンと修正版は以下のとおりです。
| PHPブランチ | 影響を受けるバージョン | 修正版 |
|---|---|---|
| PHP 8.2 | 8.2.35未満 | 8.2.35 |
| PHP 8.3 | 8.3.36未満 | 8.3.36 |
| PHP 8.4 | 8.4.27未満 | 8.4.27 |
| PHP 8.5 | 8.5.12未満 | 8.5.12 |
古いPHPバージョンも関連する問題の影響を受ける可能性があります。公式サポートが終了しているバージョンについては、開発者はバージョン番号だけに依存してリスクを評価するのではなく、OSディストリビューターまたは商用保守サービスがセキュリティパッチを提供しているかを確認する必要があります。
また、一部のLinuxディストリビューションでは、元のバージョン番号を維持したまま修正を適用するセキュリティパッチのバックポートによって脆弱性を修正する場合があります。そのため、サーバーが安全かどうかを判断するには、実際のパッケージビルドバージョンとベンダーのセキュリティアドバイザリの両方を確認する必要があります。
デプロイ方法の観点では、PHP2ShellはApache mod_php、PHP-FPM、php-cgi、FrankenPHPなどのPHPランタイム環境に関与する可能性があります。ただし、悪用可能な条件はモードごとに異なります。サーバー管理者は、PHPを使用するすべてのWebサイトが同じ攻撃手法で侵害されると想定するのではなく、自身の技術スタックに基づいて影響を評価する必要があります。
暗号資産取引プラットフォームは通常、ユーザーログイン、本人確認、取引マッチング、アカウント管理、資産保管、出金承認、リスク管理など、複数の独立したシステムで構成されています。
PHP2Shellが直接影響するのは、ブロックチェーンネットワーク自体ではなく、脆弱なPHPサーバーです。プラットフォームの公開Webサイトまたはバックエンドサービスが影響を受けるPHPバージョンを使用している場合、攻撃者は脆弱性を通じて関連サーバーへのアクセスを試みる可能性があります。
サーバーが侵害されると、攻撃者はデータベース接続情報、ユーザーセッションデータ、API認証情報、その他の機密設定を探す可能性があります。この情報によってアカウント管理システムにアクセスできる場合、アカウント情報の漏えいやなりすましのリスクが高まる可能性があります。
たとえば、暗号資産サービスプラットフォームがPHPを使用してアカウント管理インターフェースを開発し、強い権限を持つ内部API認証情報をサーバー上に保管している場合を考えます。攻撃者がリモートコード実行を通じてサーバーアクセスを取得した場合、これらの認証情報を読み取り、本来は公開されるべきでない業務インターフェースの呼び出しに使用しようとする可能性があります。
ただし、これは攻撃者がすべてのユーザー資産を直接出金できることを意味するものではありません。成熟した取引プラットフォームでは通常、資産保管、トランザクション署名、出金承認、アカウント認証といった重要な機能を公開Webサービスから分離しています。また、独立した権限制御とリスク検証も使用しています。
したがって、PHP2Shellが暗号資産アカウントに与える実際の影響は、サーバー権限、内部ネットワーク分離、機密認証情報管理、資産操作の承認メカニズムに依存します。公開Webサイトの脆弱性は、中核的な資産保管システムがすでに侵害されたことを意味するものではありません。
PHP2Shell自体が、ブロックチェーンウォレットの秘密鍵を直接解読したり、ブロックチェーンの暗号学的セキュリティメカニズムを変更したりすることはできません。
MetaMaskなどのノンカストディアルウォレットでは、秘密鍵は通常、ローカルのウォレットソフトウェアまたはハードウェアデバイスによって管理されます。秘密鍵が脆弱なPHPサーバーに一度もアップロードされていない場合、そのサーバーでリモートコード実行が発生しただけでは、通常、秘密鍵を直接取得することはできません。
ただし、サーバー侵害は別の方法でウォレットユーザーに影響を与える可能性があります。
たとえば、攻撃者がWeb3プロジェクトの公式Webサイトを制御した後、フロントエンドページを改ざんし、ユーザーを誘導してウォレット接続や悪意のあるトランザクションへの署名を行わせる可能性があります。ユーザーがトランザクションの詳細を慎重に確認しない場合、意図せずトークン転送を承認したり、危険な操作を実行したりする可能性があります。
もう1つのリスクは、ウォレット関連サービスに関するものです。一部のWeb3アプリケーションは、トランザクションデータ、署名リクエスト、ユーザー設定、クロスチェーン操作情報を提供するためにサーバーに依存しています。サーバー侵害後にこれらのデータが改ざんされた場合、ユーザーは不正確なトランザクションパラメータや悪意のある操作プロンプトを受け取る可能性があります。
したがって、2種類のセキュリティ問題を区別する必要があります。
秘密鍵の漏えいとは、攻撃者がウォレット資産を管理するために必要な鍵情報を直接取得することを意味します。悪意のある署名は、秘密鍵が漏えいしなくても、ユーザーが危険な権限を持つトランザクションを自ら承認した場合に発生する可能性があります。
ノンカストディアルウォレットのユーザーにとっては、多くの場合、後者のほうが注意すべき重要な間接リスクです。
PHP2Shell、SQLインジェクション、クロスサイトスクリプティング(XSS)、ファイルアップロードの脆弱性はいずれもWebサイトのセキュリティを脅かす可能性がありますが、その技術的な根本原因と攻撃手法は大きく異なります。
SQLインジェクションは通常、アプリケーションがデータベースクエリのパラメータを適切に処理できない場合に発生します。攻撃者は悪意のある入力を使用して、データベースクエリのロジックを変更する可能性があります。XSSは主にWebページ出力の不適切な処理に関わるもので、ユーザーのブラウザ上で悪意のあるスクリプトが実行される可能性があります。
PHP2Shellの特徴は、脆弱性がPHPコアのランタイム環境で発生する点です。アプリケーションが比較的包括的な入力フィルタリングや権限検証を使用している場合でも、基盤コンポーネントのメモリ安全性の欠陥が攻撃の入口となる可能性があります。
| 比較項目 | PHP2Shell | SQLインジェクション | XSS |
|---|---|---|---|
| 脆弱性の発生箇所 | PHPランタイム環境 | アプリケーションとデータベースの連携部分 | Webコンテンツ処理 |
| 主なリスク | リモートコード実行、メモリ情報の漏えい | データ漏えい、データ改ざん | ブラウザ上での悪意のあるスクリプト実行 |
| サーバーに影響する可能性 | あり | データベースおよびシステム権限に依存 | 一般的にブラウザに影響 |
| 主な保護対策 | PHPの更新、セキュリティ分離 | パラメータ化クエリ、最小権限 | 出力エンコーディング、コンテンツセキュリティポリシー |
| 暗号資産ユーザーへの影響 | アカウントおよびサービスのセキュリティへの間接的影響 | アカウントデータが漏えいする可能性 | 危険なウォレット操作を誘導する可能性 |
このことからも、Webサイトのセキュリティはアプリケーションレベルのコードレビューだけに依存できないことがわかります。サーバーランタイム環境、依存関係、システム設定についても継続的な保守が必要です。
PHPを使用する暗号資産プラットフォームおよびWeb3プロジェクトにとって、PHP2Shellを防ぐための最優先対策は、公式セキュリティパッチを迅速に適用し、現在稼働中のすべてのPHPサービスが更新済みであることを確認することです。
脆弱性はPHPコアのランタイム環境で発生するため、Webサイトの業務コードを修正するだけでは不十分であり、入力フィルタリングの追加や通常のファイアウォールルールの導入も完全な修正とみなすことはできません。PHPは、修正版への更新が信頼できる解決策であると明確に述べています。バージョン更新に加えて、プラットフォームは以下の領域に重点を置く必要があります。
PHPサービスを包括的に確認します。公開Webサイトに加え、管理バックエンド、内部API、テスト環境、レガシープロジェクト、サードパーティコンポーネントも確認します。保守が十分に行われていない一部のサービスでは古いPHPバージョンが稼働している可能性があり、内部ネットワークへの侵入口となるおそれがあります。
最小権限の原則を実装します。PHPワーカープロセスには、不必要なシステム管理者権限や、ウォレット秘密鍵、中核的な署名システム、強い権限を持つデータベースアカウントへの直接アクセス権限を付与すべきではありません。攻撃者がWebサービスへのアクセスを得た場合でも、アクセス可能なリソースは制限された状態に維持されるべきです。
重要な資産操作システムを分離します。アカウントサービス、資産保管、出金承認、トランザクション署名には独立した権限境界を設ける必要があります。資産移転を伴う操作には、多要素認証、取引上限、異常行動検知、独立した承認も使用してリスクを低減する必要があります。
認証情報およびログ管理を強化します。APIキー、データベースパスワード、その他の機密設定は、専用の鍵管理メカニズムを通じて保存し、定期的にローテーションする必要があります。侵害が疑われるサーバーについては、異常なプロセス、ファイル変更、ネットワーク接続、アカウント操作記録を確認します。
継続的な更新メカニズムを構築します。PHP2Shellは、基盤となるランタイム環境において深刻なセキュリティ問題が短期間で発生し得ることを示しています。プロジェクトチームは、セキュリティアドバイザリを継続的に監視し、脆弱性の分類、パッチテスト、緊急アップグレードのプロセスを確立する必要があります。
直ちにアップグレードできないシステムでは、アクセス制限やサービス分離などの対策により露出を低減できます。ただし、これらの対策はセキュリティパッチの代わりにはなりません。
一般ユーザーにとって、PHP2Shellはサーバーサイドの脆弱性であり、通常、個人デバイス上での操作によって修正することはできません。そのため、ユーザーはサービスプロバイダーのセキュリティにより注意を払い、サーバー侵害によって生じる可能性のある間接的なリスクを低減する必要があります。
包括的なセキュリティメカニズムを備えた取引プラットフォームおよびウォレットサービスを優先し、取引アカウントで多要素認証を有効にします。多額の資産を伴う操作では、出金先アドレスの許可リスト、独立した検証、セキュリティ通知などの機能が、アカウントなりすまし後の潜在的な損失の低減に役立ちます。
プロジェクトのWebサイトにウォレットのシードフレーズまたは秘密鍵を入力しないでください。Webサイトが長期間正常に運用されていた場合でも、サーバー侵害後に悪意を持って改ざんされる可能性があります。
Web3アプリケーションに接続する際は、Webサイトのドメイン、トランザクション受取先、承認内容を確認してください。Webページ上のプロンプトやプロジェクト名だけを根拠に、見覚えのない署名リクエストを承認しないでください。
強い権限を持つAPIキーの使用を最小限に抑えてください。APIを通じて取引アカウントを管理する必要がある場合は、目的の用途に必要な最小権限を設定し、必要がない場合は出金権限を有効にしないでください。
取引プラットフォームまたはWeb3プロジェクトがセキュリティインシデントに関する告知を公開した場合、まず信頼できるチャネルを通じて影響範囲を確認してください。緊急の資産移行、ウォレット検証、セキュリティ補償を提供すると主張する不明なリンクをクリックしないでください。
これらの対策ですべてのサーバーサイドリスクを排除することはできませんが、攻撃者がなりすまし、フィッシングページ、悪意のある署名を通じてユーザー資産にさらに影響を及ぼす可能性を低減できます。
PHP2Shellが2026年10月21日に公開された後、セキュリティ研究機関やインフラサービスプロバイダーは相次いでリスク分析と対処に関する推奨事項を発表しました。2026年10月27日時点で、一部のセキュリティ組織は関連する脆弱性を標的とした攻撃の試みを報告しています。ただし、侵入に成功した疑いのある一部の事例では、攻撃経路と特定のCVEとの関連性は依然として不明です。
たとえば、Palo Alto Networks Unit 42は、PHP2Shellに関連する可能性がある侵入キャンペーンを報告しました。しかし、さらなる調査の後、同組織は10月25日に初期侵入と特定の脆弱性との関連に関する従来の評価を撤回し、攻撃者が初期アクセスの取得にPHP2Shellを使用したかどうかを確認できないと述べました。
この展開は、脆弱性の技術的な悪用可能性、実際の攻撃の試み、検証済みの侵入成功を区別する必要があることを示しています。これら3つの状況はまったく同じではありません。
暗号資産業界においては、PHP2Shellの重大度だけで大手取引プラットフォームが攻撃を受けたと結論づけることはできません。また、市場で報告されるすべてのアカウント盗難事例をこの脆弱性に起因させることもできません。
それでも、PHP2Shellは広く使用されているサーバーサイド技術に関わり、深刻なリモートコード実行リスクを伴います。そのため、開発者およびサービスプロバイダーは引き続き適時に修正措置を講じる必要があります。
PHP2Shellは、2026年10月に公開されたPHPコアの2つの重大なセキュリティ脆弱性、CVE-2026-109618およびCVE-2026-109619の総称です。主なリスクは、PHPによる例外的なリクエストおよびメモリクリーンアップの処理における潜在的なセキュリティ上の欠陥から生じます。特定の条件下で、攻撃者は認可されていないリモートコード実行を達成する可能性があります。
暗号資産業界において、PHP2Shellの影響は主にWebサービス、アカウントシステム、バックエンドインフラの層に集中します。サーバーを侵害した後、攻撃者は機密認証情報へのアクセス、業務インターフェースの操作、ユーザー向けページの改ざんを試みる可能性があります。ただし、これはブロックチェーンプロトコルが解読されたことや、ノンカストディアルウォレットの秘密鍵が自動的に漏えいすることを意味するものではありません。
このインシデントは、暗号資産のセキュリティがブロックチェーンやスマートコントラクトだけでなく、従来のインターネットインフラの信頼性にも依存していることをさらに示しています。サーバーパッチ管理、権限分離、アカウント認証、トランザクション署名の検証はいずれも、包括的なセキュリティシステムの重要な要素です。
開発者にとっては、影響を受けるPHPバージョンを迅速にアップグレードすることが最優先です。一般ユーザーにとっては、アカウント認証情報の保護、ウォレットトランザクションの慎重な承認、信頼できるセキュリティ告知の監視が、引き続きリスク低減のための基本的な対策となります。
PHP2Shellは、PHPコアの2つの脆弱性であるCVE-2026-109618およびCVE-2026-109619の総称です。これらは例外的なリクエスト処理とメモリ安全性の問題に関わり、リモートコード実行につながる可能性があります。
両方の脆弱性はCVSS v4.0スコアが9.2であり、重大度は「Critical」に分類されています。特定のデプロイ条件下では、認証されていない攻撃者が脆弱性を悪用してサーバーサイドコードを実行する可能性があります。
自動的にウォレット資産が盗まれるわけではありません。実際の影響は、サーバーが機密認証情報、秘密鍵、またはトランザクション署名システムにアクセスできるかどうか、および攻撃者が関連するセキュリティ制御を回避できるかどうかに依存します。
主な影響対象バージョンには、それぞれPHP 8.2.35、8.3.36、8.4.27、8.5.12より前のバージョンが含まれます。古いPHPブランチも影響を受ける可能性があるため、関連するディストリビューターが提供するセキュリティアップデートを確認する必要があります。
PHP2ShellはサーバーサイドのPHPランタイム環境に影響を与える一方、スマートコントラクトの脆弱性はブロックチェーン上にデプロイされたコントラクトコードまたは業務ロジックで発生します。どちらも暗号資産のセキュリティに間接的な影響を与える可能性がありますが、技術的な根本原因は異なります。
検証済みの攻撃経路の一部では、攻撃者が事前にWebサイトへログインする必要はありません。ただし、具体的な悪用条件は、PHPのバージョン、サーバーの動作モード、デプロイ設定に依存します。
ウォレットの秘密鍵がユーザーによってローカルにのみ保管されている場合、PHP2Shellが直接取得することは通常できません。ただし、侵害されたWeb3 Webサイトはユーザーを誘導して悪意のあるトランザクションを実行させる可能性があるため、署名リクエストは引き続き慎重に確認する必要があります。
PHPまたはOSディストリビューターが提供するセキュリティパッチを適用し、関連するPHPサービスが更新済みのランタイム環境を再読み込みしていることを確認してください。ファイアウォールや入力フィルタリングだけで修正の代わりにすることはできません。
2026年10月27日時点で、PHP2Shellを原因として大手暗号資産取引プラットフォームが侵害に成功したことを示す、信頼できる十分な公開証拠はありません。脆弱性の存在を実際の資産損失と直接同一視することはできません。
多要素認証を有効にし、アカウントのAPI認証情報を保護し、ウォレットのシードフレーズをWebサイトに提供せず、Web3トランザクションの署名を確認し、信頼できるチャネルを通じてプラットフォームのセキュリティ告知を監視してください。
* 本情報はGateが提供または保証する金融アドバイス、その他のいかなる種類の推奨を意図したものではなく、構成するものではありません。
* 本記事はGateを参照することなく複製/送信/複写することを禁じます。違反した場合は著作権法の侵害となり法的措置の対象となります。





