Windows Artifacts

Windowsのアーティファクト

ゼロからヒーローまでAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricksをサポートする他の方法:

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

Windows 10の通知

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

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

タイムライン

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

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

ADS(Alternate 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-Win10: C:\Users\\AppData\Roaming\Microsoft\Windows\Recent\

  • Office: C:\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

ジャンプリスト

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

自動的に作成されるジャンプリストは、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:このDLLは実際のクリーンアッププロセスを担当しています。

  • UseUnifiedSchedulingEngineTRUEに設定されており、一般的なタスクスケジューリングエンジンの使用を示しています。

  • MaintenanceSettings

  • Period('P1M'):定期的な自動メンテナンス中に月次のクリーンアップタスクを開始するようにタスクスケジューラに指示します。

  • Deadline('P2M'):タスクが2か月連続で失敗した場合、緊急時の自動メンテナンス中にタスクを実行するようにタスクスケジューラに指示します。

この構成により、ドライバーの定期的なメンテナンスとクリーンアップが確保され、連続した失敗の場合のタスクの再試行が規定されています。

詳細については、次を参照してください: https://blog.1234n6.com/2018/07/windows-plug-and-play-cleanup.html

メール

メールには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-Executed:MAPIクライアントに関する情報(メッセージは既読ですか?未読ですか?返信済みですか?リダイレクトされましたか?外出中ですか?)

Microsoft Outlookクライアントでは、送受信したすべてのメッセージ、連絡先データ、およびカレンダーデータが次のPSTファイルに保存されます:

  • %USERPROFILE%\Local Settings\Application Data\Microsoft\Outlook(WinXP)

  • %USERPROFILE%\AppData\Local\Microsoft\Outlook

レジストリパスHKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Windows Messaging Subsystem\Profiles\Outlookは使用されているファイルを示します。

PSTファイルは、ツールKernel PST Viewerを使用して開くことができます。

Microsoft Outlook OST Files

OSTファイルは、Microsoft OutlookがIMAPまたはExchangeサーバーと構成されているときに生成され、PSTファイルと同様の情報を格納します。このファイルはサーバーと同期され、過去12ヶ月分のデータを最大50GBまで保持し、PSTファイルと同じディレクトリにあります。OSTファイルを表示するには、Kernel OST viewerを利用できます。

添付ファイルの取得

失われた添付ファイルは次の場所から回復できる場合があります:

  • IE10の場合:%APPDATA%\Local\Microsoft\Windows\Temporary Internet Files\Content.Outlook

  • IE11以降の場合:%APPDATA%\Local\Microsoft\InetCache\Content.Outlook

Thunderbird MBOX Files

Thunderbirdはデータを格納するためにMBOXファイルを使用し、\Users\%USERNAME%\AppData\Roaming\Thunderbird\Profilesにあります。

画像サムネイル

  • Windows XPおよび8-8.1:サムネイルが含まれるフォルダにアクセスすると、削除後も画像プレビューを保存するthumbs.dbファイルが生成されます。

  • Windows 7/10:UNCパスを介してネットワーク経由でアクセスするとthumbs.dbが作成されます。

  • Windows Vista以降:サムネイルプレビューは%userprofile%\AppData\Local\Microsoft\Windows\Explorerに集約され、thumbcache_xxx.dbという名前のファイルがあります。ThumbsviewerThumbCache Viewerはこれらのファイルを表示するためのツールです。

Windowsレジストリ情報

Windowsレジストリは、広範なシステムおよびユーザーのアクティビティデータを格納しており、次のファイルに含まれています:

  • HKEY_LOCAL_MACHINEのさまざまなサブキーには%windir%\System32\Configにあります。

  • HKEY_CURRENT_USERには%UserProfile%{User}\NTUSER.DATにあります。

  • Windows Vista以降のバージョンでは、%Windir%\System32\Config\RegBack\HKEY_LOCAL_MACHINEレジストリファイルのバックアップがあります。

  • さらに、プログラムの実行情報は、Windows VistaおよびWindows 2008 Server以降の%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レジストリの興味深いエントリ

pageInteresting Windows Registry Keys

実行されたプログラム

基本的なWindowsプロセス

この投稿では、疑わしい動作を検出するための一般的なWindowsプロセスについて学ぶことができます。

Windows最近のアプリ

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

BAM(バックグラウンドアクティビティモデレーター)

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

Windows Prefetch

プリフェッチは、コンピューターがユーザーが近い将来にアクセスする可能性のあるコンテンツを表示するために必要なリソースを静かに取得する技術です。Windowsプリフェッチは、実行されたプログラムのキャッシュを作成して、それらをより速くロードできるようにします。これらのキャッシュは、C:\Windows\Prefetch内に.pfファイルとして作成されます。XP/VISTA/WIN7では128ファイルの制限があり、Win8/Win10では1024ファイルの制限があります。

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

ファイルC:\Windows\Prefetch\Layout.iniには、プリフェッチされるファイルのフォルダの名前に関する情報が含まれています。このファイルには、実行回数実行日、およびプログラムによって開かれたファイルに関する情報が含まれています。

これらのファイルを調査するには、PEcmd.exeツールを使用できます。

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

Superprefetch

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

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

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

SRUM

System Resource Usage Monitor(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

AppCompatCache(ShimCache)

AppCompatCache、またはShimCacheとしても知られるものは、Microsoftが開発したアプリケーション互換性データベースの一部であり、アプリケーションの互換性の問題に対処するために使用されます。このシステムコンポーネントは、次のファイルメタデータを記録します:

  • ファイルの完全なパス

  • ファイルのサイズ

  • $Standard_Information(SI)の下の最終更新時刻

  • ShimCacheの最終更新時刻

  • プロセス実行フラグ

このようなデータは、オペレーティングシステムのバージョンに基づいてレジストリ内の特定の場所に保存されます:

  • XPの場合、データはSYSTEM\CurrentControlSet\Control\SessionManager\Appcompatibility\AppcompatCacheに保存され、96エントリを格納できます。

  • Server 2003、およびWindowsバージョン2008、2012、2016、7、8、および10の場合、ストレージパスはSYSTEM\CurrentControlSet\Control\SessionManager\AppcompatCache\AppCompatCacheで、それぞれ512および1024エントリを収容します。

保存された情報を解析するには、AppCompatCacheParserツールの使用をお勧めします。

Amcache

Amcache.hveファイルは、システムで実行されたアプリケーションの詳細を記録するレジストリハイブです。通常、C:\Windows\AppCompat\Programas\Amcache.hveにあります。

このファイルは、最近実行されたプロセスの記録、実行可能ファイルへのパス、およびそれらのSHA1ハッシュを保存するために注目されています。この情報は、システム上のアプリケーションの活動を追跡するために貴重です。

Amcache.hveからデータを抽出して分析するには、AmcacheParserツールを使用できます。次のコマンドは、Amcache.hveファイルの内容を解析し、結果をCSV形式で出力するためのAmcacheParserの使用例です:

AmcacheParser.exe -f C:\Users\genericUser\Desktop\Amcache.hve --csv C:\Users\genericUser\Desktop\outputFolder

生成されたCSVファイルの中で、Amcache_Unassociated file entriesは、関連付けられていないファイルエントリに関する豊富な情報を提供するため特に注目に値します。

最も興味深いCSVファイルは、Amcache_Unassociated file entriesです。

RecentFileCache

このアーティファクトは、C:\Windows\AppCompat\Programs\RecentFileCache.bcfにのみW7で見つけることができ、いくつかのバイナリの最近の実行に関する情報を含んでいます。

ファイルを解析するためにRecentFileCacheParseツールを使用できます。

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

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

サービス

レジストリ内のSYSTEM\ControlSet001\Servicesに見つけることができます。実行される内容や実行時期を確認できます。

Windows Store

インストールされたアプリケーションは\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 Explorer または Evtx Explorer/EvtxECmdなどのツールで表示できます。

Windowsセキュリティイベントログの理解

セキュリティ構成ファイルに記録されるアクセスイベントは、C:\Windows\System32\winevt\Security.evtxにあります。このファイルのサイズは調整可能であり、容量が達すると古いイベントが上書きされます。記録されるイベントには、ユーザーログインとログオフ、ユーザーアクション、セキュリティ設定の変更、ファイル、フォルダ、共有アセットへのアクセスが含まれます。

システムの電源イベント

EventID 6005 はシステムの起動を示し、EventID 6006 はシャットダウンを示します。

ログの削除

セキュリティ EventID 1102 はログの削除を示し、それは法的解析において重要なイベントです。

Last updated