hacktricks/forensics/basic-forensic-methodology/windows-forensics
2023-07-07 23:42:27 +00:00
..
interesting-windows-registry-keys.md Translated to Japanese 2023-07-07 23:42:27 +00:00
README.md Translated to Japanese 2023-07-07 23:42:27 +00:00
windows-processes.md Translated to Japanese 2023-07-07 23:42:27 +00:00

Windowsのアーティファクト

Windowsのアーティファクト

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

一般的なWindowsのアーティファクト

Windows 10の通知

パス \Users\<username>\AppData\Local\Microsoft\Windows\Notifications には、データベース appdb.dat (Windows Anniversaryより前) または wpndatabase.db (Windows Anniversary以降) があります。

このSQLiteデータベース内には、興味深いデータを含むすべての通知XML形式が含まれる Notification テーブルがあります。

タイムライン

タイムラインは、訪れたウェブページ、編集されたドキュメント、実行されたアプリケーションの時系列の履歴を提供するWindowsの特徴です。

データベースはパス \Users\<username>\AppData\Local\ConnectedDevicesPlatform\<id>\ActivitiesCache.db にあります。このデータベースはSQLiteツールまたはツールWxTCmdで開くことができます。このツールは、2つのファイルを生成し、ツールTimeLine Explorerで開くことができます。

ADSAlternate Data Streams

ダウンロードされたファイルには、イントラネット、インターネットなどからのダウンロード方法を示すADS Zone.Identifierが含まれている場合があります。一部のソフトウェア(ブラウザなど)は、ファイルのダウンロード元のURLなどのさらなる情報を通常含んでいます。

ファイルのバックアップ

ゴミ箱

Vista/Win7/Win8/Win10では、ゴミ箱はドライブのルートにあるフォルダ**$Recycle.bin**にあります(C:\$Recycle.bin)。 このフォルダでファイルが削除されると、2つの特定のファイルが作成されます

  • $I{id}:ファイル情報(削除された日付)
  • $R{id}:ファイルの内容

これらのファイルを使用して、ツールRifiutiを使用して、削除されたファイルの元のアドレスと削除された日付を取得できますVista - Win10の場合はrifiuti-vista.exeを使用します)。

.\rifiuti-vista.exe C:\Users\student\Desktop\Recycle

ボリュームシャドウコピー

シャドウコピーは、使用中のコンピュータファイルやボリュームのバックアップコピーまたはスナップショットを作成できるMicrosoft Windowsに含まれる技術です。

これらのバックアップは通常、ファイルシステムのルートの\System Volume Informationにあり、次の画像に示すようなUIDで構成された名前です。

ArsenalImageMounterを使用してフォレンジックイメージをマウントすると、ツールShadowCopyViewを使用してシャドウコピーを検査し、シャドウコピーのバックアップからファイルを抽出することができます。

レジストリエントリHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\BackupRestoreには、バックアップしないファイルとキーが含まれています。

レジストリHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VSSには、Volume Shadow Copiesに関する構成情報も含まれています。

オフィスの自動保存ファイル

オフィスの自動保存ファイルは、次の場所にあります:C:\Usuarios\\AppData\Roaming\Microsoft{Excel|Word|Powerpoint}\

シェルアイテム

シェルアイテムは、別のファイルにアクセスする方法に関する情報を含むアイテムです。

最近のドキュメントLNK

Windowsは、ユーザーがファイルを開いたり使用したり作成したりするときに、これらのショートカット自動的に作成します。

  • Win7-Win10C:\Users\\AppData\Roaming\Microsoft\Windows\Recent\
  • OfficeC:\Users\\AppData\Roaming\Microsoft\Office\Recent\

フォルダが作成されると、そのフォルダへのリンク、親フォルダへのリンク、および祖父フォルダへのリンクも作成されます。

これらの自動作成されたリンクファイルには、ファイルまたはフォルダであるか、そのファイルのMACタイム、ファイルが保存されているボリューム情報、およびターゲットファイルのフォルダに関する情報が含まれています。これらの情報は、削除された場合にこれらのファイルを回復するのに役立ちます。

また、リンクファイルの作成日は、元のファイルが最初に使用された時間であり、リンクファイルの変更日は、元のファイルが最後に使用された時間です。

これらのファイルを検査するには、LinkParserを使用できます。

このツールでは、2つのセットのタイムスタンプが見つかります:

  • 最初のセット:
  1. FileModifiedDate
  2. FileAccessDate
  3. FileCreationDate
  • 2番目のセット
  1. LinkModifiedDate
  2. LinkAccessDate
  3. LinkCreationDate.

最初のセットのタイムスタンプは、ファイル自体のタイムスタンプを参照します。2番目のセットは、リンクされたファイルのタイムスタンプを参照します。

同じ情報を取得するには、WindowsのCLIツールLECmd.exeを実行できます。

LECmd.exe -d C:\Users\student\Desktop\LNKs --csv C:\Users\student\Desktop\LNKs

この場合、情報はCSVファイルに保存されます。

ジャンプリスト

これは、アプリケーションごとに示される最近使用されたファイルのリストです。各アプリケーションでアクセスできるアプリケーションが使用した最近のファイルのリストです。これらは自動的に作成されるか、カスタムで作成されることがあります。

自動的に作成されるジャンプリストは、C:\Users\{username}\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations\に保存されます。ジャンプリストは、初期IDがアプリケーションのIDである{id}.autmaticDestinations-msという形式に従って名前が付けられます。

カスタムジャンプリストは、C:\Users\{username}\AppData\Roaming\Microsoft\Windows\Recent\CustomDestination\に保存され、通常はアプリケーションによって作成されます。これは、ファイルに何か重要なことが起こった場合に行われることがあります(お気に入りとしてマークされたかもしれません)。

ジャンプリストの作成時刻は、ファイルが最初にアクセスされた時刻を示し、変更時刻は最後のアクセス時刻を示します。

JumplistExplorerを使用してジャンプリストを調査することができます。

JumplistExplorerによって提供されるタイムスタンプは、ジャンプリストファイル自体に関連しています

シェルバッグ

シェルバッグについては、こちらのリンクを参照してください。

Windows USBの使用

USBデバイスが使用されたことを特定することができます。その証拠として以下が作成されます。

  • Windowsの最近のフォルダ
  • Microsoft Officeの最近のフォルダ
  • ジャンプリスト

注意一部のLNKファイルは、元のパスの代わりにWPDNSEフォルダを指す場合があります。

フォルダWPDNSE内のファイルは、元のファイルのコピーです。したがって、PCを再起動するとファイルは残りません。GUIDはシェルバッグから取得されます。

レジストリ情報

USB接続デバイスに関する興味深い情報が含まれているレジストリキーは、こちらのページを参照してください。

setupapi

USB接続が行われたタイムスタンプを取得するには、ファイルC:\Windows\inf\setupapi.dev.logを確認します(Section startを検索)。

USB Detective

USBDetectiveを使用すると、イメージに接続されたUSBデバイスに関する情報を取得できます。

プラグアンドプレイのクリーンアップ

「プラグアンドプレイのクリーンアップ」というスケジュールされたタスクは、古いバージョンのドライバをクリアする責任を持っています。オンラインの報告に基づくと、「各ドライバパッケージの最新バージョンが保持される」と説明されているにもかかわらず、30日間使用されていないドライバも削除されるようです。したがって、30日間接続されていないリムーバブルデバイスのドライバが削除される可能性があります。

スケジュールされたタスク自体は、C:\Windows\System32\Tasks\Microsoft\Windows\Plug and Play\Plug and Play Cleanupにあり、その内容は以下の通りです:

タスクは、クリーンアップのアクティビティを実行するpnpclean.dllを参照しています。また、UseUnifiedSchedulingEngineフィールドがTRUEに設定されていることがわかります。これは、ジェネリックなタスクスケジューリングエンジンがタスクを管理するために使用されることを指定しています。MaintenanceSettings内のPeriodDeadlineの値が'P1M'と'P2M'であるため、タスクスケジューラは通常の自動メンテナンス中に1か月に1回タスクを実行し、2か月連続で失敗した場合は緊急の自動メンテナンス中にタスクを実行し始めます。このセクションはこちらからコピーされました

メール

メールには、ヘッダーとメールのコンテンツの2つの興味深い部分が含まれています。ヘッダーには、次のような情報が含まれています。

  • メールを送信したメールアドレス、IP、メールをリダイレクトしたメールサーバー
  • メールが送信された時刻

また、ReferencesIn-Reply-Toヘッダーの中には、メッセージのIDが含まれています。

Windowsメールアプリ

このアプリケーションは、メールをHTMLまたはテキスト形式で保存します。メールは、\Users\<username>\AppData\Local\Comms\Unistore\data\3\内のサブフォルダに保存されます。メールは.dat拡張子で保存されます。

メールのメタデータ連絡先は、EDBデータベース内にあります:\Users\<username>\AppData\Local\Comms\UnistoreDB\store.vol

ファイルの拡張子を.volから.edbに変更し、ツールESEDatabaseViewを使用して開くことができます。Messageテーブルの中にメールが表示されます。

Microsoft Outlook

ExchangeサーバーやOutlookクライアントを使用する場合、いくつかのMAPIヘッダーが表示されます。

  • Mapi-Client-Submit-Time:メールが送信されたシステムの時刻
  • Mapi-Conversation-Index:スレッドの子メッセージの数と各メッセージのタイムスタンプ
  • Mapi-Entry-ID:メッセージの識別子
  • Mappi-Message-FlagsおよびPr_last_Verb-ExecutedMAPIクライアントに関する情報メッセージを読んだ読まない返信済みリダイレクト済み外出中

Microsoft Outlookクライアントでは、送受信したメッセージ、連絡先データ、カレンダーデータは、

Outlook OST

Microsoft OutlookがIMAPまたはExchangeサーバーを使用して設定されている場合、ほぼ同じ情報を保存するOSTファイルが生成されます。このファイルは、最後の12ヶ月間サーバーと同期され、最大ファイルサイズは50GBで、PSTファイルと同じフォルダに保存されます。Kernel OST viewerを使用してこのファイルを検査することができます。

添付ファイルの回復

これらのファイルは次のフォルダに見つけることができるかもしれません:

  • %APPDATA%\Local\Microsoft\Windows\Temporary Internet Files\Content.Outlook -> IE10
  • %APPDATA%\Local\Microsoft\InetCache\Content.Outlook -> IE11+

Thunderbird MBOX

Thunderbirdは、MBOXファイルに情報を保存します。これらのファイルは、\Users\%USERNAME%\AppData\Roaming\Thunderbird\Profilesフォルダに保存されます。

サムネイル

ユーザーがフォルダにアクセスし、サムネイルを使用して整理すると、thumbs.dbファイルが作成されます。このdbは、削除された場合でも、フォルダの画像のサムネイルを保存します。WinXPおよびWin 8-8.1では、このファイルは自動的に作成されます。Win7/Win10では、UNCパス\IP\folder...)経由でアクセスされる場合に自動的に作成されます。

ツールThumbsviewerを使用してこのファイルを読み取ることができます。

Thumbcache

Windows Vista以降、サムネイルプレビューはシステム上の集中的な場所に保存されます。これにより、サムネイルの場所に関する問題が解決され、Thumbs.dbファイルの局所性の問題が解決されます。キャッシュは、%userprofile%\AppData\Local\Microsoft\Windows\Explorerにいくつかのファイルとして保存されます。これらのファイルには、サイズごとに番号付けされたthumbcache_xxx.dbというラベルが付いています。

  • Thumbcache_32.db -> 小
  • Thumbcache_96.db -> 中
  • Thumbcache_256.db -> 大
  • Thumbcache_1024.db -> 特大

ツールThumbCache Viewerを使用してこのファイルを読み取ることができます。

Windowsレジストリ

Windowsレジストリには、システムとユーザーのアクションに関する多くの情報が含まれています。

レジストリを含むファイルは次の場所にあります:

  • %windir%\System32\Config*SAM*: HKEY_LOCAL_MACHINE
  • %windir%\System32\Config*SECURITY*: HKEY_LOCAL_MACHINE
  • %windir%\System32\Config*SYSTEM*: HKEY_LOCAL_MACHINE
  • %windir%\System32\Config*SOFTWARE*: HKEY_LOCAL_MACHINE
  • %windir%\System32\Config*DEFAULT*: HKEY_LOCAL_MACHINE
  • %UserProfile%{User}*NTUSER.DAT*: HKEY_CURRENT_USER

Windows VistaおよびWindows 2008 Server以降では、HKEY_LOCAL_MACHINEレジストリファイルのバックアップが**%Windir%\System32\Config\RegBack\**にあります。

また、これらのバージョンからは、レジストリファイル**%UserProfile%\{User}\AppData\Local\Microsoft\Windows\USERCLASS.DAT**が作成され、プログラムの実行に関する情報が保存されます。

ツール

いくつかのツールがレジストリファイルの解析に役立ちます:

  • レジストリエディタWindowsにインストールされています。現在のセッションのWindowsレジストリをナビゲートするためのGUIです。
  • Registry Explorerレジストリファイルをロードし、GUIでそれらをナビゲートすることができます。興味深い情報を持つキーをハイライトするブックマークも含まれています。
  • RegRipper再び、ロードされたレジストリをナビゲートすることができるGUIを持ち、ロードされたレジストリ内の興味深い情報をハイライトするプラグインも含まれています。
  • Windows Registry Recoveryレジストリから重要な情報を抽出することができる別のGUIアプリケーションです。

削除された要素の回復

キーが削除されると、それが削除されたことがマークされますが、そのスペースが必要になるまで削除されません。したがって、Registry Explorerなどのツールを使用すると、これらの削除されたキーを回復することができます。

最終更新時刻

各キーと値には、最後に変更された時刻を示すタイムスタンプが含まれています。

SAM

ファイル/ハイブSAMには、システムのユーザー、グループ、およびユーザーパスワードのハッシュが含まれています。

SAM\Domains\Account\Usersには、ユーザー名、RID、最終ログイン、最後の失敗したログオン、ログインカウンター、パスワードポリシー、アカウントの作成日などが含まれています。ハッシュを取得するには、ファイル/ハイブSYSTEMも必要です。

Windowsレジストリの興味深いエントリ

{% content-ref url="interesting-windows-registry-keys.md" %} interesting-windows-registry-keys.md {% endcontent-ref %}

実行されたプログラム

基本的なWindowsプロセス

次のページでは、疑わしい動作を検出するための基本的なWindowsプロセスについて学ぶことができます

{% content-ref url="windows-processes.md" %} windows-processes.md {% endcontent-ref %}

Windows最近のアプリ

レジストリのNTUSER.DAT内のパスSoftware\Microsoft\Current Version\Search\RecentAppsには、実行されたアプリケーション最後に実行された時間実行回数に関する情報が含まれているサブキーがあります。

BAMBackground Activity Moderator

レジストリエディタでSYSTEMファイルを開き、パスSYSTEM\CurrentControlSet\Services\bam\UserSettings\{SID}の中には、各ユーザーが実行したアプリケーションの情報があります(パス内の{SID}に注意してください)。また、実行された時間もレジストリのData値の中にあります。

Windows Prefetch

プリフェッチは、コンピュータがユーザーが近い将来アクセスする可能性のあるコンテンツを表示するために必要なリソースを静かに取得する技術であり、リソースにより速くアクセスできるようにします。

Windowsプリフェッチは、実行されたプログラムのキャッシュを作成して、それらをより速くロードできるようにします。これらのキャッシュは、C:\Windows\Prefetchパス内に.pfファイルとして作成されます。XP/VISTA/WIN7では128ファイルの制限があり、Win8/Win10では1024ファイルの制限があります。

ファイル名は{program_name}-{hash}.pfとして作成されますハッシュは実行可能ファイルのパスと引数に基づいています。W10では、これらのファイルは圧縮されます。ファイルの存在のみで、プログラムが実行されたことを示しています。

ファイル`C:\Windows\

.\PECmd.exe -d C:\Users\student\Desktop\Prefetch --html "C:\Users\student\Desktop\out_folder"

スーパープリフェッチ

スーパープリフェッチは、プリフェッチと同じ目的を持ち、次に読み込まれるものを予測してプログラムの読み込みを高速化します。ただし、プリフェッチサービスを置き換えるものではありません。
このサービスは、C:\Windows\Prefetch\Ag*.dbにデータベースファイルを生成します。

これらのデータベースには、プログラムの名前実行回数開かれたファイルアクセスされたボリューム完全なパス時間枠、およびタイムスタンプが含まれています。

この情報には、CrowdResponseというツールを使用してアクセスできます。

SRUM

システムリソース使用モニターSRUMは、プロセスが消費するリソース監視します。これはW8に登場し、データはC:\Windows\System32\sru\SRUDB.datにあるESEデータベースに保存されます。

次の情報を提供します:

  • AppIDとパス
  • プロセスを実行したユーザー
  • 送信バイト数
  • 受信バイト数
  • ネットワークインターフェース
  • 接続の期間
  • プロセスの期間

この情報は60分ごとに更新されます。

このファイルからデータを取得するには、srum_dumpというツールを使用できます。

.\srum_dump.exe -i C:\Users\student\Desktop\SRUDB.dat -t SRUM_TEMPLATE.xlsx -o C:\Users\student\Desktop\srum

AppCompatCacheShimCache

Shimcache、またはAppCompatCacheは、Microsoftによって作成され、オペレーティングシステムがアプリケーションの互換性の問題を特定するために使用するApplication Compatibility Databaseのコンポーネントです。

キャッシュは、オペレーティングシステムによって異なるファイルのメタデータを保存します。以下の情報が含まれます。

  • ファイルの完全なパス
  • ファイルサイズ
  • $Standard_InformationSIの最終更新時刻
  • ShimCacheの最終更新時刻
  • プロセスの実行フラグ

この情報は、レジストリ内の次の場所にあります。

  • SYSTEM\CurrentControlSet\Control\SessionManager\Appcompatibility\AppcompatCache
  • XP96エントリ
  • SYSTEM\CurrentControlSet\Control\SessionManager\AppcompatCache\AppCompatCache
  • Server 2003512エントリ
  • 2008/2012/2016 Win7/Win8/Win101024エントリ

この情報を解析するために、AppCompatCacheParserツールを使用できます。

Amcache

Amcache.hveファイルは、実行されたアプリケーションの情報を保存するレジストリファイルです。場所はC:\Windows\AppCompat\Programas\Amcache.hveです。

Amcache.hveは、実行されたプロセスの最近の履歴を記録し、実行されたプログラムを見つけるために使用されるファイルのパスをリストアップします。また、プログラムのSHA1も記録します。

この情報を解析するために、Amcacheparserツールを使用できます。

AmcacheParser.exe -f C:\Users\student\Desktop\Amcache.hve --csv C:\Users\student\Desktop\srum

最も興味深い生成されたCSVファイルは、「Amcache_Unassociated file entries」です。

RecentFileCache

このアーティファクトは、W7のC:\Windows\AppCompat\Programs\RecentFileCache.bcfにのみ存在し、一部のバイナリの最近の実行に関する情報を含んでいます。

ツールRecentFileCacheParseを使用してファイルを解析できます。

スケジュールされたタスク

これらはC:\Windows\TasksまたはC:\Windows\System32\Tasksから抽出し、XMLとして読み取ることができます。

サービス

これらはレジストリのSYSTEM\ControlSet001\Servicesにあります。実行される内容と実行時刻を確認できます。

Windowsストア

インストールされたアプリケーションは\ProgramData\Microsoft\Windows\AppRepository\にあります。
このリポジトリには、データベース**StateRepository-Machine.srd内のシステムにインストールされた各アプリケーションログ**があります。

このデータベースのApplicationテーブル内には、「Application ID」、「PackageNumber」、「Display Name」という列があります。これらの列には、プリインストールされたアプリケーションとインストールされたアプリケーションに関する情報が含まれており、インストールされたアプリケーションのIDは連続しているはずです。

また、レジストリパスSoftware\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Applications\内には、インストールされたアプリケーションが見つかります。
そして、アンインストールされたアプリケーションSoftware\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Deleted\にあります。

Windowsイベント

Windowsイベントに表示される情報は次のとおりです。

  • 発生したこと
  • タイムスタンプUTC + 0
  • 関与したユーザー
  • 関与したホストホスト名、IP
  • アクセスされたアセット(ファイル、フォルダ、プリンター、サービス)

ログは、Windows Vistaより前ではC:\Windows\System32\configに、Windows Vista以降ではC:\Windows\System32\winevt\Logsにあります。Windows Vistaより前では、イベントログはバイナリ形式であり、それ以降はXML形式であり、.evtx拡張子を使用します。

イベントファイルの場所は、SYSTEMレジストリの**HKLM\SYSTEM\CurrentControlSet\services\EventLog\{Application|System|Security}**に記載されています。

Windowsイベントビューアeventvwr.msc)やEvent Log ExplorerEvtx Explorer/EvtxECmd****などの他のツールで表示することができます。

セキュリティ

これにはアクセスイベントが登録され、セキュリティ設定に関する情報がC:\Windows\System32\winevt\Security.evtxに見つかります。

イベントファイルの最大サイズは設定可能であり、最大サイズに達すると古いイベントが上書きされます。

次のように登録されるイベント:

  • ログイン/ログオフ
  • ユーザーの操作
  • ファイル、フォルダ、共有アセットへのアクセス
  • セキュリティ設定の変更

ユーザー認証に関連するイベント:

EventID 説明
4624 認証成功
4625 認証エラー
4634/4647 ログオフ
4672 管理者権限でのログイン

EventID 4634/4647には興味深いサブタイプがあります

  • 2 (interactive): キーボードやVNC、PSexec -U-などのソフトウェアを使用した対話型のログイン
  • 3 (network): 共有フォルダへの接続
  • 4 (Batch): 実行されたプロセス
  • 5 (service): サービスがサービス制御マネージャーによって開始された
  • 6 (proxy): プロキシログイン
  • 7 (Unlock): パスワードを使用して画面のロックを解除
  • 8 (network cleartext): クリアテキストパスワードを送信して認証されたユーザー。このイベントは以前はIISから来ていました
  • 9 (new credentials): RunAsコマンドが使用された場合や、ユーザーが異なる資格情報でネットワークサービスにアクセスした場合に生成されます。
  • 10 (remote interactive): ターミナルサービスまたはRDPを介した認証
  • 11 (cache interactive): ドメインコントローラに連絡できなかったため、最後にキャッシュされた資格情報を使用してアクセス
  • 12 (cache remote interactive): キャッシュされた資格情報を使用してリモートでログイン10と11の組み合わせ
  • 13 (cached unlock): キャッシュされた資格情報を使用してロックされたマシンを解除

この記事では、これらのログインタイプをすべて模倣する方法と、どのログインタイプでメモリから資格情報をダンプできるかを見つけることができます:https://www.alteredsecurity.com/post/fantastic-windows-logon-types-and-where-to-find-credentials-in-them

イベントのステータスとサブステータス情報は、イベントの原因に関する詳細を示す場合があります。たとえば、Event ID 4625の次のステータスとサブステータスコードを参照してください

Windowsイベントの回復

Windowsイベントを回復するためには、不審なPCの電源を抜くことを強くお勧めします。削除された場合、Bulk_extractorというツールを使用して回復を試みることができます。拡張子はevtxです。

Windowsイベントでの一般的な攻撃の特定

ブルートフォース攻撃

ブルートフォース攻撃は、複数のEventID 4625が表示されるため、簡単に特定できます。攻撃が成功した場合、EventID 4625の後にEventID 4624が表示されます

時間の変更

これはフォレンジックチームにとって非常に困難であり、すべてのタイムスタンプが変更されます。このイベントは、セキュリティイベントログ内のEventID 4616に記録されます。

USBデバイス

次のシステムイベントIDが役立ちます

  • 20001 / 20003 / 10000: 初めて使用されたとき
  • 10100: ドライバの更新

DeviceSetupManagerのイベントID 112には、挿入された各USBデバイスのタイムスタ