11 KiB
反フォレンジック技術
htARTE(HackTricks AWS Red Team Expert)を使用して、AWSハッキングをゼロからヒーローまで学ぶ!
HackTricksをサポートする他の方法:
- HackTricksで企業を宣伝したい場合やHackTricksをPDFでダウンロードしたい場合は、SUBSCRIPTION PLANSをチェックしてください!
- 公式PEASS&HackTricksスウェグを入手する
- The PEASS Familyを発見し、独占的なNFTコレクションを見つける
- **💬 Discordグループ**に参加するか、telegramグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローする
- ハッキングテクニックを共有するには、PRを HackTricks と HackTricks Cloud のGitHubリポジトリに提出してください。
タイムスタンプ
攻撃者はファイルのタイムスタンプを変更して検出を回避する可能性があります。
MFT内の属性$STANDARD_INFORMATION
と$FILE_NAME
にタイムスタンプを見つけることができます。
両方の属性には4つのタイムスタンプがあります:変更、アクセス、作成、MFTレジストリの変更(MACEまたはMACB)。
Windowsエクスプローラや他のツールは**$STANDARD_INFORMATION
**から情報を表示します。
TimeStomp - 反フォレンジックツール
このツールは**$STANDARD_INFORMATION
内のタイムスタンプ情報を変更しますが、$FILE_NAME
内の情報は変更しません**。そのため、疑わしい活動を特定することが可能です。
Usnjrnl
USN Journal(Update Sequence Number Journal)はNTFS(Windows NTファイルシステム)の機能で、ボリュームの変更を追跡します。UsnJrnl2Csvツールを使用してこれらの変更を調査できます。
前述の画像は、ファイルにいくつかの変更が加えられたことが示されているツールの出力です。
$LogFile
ファイルシステムへのすべてのメタデータ変更は、先行ログ記録としてログに記録されます。記録されたメタデータは、NTFSファイルシステムのルートディレクトリにある**$LogFile**
という名前のファイルに保持されます。LogFileParserなどのツールを使用して、このファイルを解析して変更を特定できます。
再び、ツールの出力では、いくつかの変更が行われたことがわかります。
同じツールを使用して、タイムスタンプがいつ変更されたかを特定できます:
- CTIME:ファイルの作成時刻
- ATIME:ファイルの変更時刻
- MTIME:ファイルのMFTレジストリの変更
- RTIME:ファイルのアクセス時刻
$STANDARD_INFORMATION
と$FILE_NAME
の比較
疑わしい変更されたファイルを特定する別の方法は、両方の属性の時間を比較し、不一致を探すことです。
ナノ秒
NTFSのタイムスタンプは100ナノ秒の精度を持ちます。そのため、2010-10-10 10:10:00.000:0000のようなタイムスタンプを持つファイルは非常に疑わしいです。
SetMace - 反フォレンジックツール
このツールは、$STARNDAR_INFORMATION
と$FILE_NAME
の両方の属性を変更できます。ただし、Windows Vista以降では、この情報を変更するにはライブOSが必要です。
データの隠蔽
NFTSはクラスターと最小情報サイズを使用します。つまり、ファイルが1つのクラスターと半分を占有している場合、残りの半分はファイルが削除されるまで使用されません。そのため、このスラックスペースにデータを隠すことが可能です。
この「隠された」スペースにデータを隠すことができるslackerなどのツールがあります。ただし、$logfile
と$usnjrnl
の分析により、データが追加されたことがわかります:
その後、FTK Imagerなどのツールを使用してスラックスペースを取得できます。この種のツールは、コンテンツを難読化したり、暗号化したりすることができることに注意してください。
UsbKill
これは、USBポートの変更が検出されるとコンピューターをシャットダウンするツールです。
これを発見する方法は、実行中のプロセスを検査し、実行中の各Pythonスクリプトを確認することです。
ライブLinuxディストリビューション
これらのディストリビューションはRAMメモリ内で実行されます。NTFSファイルシステムが書き込み権限でマウントされている場合にのみ、侵入を検出することが可能です。読み取り権限でマウントされている場合は、侵入を検出することはできません。
安全な削除
https://github.com/Claudio-C/awesome-data-sanitization
Windowsの設定
フォレンジック調査を困難にするために、Windowsのさまざまなログ記録方法を無効にすることが可能です。
タイムスタンプの無効化 - UserAssist
これは、ユーザーが実行した各実行可能ファイルの日付と時刻を維持するレジストリキーです。
UserAssistを無効にするには、2つの手順が必要です:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Start_TrackProgs
とHKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Start_TrackEnabled
の2つのレジストリキーをゼロに設定して、UserAssistを無効にしたいことを示します。HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\<hash>
のようなレジストリサブツリーをクリアします。
タイムスタンプの無効化 - Prefetch
これは、Windowsシステムのパフォーマンスを向上させることを目的として実行されたアプリケーションに関する情報を保存します。ただし、これはフォレンジックの実践にも役立ちます。
regedit
を実行します- ファイルパス
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management\PrefetchParameters
を選択します EnablePrefetch
とEnableSuperfetch
の両方を右クリックし、それぞれの「変更」を選択して、値を1(または3)から0に変更します- 再起動します
タイムスタンプの無効化 - 最終アクセス時刻
Windows NTサーバーのNTFSボリュームからフォルダーが開かれるたびに、システムはリストされた各フォルダーのタイムスタンプフィールドを更新します。これを最終アクセス時刻と呼びます。使用頻度の高いNTFSボリュームでは、これがパフォーマンスに影響する可能性があります。
- レジストリエディタ(Regedit.exe)を開きます。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
に移動します。NtfsDisableLastAccessUpdate
を探します。存在しない場合は、このDWORDを追加し、その値を1に設定してプロセスを無効にします。- レジストリエディタを閉じ、サーバーを再起動します。
USB履歴の削除
すべてのUSBデバイスエントリは、WindowsレジストリのUSBSTORレジストリキーの下に保存されます。このキーには、PCやラップトップにUSBデバイスを接続するたびに作成されるサブキーが含まれています。このキーはここにありますHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR
。これを削除するとUSBの履歴が削除されます。
また、USBDeviewツールを使用して削除したことを確認することもできます(および削除することもできます)。
USBに関する情報を保存する別のファイルは、C:\Windows\INF
内のsetupapi.dev.log
ファイルです。これも削除する必要があります。
シャドウコピーの無効化
vssadmin list shadowstorage
でシャドウコピーをリストします
vssadmin delete shadow
を実行してそれらを削除します
https://www.ubackup.com/windows-10/how-to-delete-shadow-copies-windows-10-5740.htmlで提案された手順に従ってGUIからも削除できます。
シャドウコピーを無効にするにはここからの手順に従います:
- Windowsのスタートボタンをクリックした後、テキスト検索ボックスに「services」と入力してサービスプログラムを開きます。
- リストから「Volume Shadow Copy」を見つけ、右クリックしてプロパティにアクセスします。
- 「起動の種類」ドロップダウンメニューから「無効」を選択し、変更を適用してOKをクリックします。
また、レジストリHKLM\SYSTEM\CurrentControlSet\Control\BackupRestore\FilesNotToSnapshot
でコピーされるファイルの構成を変更することも可能です。
削除されたファイルの上書き
- Windowsツールを使用できます:
cipher /w:C
これにより、cipherにCドライブ内の未使用ディスク領域からデータを削除するよう指示されます。 - Eraserのようなツールも使用できます
Windowsイベントログの削除
- Windows + R --> eventvwr.msc --> "Windows Logs"を展開 --> 各カテゴリを右クリックして「ログをクリア」を選択
for /F "tokens=*" %1 in ('wevtutil.exe el') DO wevtutil.exe cl "%1"
Get-EventLog -LogName * | ForEach { Clear-EventLog $_.Log }
Windowsイベントログの無効化
reg add 'HKLM\SYSTEM\CurrentControlSet\Services\eventlog' /v Start /t REG_DWORD /d 4 /f
- サービスセクション内でサービス「Windows Event Log」を無効にします
WEvtUtil.exec clear-log
またはWEvtUtil.exe cl
$UsnJrnlの無効化
fsutil usn deletejournal /d c: