実行されましたか?

悪意のある実行ファイルが見つかりました!ここで、答えなければならない重要な質問があります。ファイルは実行されましたか?この質問に答えるために使用できるいくつかの証拠の情報源について説明します。この投稿では、Windows システムでの静的または「デッド ドライブ」のフォレンジックに焦点を当てます。 Windows プリフェッチ、レジストリ、ログ ファイル、およびファイル情報という 4 つの主要な証拠ソースについて説明します。

プリフェッチ

Windows プリフェッチは、ファイル実行の証拠を探し始めるのに適した場所です。 Microsoft は、一般的に使用されるプログラムをより速く開くことができるように、Windows プリフェッチを設計しました。デフォルトでは、「C:WindowsPrefetch」にあるプリフェッチ ファイルに、最後に実行された 128 個のファイルの情報が保存されます。プリフェッチ ファイルは、「実行ファイル名」+ファイル パスのハッシュ+.pf という名前になります。プリフェッチ ファイルには、最初と最後の実行日、ファイル パス、実行回数、およびプロセス実行の最初の 10 秒以内にロードされたファイルが格納されます。そのため、マルウェアのファイル名/パス ハッシュが「DABEARS.EXE-12F3B52A.pf」という名前のプリフェッチ ファイルとして表示される場合、そのファイルが実行されたことがわかります。注: Windows サーバーでは、プリフェッチはデフォルトで無効になっています。

レジストリ

ご想像のとおり、Windows レジストリには、Windows の舞台裏で行われていることに関する膨大な量の情報が含まれています。レジストリは非常に大きいため、以下のリストは包括的ではありませんが、ファイルの実行を判断するために調査する主なレジストリ キーを示しています。

1.シムキャッシュ

Microsoft は、アプリケーションの互換性の問題を特定するために、ShimCache (「AppCompatCache」) を作成しました。キャッシュ データは、ファイル パス、サイズ、最終変更時刻、および最終「実行」時刻 (OS によって異なります) を追跡します。ファイルが Windows の「createprocess」で実行されると、ShimCache にログが記録されます。 ShimCache 内のファイルの存在は、ファイルの実行を 100% 証明するわけではありませんが、Windows がファイルと対話したことを示しています。次のキーには ShimCache データが含まれています: “HKLMSYSTEMCurrentControlSetControlSession ManagerAppCompatibilityAppCompatCache (XP) および “HKLMSYSTEMCurrentControlSetControlSession ManagerAppCompatCacheAppCompatCache” (非 XP)。ShimCache の詳細については、Andrew Davis のブログ エントリ (こちら) または Mandiant の SANS DFIR カンファレンス プレゼンテーション (こちら) を参照してください。

2.MUIキャッシュ

ファイルが Windows エクスプローラーを介して実行されると、プログラム シェルは MUICache にエントリを作成します。このプロセスについては、 Windows Incident Response ブログに詳しい記事があります。 Windows は MUICache を使用して、リソース セクションの PE バージョン情報から取得したアプリケーション名を格納します。情報は次のキーに保存されます。

  • 「HKCUSoftwareMicrosoftWindowsShellNoRoamMUICache」(XP、2000、2003)および
  • 「HKCUSoftwareClassesLocal SettingsSoftwareMicrosoftWindowsShellMuiCache」(Vista、7、2008)。

3.ユーザーアシスト

UserAssist は、エクスプローラーで開かれた実行可能ファイルとリンクを追跡します。 UserAssist キーは、レジストリ キー “HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist” でファイルが最後に実行された時刻と実行回数を追跡します。実行可能ファイル名とファイル パスに対応する UserAssist キーの下の値は、ROT13 で暗号化されます。その結果、デコードする前にキーワード検索を行うと、このキー内の証拠を見逃す可能性があります。 RegRipper userassist.pl プラグインなど、キーを復号化するためのツールは多数あります

ログファイル

ファイルの実行を判断するために分析できるログがいくつかあります。このログはサービスの開始を記録するため、Windows システム イベント ログから開始します。図 1 のイベントは、管理者 (SID=”-500″) が PSEXECSVC リモート実行サービスを実行したことを示しています。

Event ID 7035 - Service start
図 1: イベント ID 7035 – サービス開始

サービスが開始されると、通常は ImagePath で指定されたファイルまたはロードされたサービス DLL が実行されます。たとえば、「Netman」サービスは、実行時に正当なファイル「netman.dll」を使用します。ただし、レジストリの ServiceDll に「tabcteng.dll」という名前のバックドアへのパスが含まれている場合、「Netman」サービスは代わりに「tabcteng.dll」を実行します。不審なサービスが開始されていないか、ImagePath および ServiceDlls 内のファイルを必ず検証してください。

Windows イベント ログの監査設定でプロセス追跡の監査が有効になっている場合、Windows セキュリティ イベント ログはプロセスに関する豊富な情報であり、ファイルの実行を明確に証明できます。図 2 と図 3 は、悪意のあるファイルと関連するプロセス ID、および親プロセス ID とユーザー名を示しており、詳細な調査に役立ちます。

Windows Vista 以降では同様のプロセス作成イベントが記録されますが、EventID は 4688 です。

監査機能は、新しいバージョンの Windows でより細かくなり、Windows Server 2008 R2 および Windows 7 以降のグループ ポリシーと統合されています。詳細な監査ポリシーの設定については、 こちらを参照してください。

この投稿で取り上げるベンダーは多すぎますが、ホストベースの IPS または AV 製品のログは、ファイルが実行されているか、別のファイルに対してアクションを試みているときに表示される場合があります。図 4 には、McAfee アクセス保護ログからのイベントの例が含まれています。

Windows のスケジュールされたタスク ログは、攻撃者がスケジュールされたタスクを使用してマルウェアを実行したかどうかを確認する場合があります。スケジュールされたタスクは、次のように「SchedLgU.txt」という名前のログ ファイルに記録されます。

Windows Vista 以降では、スケジュールされたタスクの実行は、ログ “Microsoft-Windows-TaskScheduler/Operational” イベント ログのイベント ID 200 および 201 にも記録されます。

最後に、アプリケーションがクラッシュした場合、ワトソン博士のログに悪意のあるタスクの実行が記録される場合があります。

ファイル機能

ファイルが実行されたかどうかを判断する別の方法は、出力ファイルを探すことです。悪意のあるファイルを分析したとき、データを作成するように構成されていましたか?たとえば、見つけた悪意のあるファイルがキーロガーで、関連するキーログ ファイルがシステムに存在する場合、攻撃者はそのファイルを実行した可能性があります。マルウェアが特定のドメイン名に接続するように構成されている場合、ブラウザーの履歴に関連するドメインが記録されている可能性があります。表 1 には、同じバックドアからブラウザ履歴にキャプチャされた 2 つの通信メカニズムの例が含まれています。

悪意のあるファイルが実行されたかどうかを判断するには、ファイルの機能を分析し、ディスク上で結果として生じる活動の証拠を探します。マルウェアの機能は、攻撃者の動機や最終目標を評価し、追加の悪意のあるファイルを明らかにするのにも役立ちます。

この投稿では、ファイルの実行を検出するために使用する証拠の主な情報源について説明しましたが、特に Windows Vista 以降では、マルウェアの実行の証拠を提供するレジストリ キーやその他の Windows ファイルが多数あります。同様に、システム メモリで見つかった情報は、ファイルの実行を証明する上でさらに価値があり、特定の攻撃者のコマンドやアクセスされたリソースを提供する可能性があります。そのため、実行中のシステムで悪意のある実行可能ファイルを見つけた場合は、他のことを行う前に必ずメモリをキャプチャしてください。 Mandiant Redline™でメモリをキャプチャして分析できます。

XP EventID 592 - プロセスの作成
図 2: XP EventID 592 – プロセスの作成

参考: https ://www.mandiant.com/resources/blog/execute

コメント

タイトルとURLをコピーしました