メモリイメージの取得

PC からメモリイメージを取得する手順についてメモします。

ツールの準備

メモリイメージを取得するツールは色々あるようですが今回は FTK Imager を使用します。
通常はメモリイメージを取得したい PC にツールがインストールされている事はないので USB メモリ上にツールを準備します。

  • FTK Imager Version 4.7.1 | AccessData からインストーラをダウンロードする
    ※過去には FTK Imager Lite という製品があったようですが無くなったようです
  • 自分の PC にインストールする
  • 【C:¥Program Files¥AccessData¥FTK Imager】又は【C:¥Program Files (x86)¥AccessData¥FTK Imager】を USB メモリにコピーする
  • 【C:¥windows¥system32】から【mfc140u.dll】【msvcp140.dll】【vcruntime140.dll】を USB メモリにコピーする

メモリイメージの取得

  • メモリイメージを取得したい PC に USB メモリを接続する
  • 【FTK Imager.exe】を管理者として実行する
  • 【File】-【Capture Memory】を選択する
  • 保存先を選択して【Capture Memory】を押下する

ツールや情報を共有してくれる方々に感謝

Registry HIVE の保存場所

Registry の HIVE の保存場所をメモします。

Registry File Path
HKEY_LOCAL_MACHINE \ SAM C:\Windows\system32\config\sam
HKEY_LOCAL_MACHINE \ SECURITY C:\Windows\system32\config\security
HKEY_LOCAL_MACHINE \ SOFTWARE C:\Windows\system32\config\software
HKEY_LOCAL_MACHINE \ SYSTEM C:\Windows\system32\config\system
HKEY_USERS \ .DEFAULT C:\Windows\system32\config\default
HKEY_USERS \ S-1-5-19 C:\Windows\ServiceProfiles\LocalService\NTUSER.DAT
HKEY_USERS \ S-1-5-20 C:\Windows\ServiceProfiles\NetworkService\NTUSER.DAT
HKEY_USERS \ S-1-5-21-*** C:\Users\[アカウント名]\NTUSER.DAT
HKEY_USERS \ S-1-5-21-***_Classes C:\Users\[アカウント名]\AppData\Local\Microsoft\Windows\usrClass.dat

ファイルの場所は Powershell コマンドで確認することもできます。

$ Get-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Control\hivelist\

無償で情報を共有してくれる方々に感謝

レジストリファイルはWindowsのどこに保存されますか?

USBメモリ関連の調査

USB メモリ関連の確認方法について調べたことをメモします。
Windows10 で確認した結果をまとめる方針ですが確認しないで HP の情報をそのまま記載するかもしれません。

ツール等

ツール名 用途
Registry Explorer HIVE ファイル(Registry の実体)の調査
Registry Finder ローカルホストのレジストリ調査(regedit.exe より使いやすそう)
Registry Explorer ローカルホストの USB 関連の情報を GUI で表示(ダウンロードリンクはページの下部)

PC に過去接続された USB メモリを調査する方法

  • キー【HKLM¥SYSTEM¥Select】内の名前【Current】の値を確認する(「1」か「2」を想定)
  • キー【HKLM¥SYSTEM¥ControlSet00[Currentの値]¥Enum¥USBSTOR¥】のサブキーからベンダー名と製品名を確認する
     キーの例:【Disk&Ven[ベンダー名]&Prod[製品名]&Rev_[不明]】
          【Disk&Ven_I-O_DATA&Prod_USB_Flash_Disk&Rev_PMAP】
  • キー【HKLM¥SYSTEM¥ControlSet00[Currentの値]¥Enum¥USBSTOR¥[ベンダー名,製品名]】のサブキーからシリアル番号を確認する
     キーの例:【[シリアル番号]&0】
          【SNDKB91EA4346D408606&0】

自身が保有するUSBメモリと異なるベンダーやシリアル番号があれば不正に接続されたと考えることができます。

自身が所持している USB メモリのシリアル番号を調査する方法

  • PC に USB メモリを接続する
  • 【コントロールパネル】→【デバイスマネージャー】→【ディスクドライブ】→ デバイスのプロパティ →【詳細】タブ → 【プロパティ】の【親】を選択し値を確認する
     【値】の例:【USB¥VID[ベンダーID]&PID[プロダクトID]¥[シリアル番号]】
          :【USB¥VID_0411&PID_0098¥B001000000047899】

USB メモリを使用した WINDOWS アカウントを調査する方法

Windows10 に項目がありませんでしたがメモしておきます。

  • キー【HKLM¥SYSTEM¥ControlSet00[Currentの値]¥Enum¥USBSTOR¥[ベンダーID,プロダクトID]¥[シリアル番号]】内の名前【ParentIdPrefix】の値を確認する
     値の例:【8&62f9b79&0】
  • キー【HKLM¥SYSTEM¥MountedDevices】内の値に先ほどの【ParentIdPrefix】の値が含まれる名前を確認し GUID を記録する
     名前の例:【¥??¥Volume{[GUID]}】
          【¥??¥Volume{e996e33f-b41a-11e7-8153-000c29208375}】
     値の例 :【¥??¥STORAGE#RemovableMedia#8&62f9b79&0&RM#{53f5630d-b6bf-11d0-94f2-00a0c91efb8b}】
     ※値は HEX で保存されており Ascii で記載しています。
  • キー【HKEY_USERS¥[各ユーザID]¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥Explorer¥MountPoints2】のサブキーが先ほど確認した GUID と同じもを探す
     キーの例:【(d8be01aa-b41f-11e7-8155-000c29208375)】

以下は Windows10 に存在した項目にシリアル番号が記載されていたのでメモしておきます。

  • キー【HKU¥[各ユーザID]¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥Explorer¥MountPoints2¥Volume】の各サブキー内の名前【Data】の値を確認する
     キーの例:【{8e2999e8-fd6c-11ec-b371-105bad920ad4}】
     値の例 :【¥¥?¥STORAGE#Volume#??USBSTOR#Disk&Ven_BUFFALO&Prod_USB_Flash_Disk&Rev_4000#B001000000047899&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}#】
     ※値は HEX で保存されており値の一部を Ascii で記載しています。

※ParentIdPrefix とは OS が USB メモリを一意に識別するために自動生成するランダムな値で、シリアル番号のない(低品質な)USB メモリではシリアル番号の代わりに使われるそうです。

autorun.inf の痕跡を確認する方法

Windows10 に項目がありませんでしたがメモしておきます。

  • キー【HKU¥[各ユーザID]¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥Explorer¥MountPoints2¥{[USBメモリのGUID]}¥Shell¥Auto¥command】内の名前【(default)】の値を確認する
     値の例:【E:¥9164.exe】

USB メモリが初めて接続された日付を調査する方法

USBDeview による調査

  • USBDeview を実行する。
     【Registry Time1】は直近で接続した時間を示す
     【Registry Time2】は初めて接続した時間を示す
     ※USBDeview の解説に OS の再起動で情報が失われるとありましたが情報は残っていました。

ファイルによる調査

  • 【C:¥Windows¥INF¥setupapi.dev.log】をテキストエディタで開く。
     ※ setupapi.dev.log は数か月毎にファイルを分けて保存するようなので、過去分も確認する。
  • シリアル番号で検索しもっとも古い【Section start】の日時を確認する。

無料でツールや情報を共有してくれる方々に感謝

Day-1 セキュリティ技術勉強会資料 – 仙台CTF推進プロジェクト
USBドライブのシリアル番号を確認するにはどうすればよいですか?
View any installed/connected USB device on your system
デバイスインスタンスパスが変わるUSBメモリ
PowerShellで最終書き込み時刻/最終変更時刻でレジストリエントリを並べ替える方法

OSINTで使えそうなツールや情報のまとめ

OSINTで使えそうなツールや情報をメモします。

ツール

ツール名 説明
ffmpeg 動画や画像を編集する CUI ツール(WindowsLinux
形式を変換したり、動画に画像処理を施したり、動画から画像を作成したりできる。
参考:ffmpeg コマンドラインツール入門 第1回
DomainWatch ドメインの調査ツール
Flightradar24 航空機の飛行状況を調べるツール
蓝军HVV实用工具和网站总结,还不快掏出小本本记好 中華系のツール一覧
OSINT Framework OSINTツールの一覧
OSINT.Link OSINTツールの一覧
【CTF】OSINT問題で個人的に使用するツール・サイト・テクニックまとめ OSINT問題で個人的に使用するツール・サイト・テクニックまとめ
普段の調査で利用するOSINTまとめ 普段の調査で利用するOSINTまとめ
ThreatPursuit-VM FireEye の Flare Team が提供している調査用のツールとインテリジェンスの蓄積用環境の両方が用意されているWindows用ツール

参考記事

サイト名 説明
【フィッシングサイト探索Tips】似た構造のWebサイトを探す urlscan.ioのsimilar機能の説明
巧妙化・国際化するオンライン詐欺やサイバー犯罪にどう対応していくのか? 2018年7月2日に開催された Anti-Phishing Working Group 主催『巧妙化・国際化するオンライン詐欺やサイバー犯罪にどう対応していくのか?』にて講演された内容の解説記事
ファビコンハッシュによるフィッシングWebサイトの狩猟 【英語】ファビコンハッシュによるフィッシングWebサイトの狩猟
監視カメラに潜むアクセス制御の不備(監視カメラ怖い😖) shodanを使った監視カメラの検索
[OSINT]Shodanを使ってFileZenを探せ その1 Shodanを使ったFileZenの調査
ブラウザ ユーザーエージェント(UserAgent) まとめ ブラウザ ユーザーエージェント(UserAgent) まとめ
今日からできるサイバー脅威インテリジェンスの話-実践編- サイバー脅威情報の収集方法やプラットフォームについて紹介する記事

pcap から icmp のデータ部を取り出す

WaniCTF'21 で pcap から icmp のデータを抽出して jpeg を作成する問題の writeup で紹介されている Python スクリプトについてメモします。

以下のスクリプトで pcap から ICMP のデータ部を取り出すことができます。

#!/usr/bin/env python3.8
import scapy.all

with open("out.jpg", "wb") as f:
   packets = scapy.all.rdpcap("illegal_image.pcap")
   for p in packets.filter(lambda p: "ICMP" in p and p["IP"].src == "192.168.0.133"):
      f.write(p["ICMP"].load)

scapy を使用するためにはインストールが必要です。

$ sudo apt install python3-scapy

packets.filter 文が理解できないのですが、 取り敢えず lambda 関数の構文は以下の通りです。

lambda 引数 : 戻り値

分からない場合は素直に書くのがよいかもしれません。

for p in packets:
    if p.haslayer(ICMP):
        if p[IP].src == '192.168.0.133':
            data += p[Raw].load


参考
wanictf21spring-writeup/for/illegal_image at main · wani-hackase/wanictf21spring-writeup · GitHub
WaniCTF'21-spring write-up - プログラム系統備忘録ブログ

Python のまとめ

Python に関する情報をメモします。

モジュール等

モジュール等名 説明
APNG animation png を扱うためのモジュール。複数の jpeg から apng を作成したり apng を複数ファイルに分割したりできる。
Ubuntu へのインストール:pip install apng
Impacket ネットワークプロトコルを操作するコレクション。Windows のパスワードハッシュの収集に活用できる。
Ubuntu へのインストール:sudo apt install python3-impacket
参考:・Impacket
Scapy 対話型のパケット操作プログラム。pcapを読み取ることもできる。
Ubuntu へのインストール:sudo apt install python3-scapy

使用例

タイトル 説明
pcap から icmp のデータ部を取り出す
Windows のユーザー名、パスワードを復元 : hashcat, impacket

Forensicで使えそうなツールや情報のまとめ

Forensicで使えそうなツールや情報をメモします。

ツール

ツール名 説明
7zip ファイルを圧縮・展開する GUI ツール(Windows
ディスクイメージやステガノグラフィなどの中にファイルが含まれるようなファイルを閲覧できる可能性がある。
AUTOPSY 物理ディスクやディスクイメージファイルなどを調査できる GUI ツール(WindowsLinux
binwalk ファイル内に埋め込まれたファイルを検出・抽出することができる CUI ツール(Linux
Bulk Extractor RC ディスクイメージやファイルからカービング(ファイル抽出はできない)することができる GUI ツール(Windows
使用するためには JRE が必要。
CrackStation レインボーテーブルを検索できる web サイト
CyberChef 各種エンコード、デコードなどを行える web ツール。サイト上で使用できるほか、ダウンロードしてオフラインでも使用できる。
参考:CyberChef の基本的な使い方
DBBrowserforSQLite SQLite データベースの内容を表示する GUI ツール(Windows
ExifTool jpeg 等の Exif 情報を抽出する CUI ツール(WindowsLinux
EvtxECmd Windows のイベントログを csv にエクスポートする CUI ツール(Windows
csv の表示は同じ作者が作成した Timeline Explorer が便利
参考:Introducing EvtxECmd!!
FTKImager 物理ディスクやディスクイメージファイルなどを調査できる GUI ツール(Windows
hashcat パスワードハッシュをクラックする CUI ツール(WindowsLinux
jpegAnalyzer Plus 多機能画像ファイル解析ができる GUI ツール(WindowsLinux
MFTECmd $MFT、$Boot、$J、$SDS を csv にエクスポートするコマンドラインツール(Windows
csv の表示は同じ作者が作成した Timeline Explorer が便利
参考:MFTECmd v0.2.6.0 released
Mimikatz Windows の認証資格情報などを収集する CUI ツール(Windows
参考:Mimikatz のコマンドリファレンスの非公式ガイド
ophcrack レインボーテーブルを使用して Windows パスワードをクラックする GUI ツール(Windows
PwDump Windows のパスワードハッシュを収集する CUI ツール(Windows
Registry Explorer Registry を参照する GUI ツール(Windows
参考:Registry Explorer/RECmd 0.7.1.0 released!
stego-toolkit ステガノグラフィツールを集めたdockerイメージ
wiki にツールの一覧が記載されている。
Stirling バイナリ編集用 GUI ツール(Windows
testdisk パーティションを復元できる CUI ツール(WindowsLinux
Timeline Explorer csvEXCEL ファイルを表示するための GUI ツール(Windows
参考:Timeline Explorer 0.5.0.0 released
WxTCmd Window10 のタイムラインデータベースを csv にエクスポートする CUI ツール(Windows
csv の表示は同じ作者が作成した Timeline Explorer が便利。
参考:introducing-wxtcmd
うさみみハリケーン マルウェア解析とフォレンジックに使える汎用 GUI ツール(Windows
サクラエディタ 文字コード変換や Grep が便利な GUI テキストエディタWindows

参考記事

サイト名 説明
GCK'S FILE SIGNATURES TABLE マジックナンバーの一覧
パスワードってどこにあるの?その1 Windows の NTLM についての解説記事
パスワードってどこにあるの?その2 Active Directory の認証についての解説記事
Windows 10 Timeline 解析記事のメモ Windows10 の timeline に関する記事のまとめ
ハイブファイルを使用したパスワード解析 レジストリハイブファイル を使用して Windows の パスワード解析を行う方法のメモ
Windows Security Log Events Windows Event Log の解説

 
無料でツールや情報を共有してくれる方々に感謝。