チェック・ポイント・リサーチ(CPR)は10月30日、重大なPHP脆弱性である「PHP2Shell」の最新分析を公開した。その概要は以下のとおり。
今回の事態の緊急性を高めている要因の一つが、正式公開前の脆弱性情報の漏洩。この流出により攻撃者が先手を取る形となり、防御側の準備期間は短縮された。加えて、PHP2Shellを悪用する攻撃ツールのスクリーンショットも出回り始めていることから、脆弱性の悪用が現実の脅威となりつつあることがうかがえる。
PHP2ShellはPHPそのものに起因する脆弱性であるため、WordPressをはじめとするコンテンツ管理システム(CMS)やプラグインの更新では対処できない。対策として、サーバー上のPHPを直接アップデートする必要がある。
修正はPHP 8.2.35、8.3.36、8.4.27、8.5.12で提供されている。一方、PHP8.1以前のバージョンは修正がバックポートされない限り脆弱な状態が続くため、サポートが終了した環境については特に注意が求められる。
■組織が今すぐ取るべき対策
◎PHP環境の全容把握:存在を把握していないシステムは保護できない。コンテナやサードパーティ製品を含め、自社環境全体のPHPを洗い出すことが重要。
◎サーバー上のPHPへのパッチ適用:インターネットに公開されているシステムを優先し、修正版へ移行することが推奨される。サポートが終了したバージョンには特に注意が必要。
◎ホスティング事業者への確認:ウェブサイトを外部でホスティングしている場合は、パッチの適用状況を事業者に直接確認することが求められる。
◎再起動と動作確認:更新後は関連サービスを再起動し、修正版のPHPで実際に稼働していることを確かめる必要がある。
◎即時対応が難しい環境へのアクセス制限:脆弱なサービスにアクセスできる範囲を絞るか、対策が完了するまで一時的に停止することが有効。
◎多層的な防御の導入:攻撃のブロック機能を有効化し、セキュリティ対策を常に最新の状態に保つとともに、ウェブサーバーと社内ネットワーク内のほかのシステムとの通信を制限することで、侵害の拡大を防ぎやすくなる。ただし、これらはあくまで時間を稼ぐための措置であり、PHPの更新に代わるものではない。
■侵害の兆候を確認する方法
パッチを適用しても、攻撃者がすでにサーバー上に仕掛けた悪意のあるコードや、生じた被害が取り除かれるわけではない。各組織には、以下のような兆候がないかを確認することが求められる。
・原因不明のウェブサービスの停止
・ウェブサイト上に出現した新規または見覚えのないPHPファイル
・ウェブサーバーへの不審なリクエスト
・ウェブサーバーのプロセスによるシステムコマンドの実行
・サーバーから不明な外部アドレスへの通信
関連リンク
