rootkit ってなぁに?
海外でコピーコントロール CD に rootkit が組み込まれたことが話題になっています。
ITmediaニュース:SONY BMGのコピー防止CDがrootkitを組み込む
「ソニーがrootkitをPCに組み込んでいる」との議論が浮上している。SONY BMG MUSIC ENTERTAINMENTがオーディオCDのコピーコントロールのために使っている技術は、マルウェアの1種であるrootkitに類似した技術を用いていると、セキュリティ企業F-Secureのブログでは指摘している。
実はこのニュース自体はたいした興味はなく。 善意のソフトはアプリケーション、悪意のソフトはウイルス、マルウェア、トロイの木馬、その他もろもろ。 素行が違えど、同じソフトウェア。 🙂
気になるのは、rootkit ってなぁに、どんな動作をするのってところです。
ぼくの rootkit の理解は、
UNIX 系の OS に対して、進入、ログ消去、バックドア開放、そしてバックドアを見つからないようにシステムを改変する。 という一連の作業を、一発で行うソフトウェア群。
でした。 で、今回はコピーコントロールCD にはいっていたのは Windows に対する rootkit。
え、Windows なんかみんな Administrator で使ってるんじゃないの? 😛 ユーザが勝手にソフト動かしてくれるなら rootkit なんかいらないじゃん、っておもいつつ他の記事を当たってみると次のことだったようです。
Rootkit(ルートキット)とは、ファイル、レジストリ・キー、そのほかのシステム・オブジェクトを、診断ソフトやセキュリティ・ソフトウェアから隠ぺいする技術のことだ。
なるほど、なるほど、動いているソフトウェアを「見えなくする」技術を rootkit と呼んでいたようです。 で、やり方はというと・・・
WindowsはAPIごとに定められた内部サービス番号に基づいて、インデックス付けされたテーブルを持っている。このテーブル内には、Windows アプリケーションから使用できるカーネル・サービスへのポインタが格納されている。ドライバが、このテーブル内のエントリを、ドライバ自身のファンクションへのポインタに書き換えれば、カーネルはアプリケーションがAPIを実行するたびにドライバのファンクションを呼び出すことになる。これによりドライバがAPIの挙動を制御できるようになるというわけだ。
はー、なるほど。 ジャンプテーブルを hook してしまうのですね。 でもって自分にとって都合の悪い(ファイルをみせたくないとか、タスクマネージャに表示させたくないとか)ときに違う結果を返してしまうらしい。
妙なソフト入れられても、レジストリ見たり、タスクマネージャでプロセス見れば大丈夫だもんね~ってのが無効にされる可能性があるということですね。
先の記事は、解析手法も詳しく載っていますので興味のある方はお勧めです。