ルートキット(root kit)の中には、オペレーティングシステムの階層まで深く入り込み、自らを隠蔽する悪質なものが存在する。ほかのマルウェアが侵入し、攻撃するのを補佐するようなツールが含まれているため、いったん感染すると被害が大きくなりやすい。一般的なセキュリティソフトでも検知が難しく、多層的な防御が必要となる。また、ダークウェブではルートキット、あるいはエクスプロイトキットが取り引きされ、多くの悪意ある攻撃者の手に渡っているとも言われている。本記事では、ルートキットの概要やエクスプロイトキットとの違いを紹介し、ルートキットに対して講じるべき対策について解説する。
ルートキットとは?
ルートキットは、コンピューターに潜伏し不正アクセスを手助けするツールがパッケージ化されたものを指す。管理者権限を意味する「ルート」が攻撃対象として狙われるため、被害が大きくなるリスクが高い。直接的な被害を与えるよりも、バックドアとして機能するなど、ほかのマルウェアの活動を補佐するルートキットが多い。ルートキットには以下のようなツールが含まれる。
ログ改ざんツール
マルウェアの侵入を隠蔽し、マルウェアやルートキット自体の検知・駆除を遅らせる
バックドア生成ツール
ルートキットの侵入口が防がれても、ほかのマルウェアが再び侵入できるよう裏口(バックドア)を設ける
トラフィック監視ツール
ネットワークを介してやり取りされるデータを盗聴する
キーロガーツール
キーボード入力を盗み見てログを記録する。キーボード入力から個人情報や機密情報を抽出し、他のコンピューターへ送信する
また、ルートキットには二つのモードが存在し、それぞれ特徴が異なる。
ユーザーモード
感染すると、アプリケーションのプロセスを乗っ取られる、あるいはアプリケーションが使用するメモリーが上書きされてしまうといった被害につながる。
カーネルモード
OSの最下層で実行されるもので、感染するとコンピューターは完全に制御され、自由に操作されてしまうようになる。
カーネルモードのルートキットは数が多くないものの、感染した場合は被害が大きくなり、検出や駆除も困難になるという特徴がある。
ルートキットの感染経路には、いくつかの種類が考えられる。まず、オペレーティングシステムやアプリの脆弱性に対する攻撃が挙げられ、バグや仕様上の欠陥を悪用し、侵入がなされる。また、USBメモリー、CD-ROMなどの物理メディアによる感染リスクもある。内容のわからない、外部から入手したメディアを安易に読み込んでしまうと、コンピューターへの侵入を許してしまうのだ。さらに、迷惑メールや社内の人間を装った不審なメールに添付されたファイルにルートキットが含まれ、ファイルを開いてしまったがために感染してしまう可能性もある。
ルートキットはセキュリティソフトによる検知を避けるため、OSの奥深い領域で動作するよう設計されているものが多い。通常のセキュリティソフトとは異なる、専用のルートキットスキャナーなどを使い、プロセス監視による検知を目指すが、実際のところ、これらの検知は非常に難しいとされる。加えて、たとえ検知に成功したとしても、ルートキットを駆除するのに多くの時間を要する。ルートキットの対応策として、OSの再インストールが選択されるケースが多いのには、そういった背景がある。
エクスプロイトキットとの違い
ルートキットと似たものとして、OSやアプリケーションの脆弱性を狙うエクスプロイトキットがある。エクスプロイトキットは、エクスプロイト攻撃のためのツールを束ねたパッケージである。
エクスプロイトの攻撃は主に、「DDoS攻撃」と「権限昇格攻撃」が挙げられる。「DDoS攻撃」はサービスの停止や障害の誘発を図るもので、「権限昇格攻撃」は管理者権限でしか実行できないアプリケーションのインストールやフォルダーへのアクセスを行う。
エクスプロイトキットによって、マルウェアのインストール、重要なファイルを不正にコピーした情報漏えい、起動ファイルの破壊、ファイアウォールを回避した不正なアクセスといった攻撃を受けるリスクが高まる。
エクスプロイトによる攻撃では、Adobe Flash Playerなどのソフトウェアの脆弱性を狙い、悪意ある第三者が攻撃を仕掛ける。エクスプロイトキットを用いれば、技術レベルが高くない人でも、このようなエクスプロイト攻撃を実行できてしまう点が特徴となる。ダークウェブ上でエクスプロイトキットが取り引きされることで、世界中にそのエクスプロイトキットが拡散される懸念がある。
エクスプロイトキットは脆弱性を利用して、他のコンピューターに侵入することを目的としている。一方、ルートキットは、管理者権限を取得して、コンピューターを支配するのを目的としている点が、エクスプロイトキットとは異なる。
ルートキットに対して講じるべき対策
先述の通り、ルートキットは検知・駆除が難しいことから、丁寧な予防策を講じることが重要となる。また、アプリケーションからOSまでが攻撃対象になるため、多元的な防御が求められる。予防的な対策としては、まず基本的なセキュリティ対策を実行に移さなければならない。ルートキットもエクスプロイトキット同様に脆弱性を突いて侵入する。異なるのは、管理者権限を狙う攻撃のため、セキュリティソフトの更新やOSのアップデートをタイムリーに実施しておくことが重要となる。また、添付ファイルからの感染もよく見られるため、不審なメールの開封を避けることを心がけること。USBメモリーなど物理メディアの利用を制限することも必要だろう。さらに、組織内にそのポリシーを周知・徹底していくことで、企業内ネットワーク全体のリスク軽減を目指す。
Web上には悪意ある攻撃者がルートキットを感染させるよう、周到な罠を設けているので、不審なリンクをクリックしないというポリシーも制定する必要がある。また、悪意あるWebサイト、乗っ取られたWebサイトなどから、ルートキットがインストールされてしまうリスクもある。フリーウェアを含め、怪しいプログラムをインストールしないよう努め、信頼できるソフトウェアのみ利用を許可するような取り組みが求められる。加えて、マルウェアの攻撃によってデータが失われたり、ルートキットを駆除するためにOSの再インストールを行ったりする際に、速やかに業務に復帰できるように、定期的なバックアップを実行することもルール化すべきだろう。
ルートキットの中でも特に、カーネルモードのルートキットの場合、一般的なセキュリティソフトが監視対象とするアプリケーションレベルよりも深いOSレベルで動作しているため、検知が難しいという課題がある。ESET社が発見したルートキット「LoJax」は、OSのさらに奥にあるファームウェアに潜入する。そのため、OSを再インストールしても駆除できないのが大きな特徴だ。
LoJaxを含め、UEFI(Unified Extensible Firmware Interface)レベルまで入り込んだルートキットをソフトウェアで検知するのは難しい。今回、ESET社はLoJaxの検出に成功している。検出できたことで、被害が拡大することを抑制したことは高く評価されている。しかし、LoJaxのようなルートキットを駆除するにはファームウェアの初期化、マザーボード・ハードウェアの交換が必要になるなど、被害は大きなものとなってしまう。
このように、ルートキットの特徴は、検知・駆除が困難だという点に尽きる。そのため、適切な対策を講じ、組織全体に徹底することで、まず感染しないように最大限の努力を重ねるようにしたい。また、感染時に素早い復旧を可能とするためにも、常時バックアップを実行しておくことだ。侵入を防ぐことだけに偏りすぎず、多元的に対策を講じておくことが、ルートキットからの被害を抑制するポイントということは頭に入れておきたい。