PHP、セッションのデシリアライズ脆弱性「CVE-2026-115560」を公表

執筆:


·

Image

PHP Foundationはこのほど、リモートコード実行のリスクを詳述したセキュリティ情報を公開しました。メンテナーはこの問題を「CVE-2026-115560」として各国の脆弱性データベースに登録しています。ただし、開発チームは緊急のポイントリリースを直ちに公開しない判断をしました。この脆弱性は、設定値と実行時の処理経路が特殊な形でそろった場合にのみ成立します。そのため、開発チームは実際の脅威度は比較的低いとみています。

悪用に必要な厳しい設定条件

初期の技術的な調査結果によると、悪用が成功するのは、複数の運用条件が複雑に重なった場合に限られます。まず、アプリケーションが session.serialize_handler を php_binary または php_serialize に設定している必要があります。次に、スクリプトが実行時に ini_set() でこの設定を php に変更しなければなりません。さらに、その変更の直後にアプリケーションが session_start() を呼び出す必要があります。加えて、処理の間、対象サーバーで session.upload_progress.enabled が有効のままになっていることも条件です。

session.serialize_handler ディレクティブは、PHPがセッション状態の保存に使う内部形式を決めるものです。開発チームはPHPの公式セキュリティ告知で、実行時にハンドラーを操作しないアプリケーションは安全だと説明しました。そのため、アップロード進捗の追跡機能を維持しても、侵害の経路が新たに生じることはありません。メンテナーは、こうしたハンドラーの動的な再設定は、現代の本番環境のコードではきわめてまれだと評価しています。

推奨される緩和策と対応方針

重要な点として、今回新たに登録されたリスクは、以前のPHP2Shell脆弱性とは完全に別物です。再現には特殊な運用条件が必要なため、メンテナーは未検証の緊急パッチではなく、暫定的な緩和策を示しました。upstreamのエンジニアは、今後予定されている通常のリリースサイクルで、正式なコード修正を取り込む方針です。

サーバーで直ちに実施できる回避策

当面の対応として、PHP Foundationは影響を受ける組織に対し、ファイルアップロードの進捗追跡を直ちに無効化するよう勧めています。具体的には、管理者がサーバーの設定ファイルで session.upload_progress.enabled を0に設定します。さらに、各ディストリビューションから公式アップデートが提供されるまで、この設定を維持してください。なお、すでにこの機能を無効にしているホスティング環境では、追加の対応は必要ありません。

翻訳元: https://meterpreter.org/php-cve-2026-115560-vulnerability/

本記事は meterpreter.org の記事を翻訳・要約したものです。