Video Screencast Help
Symantec to Separate Into Two Focused, Industry-Leading Technology Companies. Learn more.
Security Response

Tidserv の起動手口

Created: 28 Aug 2010 04:28:52 GMT • Translations available: English
Piotr Krysiuk's picture
0 0 Votes
Login to vote

このブログ記事では、最近発見された Tidserv の亜種について引き続き分析します。Tidserv は 64 ビットの Windows オペレーティングシステムにも感染するトロイの木馬です。シマンテックでは、昨日、Tidserv の概要を掲載しましたが、本日は、Tidserv が 32 ビットおよび 64 ビットのオペレーティングシステムに自分自身をどのようにインストールするかについて詳しく説明します。

Backdoor.Tidserv.L は 32 ビット版 Windowsの実行可能ファイルとして入り込んだ後、稼動中の Windows が 32 ビット版か 64 ビット版かを検査し、アーキテクチャ固有のインストール方法を選択します。システムが 32 ビット版であることがわかった場合、Tidserv の以前の亜種と同じ方法で必要な権限を取得します。つまり、Print Spooler サービスとして自分自身を実行します。次に、32 ビット版の悪意あるカーネルドライバを投下し、Windows カーネルに読み込ませます。ドライバが読み込まれると、感染によってマスターブートレコード(MBR)が悪意あるものに置き換えられます。

その後、バックドアコンポーネントと設定データのコピーが、ハードディスクの最後尾にある、通常は使用されない領域に保存されます。バックドアがディスクに書き込む悪意あるデータはすべて暗号化されています(ただし、MBR コードの最初の 42 バイトを除きます)。悪意ある MBR が存在し、ハードディスクの最後尾にバックドアコンポーネントが保存されていると、Windows が起動されるたびにバックドアが実行されます。Windows パーティションには Tidserv コードが書き込まれないため、MBR を正常なものに戻さないかぎり、Windows を再インストールしても Tidserv は生き残ることができる可能性があります。

64 ビット版の Windows の場合、署名付きのカーネルドライバが必要なため、Tidserv のインストール方法も異なります。悪意あるカーネルドライバには署名がないので、バックドアは稼動中のシステムにこれらのドライバを直接読み込もうとはしません。ではどうするかというと、MBR にドロッパが感染し、これがユーザーモードでハードディスクの最後尾にバックドアを直接コピーした後、コンピュータを強制的に再起動するのです。コンピュータが再起動されると、バックドアが Windows カーネルに読み込まれます。

Tidserv の読み込み方法は、Windows 32 ビット版でも 64 ビット版でも同じです。システムを起動すると、悪意ある MBR が実行されます。この悪意ある MBR がハードディスクの最後尾の暗号化された領域から、Tidserv の「ldr16」というコンポーネントを読み込みます。「ldr16」の目的は、Windows の読み込みで後で使用される、BIOS のディスク読み取り機能を横取り(フック)することです。

「ldr16」は次に、(感染時に保存しておいた)元の MBR のコピーを読み込み、実行します。Windows で読み込みが始まると、Windows パーティションから読み取られたファイルを「ldr16」が横取りして調べ、バックドアがメモリに読み込まれるように改変します。具体的には、「ldr16」が横取りして改変するのは起動設定データです。この起動設定データは、カーネルドライバの署名の検証ポリシーに影響することがあります。

64 ビット版の Windows では署名付きカーネルドライバが必要とされているため、Backdoor.Tidserv.L はこの読み込み方法を選択することで問題を迂回しようとします。また、この方法なら、Windows パーティションのファイルが改変されていなくても、バックドアをメモリに読み込ませることができます。この方法は新しいものではなく、数年前から見られます。すでに同じようなコンセプトが開発され、Stoned Bootkit や Vbootkit などのフレームワークに実装されています。そればかりか、Tidserv で使用されているいくつかのコード断片は、インターネット上で確認されているほかのコードを基にしたもののようです。ただし、コードの品質に関して複数の問題がある点から、この脅威は初期バージョンである可能性があると思われます。

----------------------------------------------

備考: 分析用の追加サンプルをご提供いただいた Emsisoft チームに感謝いたします。