Linux / Cdorked.A:新しいApacheバックドアの記録

先週、 Sucuriの同僚は、Apache Webサーバー用のバイナリファイルの修正版を私たちに送信しました。これは、宛てられたいくつかのリクエストをBlackhole Exploit Kitにリダイレクトしました。 アンチウイルスラボの専門家による分析では、 Linux / Cdorked.Aと呼ばれるこのLinuxの脅威は、トラフィックを悪意のあるサイトにリダイレクトするように設計されていることが示されました。 この事件に関するスクリ情報。



分析の過程で、Linux / Cdorked.Aはこれまで見た中で最も複雑なLinuxバックドアであるという結論に達しました。 ESET Live Gridクラウドテクノロジーを使用して、数百の侵害されたWebサーバーに関する統計情報を取得しています。 他の同様の脅威とは異なり、バックドアは感染したホストのハードドライブにその活動の痕跡を残さないため、検出が著しく複雑になります。 代わりに、ハードドライブを使用せずに、使用するすべての情報をメモリに保存します。 さらに、攻撃者は難読化されたHTTPリクエストを使用して、サービス情報を悪意のあるコードに転送しますが、これはApacheログファイルには記録されません。 したがって、C&Cサーバーとやり取りする悪意のあるコードの痕跡もありません。







Linux / Cdorkedバイナリファイルには、既知のXORスキームと静的キーを使用して、すべての重要な行が暗号化された形式で含まれています。 分析したLinux / Cdorkedバージョンには、下のスクリーンショットに示すキー(27A4E2DADAF183B51E3DA7F6C9E6239CDFC8A2E50A60E05F)を使用して、このような行が約70行含まれています。





図 文字列復号化コード。





図 復号化キー。



前述のように、バックドアは公式の目的でディスク上のファイルを使用しません。 代わりに、データと構成情報を保存するために約6 MBの共有メモリを割り当てます。 このメモリブロックはPOSIX共有メモリと呼ばれ、すべてのApache子プロセスで使用されます。悪意のあるコードの作成者はアクセス権を使用してその使用を制限しないため、システム内の他のプロセスからアクセスできます。 以下のスクリーンショットは、共有メモリのこの領域へのアクセス権を示しています(すべてのユーザーに対して読み取りおよび書き込み)。





図 共有メモリブロックにアクセスします。



攻撃者が侵害されたサーバーの動作を制御する方法は2つあります。コマンドラインを使用した逆接続と特別なコマンドを使用します。 これらのメソッドは両方とも、HTTP要求を介してアクティブ化されます。 コマンドラインを使用する最初のメソッドは、GET HTTPプロトコルリクエストを介して呼び出されます。 特別なパスが要求されたときに実行され、文字列には特定の形式があり、接続のホスト名とポートが含まれます。 クライアントIPアドレスは、送信された文字列を解読するためのキー、つまり4バイトのXORキーとして使用されます。 さらに、パケットヘッダーX-Real_IPまたはX-Redirected_onで指定されたIPアドレスは、復号化キーとしてクライアントIPを置き換えます。 これは、キー「\ x00 \ x00 \ x00 \ x00」として機能するX-Real_IPのヘッダーを作成できることを意味します。 クエリ文字列は、送信前に16進形式である必要があります。





図 コマンド実行例。



攻撃者がコマンドラインにアクセスできる限り、アクティブなHTTP接続は切断されません。 これは、時間の長いHTTP接続をチェックすると、悪意のあるコードアクティビティに気付くことができることを意味します。 一方、悪意のあるコードがこの情報の表示を制御するため、Apacheログはこの接続に関する情報を提供しません。



侵害されたWebサーバーは、クライアントを悪意のあるWebページにリダイレクトします。このため、バックドアコードは、元のURLに関する情報と、リクエストがjsファイルに宛てられたかどうかを含むbase64エンコードされたリクエスト文字列を追加して、サーバーが正しい有用性を提供できるようにしますロード。







そのような行の例:



hxxp:// dcb84fc82e1f7b01。 xxxxxxgsm.be/index.php?j=anM9MSZudmNiaW11Zj1jY3

Zja3FqdSZ0aW1lPTEzMDQxNjE4MjctMzYwNDUzNjUwJnNyYz0yMzImc3VybD13d3cuaW5mZWN0ZWRzZXJ2ZXIuY29tJnNwb3J0PTgwJmtleT0xM0Q5MDk1MCZzdXJpPS9mb3J1bS93Y2YvanMvM3JkUGFydHkvcHJvdG9hY3Vsb3VzLjEuOC4yLm1pbi5qcw ==



復号化された形式では、次のパラメーターが表示されます。



js = 1&nvcbimuf = ccvckqju&time = 1304161827-360453650&src = 232&surl = www.infectedserver.com&sport = 80&key = 13D90950&suri = / forum / wcf / js / 3rdParty / protoaculous.1.8.2.min.js



パラメータ「surl」は侵害された(感染した)ホストを示し、 「suri」は元のリクエストを示します。



リダイレクト後、クライアントのブラウザにCookieが設定されるため、将来的には再度リダイレクトされることはありません。 このCookieは、サーバー管理ページに類似したWebページが要求された場合にも設定されます。 悪意のあるコードは、次の行のURL、サーバー名、リファラーフィールドなどの引数をチェックします。「* adm *」、「* webmaster *」、「* submit *」、「* stat *」、「* mrtg *」、「* webmin * "、" * cpanel * "、" * memb * "、" * bucks * "、" * bill * "、" * host * "、" * secur * "、" * support * "。 Webサイトの管理者に悪意のあるコンテンツを送信しないようにするために、おそらくこのようなチェックが行われるため、侵害の事実を検出することはより困難になります。 以下のスクリーンショットは、Cookieの処理を担当するコードの一部を示しています。







リダイレクトを成功させるために、悪意のあるコードは他のリクエスト引数もチェックします。たとえば、Accept-Language、Accept-Encoding、Refererフィールドの存在をチェックします。



Linux / Cdorked.Aが特別に細工したURLを使用してHTTP POSTリクエストでサーバーに送信できる23個のコマンドを発見しました。 要求には、「 SECID = 」トークンで始まるCookieフィールドが含まれている必要があります。 要求文字列には、クライアントIPアドレスを使用して暗号化された値である2つの16進バイトが必要です。 SECIDパラメーターは、他のいくつかのコマンドの引数としても使用されます。 訪問者をリダイレクトするためにバックドアが使用するURLは、この特定の方法を使用すると考えています。 これらのアドレスに関する情報は、共有メモリを使用して暗号化された形式で保存されます。 また、リダイレクトの条件が次のように設定されていることも明らかです。リダイレクトを事前に構成できるユーザーエージェントのホワイトリストと、リダイレクトが実行されないIPアドレスのブラックリスト。



バックドア「DU」、「ST」、「T1」、「L1」、「D1」、「L2」、「D2」、「L3」、「D3」、「L4」、「D4」がサポートするコマンドの完全なリスト、「L5」、「D5」、「L6」、「D6」、「L7」、「D7」、「L8」、「D8」、「L9」、「D9」、「LA」、「DA」。



バックドアは、以下のスクリーンショットに示すように、HTTPヘッダーのETagパラメーターを使用してそのステータスを維持します。 これらの各チームの目的については現在調査中であり、分析が完了次第公開します。 要するに、それらはすべて、構成の内容を共有メモリブロックに追加するか、そこから削除することを目的としています。







前述したように、共有メモリブロックへのアクセス権により、システムで実行されているプロセスへのアクセスが許可されます。 システム管理者がこのようなメモリブロックの存在を確認してファイルに保存するのに役立つ無料のツール( dump_cdorked_config.py )を開発しました。 また、DebianおよびUbuntuシステムではdebsumsツールを使用し、Apacheサーバーのモジュールの整合性を確認するRPMベースのLinuxシステムでは「rpm –verify」コマンドを使用することをお勧めします。 共有メモリブロックの確認は、感染していないことを確認するための推奨される方法です。 私たちのアンチウイルス研究室は、さらなる分析のためにそのようなメモリダンプを受け取ることに興味があります。



執筆時点で、ESET Live Gridの脅威追跡システムは、このバックドアによって侵害された数百のWebサーバーを示しています。 同時に、これらのサーバーへの何千人もの訪問者が悪意のあるコンテンツにリダイレクトされました。 近い将来、Linux / Cdorked.Aの状況に関する詳細情報を公開します。



All Articles