PHP バックドア内に別のバックドアが存在


By アンドリュー・ブラント / Andrew Brandt

泥棒同士に仁義の心はもはや存在しないのでしょうか。

先日、PHP スクリプト言語で記述されたリモート アクセス型トロイの木馬を調査していたときのことです。このボットは、たとえば Web ページに埋め込まれている PHP スクリプトを指すインライン フレームに純真なユーザーが引っかかると、被害者のコンピューターのメモリーに読み込まれます。このコードは、ホスト サーバー上の shell コマンドを実行し、大量のデータ パケットを別のコンピューターに送信し、リモート コンピューターをスキャンするといった好ましい機能を備えています。


被害者のブラウザーに読み込まれると、このボットはコンピューターが再起動されるまでボットネット サーバーに接続し、ボットネット サーバーが発行するコマンドを実行します。ほとんどの場合、これだけの時間があればこと足ります。感染したコンピューター上でコマンドを実行できれば、さらに多くのトロイの木馬をインストールすることなど、攻撃者にとっては実に簡単なことです。
とはいえ、この PHP バックドアに別のバックドアが埋め込まれていたことは驚きでした。

一体なぜ、このボットのソース コードを配布している人物は、トロイの木馬を保存する Web ドメイン名に getemgirlfriday.com を選んだのかさっぱりわかりません。きっと、ハワード ホークスかロザリンド ラッセル (映画『ヒズ・ガール・フライデー (His Girl Friday)』の監督と主演女優) の隠れファンが不正コード コミュニティにいるのでしょう。嫌な感じもしますが、素晴らしいことです。わかっていることは、このバグに別のバグを仕込んだ人物がいるということだけです。

コードの 2 番目の塊は PHP ボットの読み込みルーチンで起動されますが、多くの人には base64 でエンコードされた不要データの塊に見えます。しかし、セキュリティ研究者にとって、予期していない難読化されたコード セクションは思いがけないごちそうです。

base64 でエンコードされたテキストのデコードは実に簡単です。このデータの塊はこのボットのコードの最後の方にあり、変数 $dc_source に設定されています。

デコードすると、$dc_source の内容が明らかになります。このボットはデコードされたコマンドを Perl スクリプトに書き出し、実行します。書き出されたコマンドは、どこか別の場所に接続するようにボットに命令しています。もし私がこのようなボットを使う犯罪者的な心理を持っていたら、自分のサーバーで「Data Cha0s Connect Back Backdoor (データ カオスがバックドアに接続)」というメッセージを見つけて幸せな気分になれるかどうかわかりません。これが、コード拡散グループの感謝の気持ちを表す次のようなコードがこのページでホストされている理由ではないでしょうか。

ヒルディ、悪いやつらを打ち負かせ。皆様、よい祝日をお過ごしください。

wordpress blog stats