Articles - Malware |
2006年3月にハッカージャパン誌に寄稿した記事です。初稿にほとんど修正を加えず掲載しておりますので、古い情報であることにご注意ください。
クラッカーの利用する「ボットネット」とは?
ここ数年のインターネットの爆発的な普及とブロードバンドによる回線速度の向上により、クラッカーのターゲットには、企業などのサーバーに加えて一般ユーザーのコンピュータも含まれている。個人のコンピュータは、多くの脆弱性を持ちながらも無防備に放置されているケースが少なくない上、高速な回線であれば様々な用途に利用できるからだ。
■図1:ボットネットは、司令塔となるIRCサーバーに設置されたチャンネルから、感染したコンピュータを自由に操ることができる。
もちろん、そのようなコンピュータを平気で放置しているようなユーザーは、セキュリティ意識が低いため、長期に渡って気がつかれる可能性が高い。つまり、攻略面と管理面でサーバーの管理者を相手にするのに比べれば楽勝のターゲットであり駒(兵隊)となるわけだ。
一般ユーザーを狙ってボットに感染させる
個人のコンピュータをターゲットとしたツールの中でも、「リモートアドミンツール(RAT)」や、情報の入手を目的とした「キーロガー(スティール機能が含まれるツールも含む)」、そして今回紹介する「ボット」などを、クラッカーは好んで利用する。
マルウェアを利用するクラッカーの意識が以前のように自己顕示欲を満たすというものから、情報の収集および金銭目的などにシフトしつつあるため、それに群がるスキャマー(詐欺師)も少なくない。具体的には、クレジットカード番号やネットバンク情報のトレードや、ネット広告収入の不正な取得、スパムおよびフィッシングメールの発信などが挙げられる。
ボットネットについては、ニュース記事や本誌の記事の中でも度々に目にする機会があるため、既にその単語くらいはに目にしている読者が多いだろう。ボットネットで利用されるボットとは、そのほとんどがIRC ボットのことを差しており、IRCサーバーに設置されたチャンネルから、自由に感染したコンピュータを操るために利用する。彼らが有するボットネットには小規模なものから数万~数十万というボットを抱える大規模なものまで存在している。
ターゲットのセキュリティレベルは?
RATは、FWB(ファイヤーウォールバイパス機能)や改変などにより、アンチウイルスソフトやルーターおよびパーソナルファイヤーウォールをすり抜けるものも少なくないが、ボットの場合はそれよりもセキュリティレベルの低いユーザーが主なターゲットとなる。
たとえば、ルーターが設置されていない環境(直接接続)で、セキュリティアップデートやアンチウイルスソフトの定義ファイルアップデートなどにも無頓着といったユーザーである。ボットへ感染させるのは無差別なコンピュータであるため、特定のコンピュータを攻略する際の事前調査などは必要ない。片っ端からアタックさせればいいだけだ。
ソースコードを入手して生成する
RATではクライアントのメニューに用意されているサーバ作成モードを用いるか、予め用意されているRATサーバをエディターで編集するなどしてサーバを作成するが、ボットの場合にはソースコードを入手してユーザー側で設定ファイルを編集し、コンパイルしてボットを生成することがほとんどだ。
主なボットはC++で作成されており、MicrosoftVisual C++ 6.0などは、ボットユーザーのコミュニティでは日常的にトレード(Warez)されている。また、初心者向けにコンパイルについてのチュートリアルも出回っているため、なんの知識が無くても誰でも簡単にボットを作成することができてしまう。
コミュニティ
クラッカーのコミュニティでは、ソースコードに手を加えてプログラミングを行うCoderやボットのソースを入手して利用するだけのユーザ、そしてボットのソースを集めてトレードするコレクターなど、様々なユーザーが集まって情報交換を行っている。コミュニティは、IRCチャンネルやWebサイト(フォーラムも含む)などに存在しているが、内容によっては特定のメンバーのみが閲覧できるようプロテクトされている場合もある。
プライベートバージョンのソースコードや「11k(11,000)のボットネットを譲るよ(貸すよ)。メールはこちらまで」といったボットネットの売買から、0-dayを含むExploits情報、発見したボットネットなどについてもやりとりされている。
■図2:コミュニティで公開されるプライベートFTPにログインした例。ボットのソースコードからパッカー、Exploisコードなど様々なファイルが交換されている。
通信を暗号化するボットも存在する
ボットを使えば、脆弱性を利用したスキャンおよびアタック、インストールといった一連の作業を自動化できるため、ほっておけばボットの感染を広げていくことができるわけだが、こういった拡散を目的に使用するボットとは別に、通信を暗号化して、Honeypotなどによる検出を防ぐボットも存在する。
ボットの多くはアップデート機能を有しているため、拡散ボットで脆弱性を利用して感染拡大させた後に、アップデート機能を用いて通信を暗号化できるボットや新たなボットなどへ入れ替えることもできる。