Windows 10でルートキットを検出する方法:包括的なガイド
ハッカーはルートキットを使って、デバイス内に永続的で一見検知不可能なマルウェアを潜ませます。このマルウェアは、時には何年もかけてデータやリソースを密かに盗み出します。また、キーロガーとして利用されることもあります。キーロガーは、キー入力や通信内容を監視し、攻撃者に機密情報を提供します。

このハッキング手法は、Microsoft Vistaがすべてのコンピュータドライバへのデジタル署名を義務付ける以前の2006年以前、より大きな重要性を持っていました。カーネルパッチ保護(KPP)により、マルウェア作成者は攻撃手法を変え、2018年現在、 ザシンロ広告詐欺ルートキット プログラムが再び注目を集めています。
2006年以前のルートキットはすべてオペレーティングシステム固有のものでした。Detrahereマルウェアファミリーに属するルートキットであるZacinloは、ファームウェアベースのルートキットという形で、はるかに危険なものをもたらしました。しかしながら、ルートキットは年間のマルウェア発生量全体のうち約1%を占めるに過ぎません。
しかし、それらがもたらす危険性を考慮すると、ルートキット検出の仕組みを理解して、すでにシステムに侵入している可能性のあるプログラムを特定しておくことが賢明です。
Windows 10 のルートキットの検出(詳細)

Zacinloは、Windows 10オペレーティングシステムを標的として、発見される以前から既に6年近く活動していました。このルートキットコンポーネントは高度な設定が可能で、自らの機能にとって危険と判断される操作から自身を保護し、SSL通信を傍受して復号することができました。
すべての設定データを暗号化してWindowsレジストリに保存し、Windowsのシャットダウン時にメモリからディスクに別の名前で自身を書き換え、レジストリキーを更新します。これにより、標準的なウイルス対策ソフトウェアによる検出を回避できます。
これは、標準的なウイルス対策プログラムやマルウェア対策プログラムではルートキットの検出が不十分であることを示しています。ただし、ルートキット攻撃の疑いがある場合に警告を発する高度なマルウェア対策プログラムもいくつかあります。
優れたウイルス対策プログラムの5つの必須特性

今日の主要なウイルス対策プログラムのほとんどは、隠されたルートキットを検出するためのこれら 5 つの主要な方法すべてを実装しています。
- シグネチャベースの分析 ウイルス対策ソフトウェアは、登録されたファイルを既知のルートキットシグネチャと比較します。また、ポートの集中的な使用など、既知のルートキットの動作を模倣する動作パターンも分析します。
- 異議申し立ての開示 Windowsオペレーティングシステムは、ルートキットを起動するコマンドを実行するためにポインタテーブルを使用します。ルートキットは脅威と認識したものを置き換えたり変更したりしようとするため、システムにその存在を警告します。
- 複数ソースデータの比較 隠蔽ルートは、その存在を隠蔽するために、標準スキャンで表示されるデータの一部を変更する可能性があります。高レベルおよび低レベルのシステムコールからの戻り値によって、隠蔽ルートの存在が明らかになる場合があります。また、プログラムはRAMにロードされたプロセスメモリとハードドライブ上のファイルの内容を比較することもあります。
- 安全確認 各ライブラリには、システムが「クリーン」であると判断されたときに作成されるデジタル署名システムがあります。優れたセキュリティ ソフトウェアは、ライブラリをスキャンして、デジタル署名の作成に使用されるコードの変更を検出できます。
- 登録の比較 ほとんどのウイルス対策プログラムは、事前に定義されたスケジュールでこれらの比較を実行します。クリーンなファイルとクライアントファイルをリアルタイムで比較し、クライアントファイルが不要な実行ファイル(.exe)であるかどうか、または不要な実行ファイルが含まれているかどうかを判断します。
隠れたルートの検査を行う

ルートキット感染を検出するには、ルートキットスキャンを実行するのが最善の方法です。多くの場合、オペレーティングシステムはルートキットを単独では検出できないため、その存在を検出するのは困難です。ルートキットは高度なスパイウェアプログラムであり、その活動をほぼあらゆる場面で隠蔽し、人目につかない場所に潜伏することが可能です。
コンピュータがルートキットウイルスに感染している疑いがある場合、有効な検出戦略として、コンピュータをシャットダウンし、クリーンであることが確認されているシステムからスキャンを実行することが挙げられます。コンピュータ上のルートキットを確実に検出する方法の一つは、メモリダンプを解析することです。ルートキットは、コンピュータのメモリ内で実行される命令をシステムから隠蔽することはできません。
マルウェア分析にWinDbgを使用する

Microsoft Windowsには、アプリケーション、ドライバー、またはオペレーティングシステム自体のデバッグチェックに使用できる独自の多機能デバッグツールが用意されています。カーネルモードおよびユーザーモードのコードエラーのデバッグ、クラッシュダンプの分析、CPUログの調査などに使用できます。
一部のWindowsシステムには、 WinDbg すでにバンドルされています。お持ちでない方は、Microsoft Store からダウンロードする必要があります。 WinDbgプレビュー これは WinDbg の最新バージョンであり、より見やすい画像、より高速なウィンドウ、完全なスクリプト、および元のバージョンと同じコマンド、拡張機能、ワークフローを提供します。
WinDbg を使えば、少なくともメモリダンプやクラッシュ(ブルースクリーン・オブ・デス(BSOD)を含む)を解析できます。その結果から、マルウェア攻撃の兆候を探すことができます。プログラムがマルウェアによって妨害されている、あるいは必要以上にメモリを使用している疑いがある場合は、ダンプファイルを作成し、WinDbg を使って解析することができます。
完全なメモリ ダンプは大量のディスク領域を占有する可能性があるため、部分的なダンプを実行する方がよい場合があります。 カーネルモード あるいは、小さなメモリダンプを使用することもできます。カーネルモードダンプには、クラッシュ発生時のカーネルによるメモリ使用情報がすべて含まれます。小さなメモリダンプには、ドライバ、カーネル、Plusなど、様々なシステムに関する基本情報が含まれますが、サイズははるかに小さくなります。
BSODの原因分析には、小さなメモリダンプの方が有用です。ルートキット検出には、フルバージョンまたはカーネルバージョンの方が有用です。
カーネルモードダンプファイルを作成する

カーネルモード ダンプ ファイルは、次の 3 つの方法で作成できます。
- コントロール パネルからダンプ ファイルを有効にして、システムが自動的にクラッシュできるようにします。
- コントロール パネルからダンプ ファイルを有効にして、システムを強制的にクラッシュさせます。
- デバッグツールを使用して作成します
オプション3を選択します。
必要なダンプ ファイルを実行するには、WinDbg コマンド ウィンドウに次のコマンドを入力するだけです。

交換 ファイル名 トランスクリプトファイルに適切な名前と「?」文字 f「f」が小文字であることを確認してください。そうでない場合、異なる種類のダンプ ファイルが作成されます。
デバッガーが作業を完了すると (最初のスキャンには数分かかります)、ダンプ ファイルが作成され、取得した結果を分析できるようになります。
揮発性メモリ(RAM)の使用など、ルートキットを検出するために何に注意すべきかを理解するには、経験とテストが必要です。初心者にはお勧めできませんが、マルウェア検出技術を実稼働システムでテストすることは可能です。ただし、そのためには、実稼働ウイルスを誤ってシステムに拡散させないように、やはり経験とWinDbgの仕組みに関する十分な理解が必要です。
隠れた敵を発見するには、より安全で初心者にも優しい方法があります。
追加のスキャン方法

手動検出と動作分析も、ルートキット検出の信頼できる方法です。ルートキットの特定は非常に困難になる可能性があるため、ルートキット自体をターゲットにするのではなく、ルートキットに似た動作を探すことをお勧めします。
ダウンロードしたソフトウェアパッケージにルートキットが含まれていないか確認するには、インストール時に詳細オプションまたはカスタムインストールオプションを選択してください。確認すべきは、詳細画面に表示される見慣れないファイルです。これらのファイルは削除するか、マルウェアの兆候がないかオンラインで簡単に検索してください。
ファイアウォールとそのログレポートは、ルートキットを検出する非常に効果的な方法です。このソフトウェアは、ネットワークが監査されている場合に通知し、インストール前に認識できない、または疑わしいダウンロードを隔離します。
デバイスにすでにルートキットが存在している可能性があると疑われる場合は、ファイアウォールのログ レポートを詳しく調べて、異常な動作がないか調べることができます。
ファイアウォールのログレポートを確認する

現在のファイアウォールのログレポートを確認する必要があり、オープンソースアプリケーションでは、 IPトラフィックスパイ ファイアウォールのログフィルタリング機能を備えたこのツールは非常に便利です。レポートには、攻撃発生時に確認すべき情報が表示されます。
送信トラフィックをフィルタリングするための別のファイアウォールを備えた大規模なネットワークの場合は、 IPトラフィックスパイ 必須です。または、ファイアウォールのログを介して、ネットワーク上のすべてのデバイスとワークステーションへの受信パケットと送信パケットを確認できる必要があります。
自宅でも小規模な職場でも、インターネットサービスプロバイダー(ISP)が提供するモデム、あるいはパーソナルファイアウォールやルーター(お持ちの場合)を使ってファイアウォールログを取得できます。これにより、同じネットワークに接続されている各デバイスのトラフィックを特定できます。
Windowsファイアウォールのログファイルを有効にすることも役立つかもしれません。デフォルトではログファイルは無効になっており、情報やデータは書き込まれません。
- ログファイルを作成するには、 Windowsキー+ R.
- タイプ wf.msc ボックスに入れてを押します Enter.

- 「セキュリティが強化されたWindowsファイアウォール」ウィンドウで、左側のメニューから「ローカルコンピューター上のセキュリティが強化されたWindows Defenderファイアウォール」を選択します。右端のメニューの「操作」の下にある「 特性.

- 新しいダイアログウィンドウで、「プライベートプロフィール」タブに移動し、 カスタマイズ「ログ記録」セクションにあります。

- 新しいウィンドウでは、書き込むログ ファイルのサイズ、ファイルの送信先、ドロップされたパケットのみ、成功した接続のみ、またはその両方をログに記録するかどうかを指定できます。

- ドロップされたパケットは、Windows ファイアウォールによってブロックされたパケットです。
- デフォルトでは、Windowsファイアウォールのレジストリエントリは最後の4MBのデータのみを保存し、次の場所にあります。 %SystemRoot%System32LogFilesFirewallPfirewall.log
- ログの最大データ使用量制限を増やすと、コンピューターのパフォーマンスに影響する可能性があることに注意してください。
- クリック OK あなたが完了したとき。
- 次に、「プライベート プロフィール」タブで実行したのと同じ手順を、今度は「パブリック プロフィール」タブで繰り返します。
- 公開および非公開の通信の両方について記録が作成されます。ファイルはメモ帳などのテキストエディタで表示したり、スプレッドシートにインポートしたりできます。
- ログ ファイルを IP Traffic Spy などのデータベース分析プログラムにエクスポートして、トラフィックをフィルタリングおよび並べ替え、簡単に識別できるようになりました。
ログファイルに異常がないか注意してください。ほんのわずかなシステム不具合でも、隠れたルートキット感染の兆候となる可能性があります。負荷の高い処理を実行していない、あるいは全く実行していないにもかかわらず、CPUや帯域幅を過剰に使用しているといった状況は、重要な手がかりとなる可能性があります。
コメントは締め切りました。