AmazonはPHP2Shell脆弱性を悪用した攻撃を公開4日前に検出していた

一方、Amazonでは同社が運用するハニーポットシステム「MadPot」が収集した記録を調査した結果、PHP2Shellの公開より4日早い10月17日の時点で、すでに脆弱性を悪用しようとする活動が行われていたことが判明し、対策を行っていたとのこと。ハニーポットとは、攻撃者を誘い込むために意図的に設置されたおとりのシステムで、実際に攻撃を受けることで攻撃者の行動や使用する手法を調査する仕組みです。
10月17日に観測された攻撃は商用の匿名化ネットワークに関連付けられたIPアドレスから行われていました。当時はPHP2Shellの脆弱性に関する情報は公開前の秘密保持期間にあったことから、Amazonは悪意のある攻撃者によるものとみています。ただし、攻撃者が独自に脆弱性を発見したのか、何らかの経路で情報を入手したのかについても、今回の報告では明らかになっていません。

PHP2Shellの情報公開に関する秘密保持期間は10月21日23時(日本時間)に終了する予定でした。ところがAmazonの調査では、同日11時(日本時間)頃にはすでに複数の概念実証コード(PoC)が確認されていたとのこと。さらに10月21日11時~17時にかけてMadPotに対する追加の攻撃が確認されました。これらの攻撃も匿名化されたインフラから行われていましたが、使用された攻撃コードや匿名化のためのインフラには違いがあったことから、Amazonは単一の攻撃者ではなく複数の攻撃者が関与していた可能性があると分析しています。
つまり、PHP2Shellの脆弱性情報が正式に公開される前から、少なくとも複数種類の攻撃手法が使われ、異なる攻撃者が脆弱性を狙っていた可能性があります。
10月21日23時に秘密保持期間が終了し、脆弱性情報と修正プログラムが公開されると状況はさらに一変。公開から数時間以内に追加のPoCが登場し、Amazonのセンサーに対してもこれらを利用した攻撃がほぼ直ちに確認されたといいます。Amazonは、PHP2Shellがすでに実際のインターネット環境で広範に悪用されていると警告しています。

Amazonは今回の事例から、脆弱性の情報公開と攻撃の開始時期に関する従来の認識を見直す必要があると指摘しています。
通常、ソフトウェアの脆弱性が発見されると開発元などに非公開で報告され、修正プログラムを準備する期間が設けられます。これは脆弱性の詳細を一定期間秘密にすることで、修正プログラムが完成する前に攻撃者が情報を悪用する危険性を抑えることが目的です。
しかし、開発元やセキュリティ研究者とは無関係の第三者が同じ脆弱性を独自に発見する可能性があるため、こうした秘密保持によって攻撃を完全に防げるわけではありません。今回のPHP2Shellの事例は、脆弱性が一般公開された日を「攻撃が始まった日」とみなすことの危険性を示しているとAmazonは述べています。
もう1つの問題としてAmazonが挙げているのが、修正プログラムの公開から実際の攻撃が始まるまでの時間が短くなっていることです。
従来、高度な技術を持つ少数の攻撃者が悪用コードを作成し、ほかの攻撃者はそれが公開されるのを待つという構図が一般的だったため、脆弱性攻撃の多くはPoCが一般公開されてから発生していました。

ところが、近年はAIを利用した分析によって、修正プログラムの変更箇所や脆弱性に関する情報から実際に動作する攻撃コードを作成する負担が小さくなっています。その結果、高度な専門知識を持つ一部の攻撃者だけでなく、より多くの攻撃者が脆弱性の情報公開から数時間、場合によっては数分以内に攻撃を開始できるようになりつつあります。
こうした変化を踏まえてAmazonは企業や組織のセキュリティ担当者に対し、インターネットに公開されているシステムで重大な脆弱性が発見された場合、対応までの時間を「日」ではなく「時間」で考えるよう求めています。
また、侵害の有無を調査する際には、脆弱性の公開日ではなく、攻撃が最初に確認された日までさかのぼることが重要。PHP2Shellの場合、Amazonは少なくとも10月17日以降の記録を確認するよう推奨しています。
KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.

