คลัง
forensics

Autopsy

Autopsy เป็น GUI forensics platform ที่ครอบ Sleuth Kit ทำให้วิเคราะห์ disk image แบบ point-and-click — recover deleted files, timeline, keyword search, file carving, web/registry artifacts, EXIF บทนี้ลงลึก workflow ตั้งแต่สร้าง case, ingest modules ที่ต้องเลือก, การใช้ timeline/keyword/carving, การอ่าน registry, เทคนิคหา flag ใน CTF และการเทียบกับ Sleuth Kit CLI (เนื้อหาเพื่อการศึกษา/ฝึกใน lab/CTF)

BeginnerIntermediate#autopsy#forensics#sleuthkit#disk#gui#ingest#timeline#carving

1. Autopsy คืออะไร

Autopsy เป็น GUI ฟรี/open-source ที่ครอบ The Sleuth Kit (TSK) — แทนที่จะพิมพ์ fls/icat/mmls เอง ใช้คลิกสำรวจ disk image ได้ทั้งไฟล์ระบบ NTFS/FAT/ext มีระบบ ingest modules ที่วิเคราะห์อัตโนมัติ (hash lookup, keyword index, EXIF, web artifacts, deleted files, carving) เหมาะกับงานที่ต้องสำรวจ image ใหญ่อย่างเป็นระบบ และมี timeline/report ในตัว ทำงานบน Windows/Linux/macOS

จุดแข็งคือ 'ทำครั้งเดียวได้หลายมุม' — ingest ทีเดียวแล้วมีทั้ง keyword index, file type, deleted files, artifacts พร้อมค้น ต่างจาก CLI ที่ต้องรันทีละคำสั่ง เหมาะกับผู้เริ่มต้นและงานที่ต้องมี report สำหรับ CTF ประเภท disk image การรู้ว่า 'ผลอยู่ที่ไหนใน tree' คือกุญแจหา flag เร็ว

เนื้อหานี้เพื่อการศึกษาในงาน forensics ที่ถูกต้อง (CTF, lab, งานสืบสวนที่ได้รับอนุญาต) เท่านั้น

2. รูปแบบ image ที่รองรับ

ชนิด data sourceตัวอย่างไฟล์หมายเหตุ
Disk Image (raw).dd / .raw / .imgsector-by-sector ตรงๆ
EnCase.E01 / .Ex01มี metadata + compression + hash (นิยมในงานจริง)
Virtual disk.vmdk / .vhd / .vdiจาก VM
Logical Filesโฟลเดอร์/ไฟล์แยกเมื่อไม่มี image เต็ม
Local Diskphysical driveวิเคราะห์ไดรฟ์จริง (ควรใช้ write-blocker)
Unallocated Spacecarve จาก imagePhotoRec/carving ดึงไฟล์ที่ไม่มี entry
โจทย์ CTF มักให้ .dd, .E01 หรือบางที .raw ถ้าเป็นไฟล์ image ของทั้งดิสก์ (มี partition table) Autopsy จะอ่าน partition ให้เอง; ถ้าเป็น partition เดี่ยวก็เพิ่มเป็น data source ได้เช่นกัน

3. Workflow — สร้าง case ถึงหา flag

  1. 1New Case → ตั้งชื่อ + โฟลเดอร์เก็บผล → Next
  2. 2Add Data Source → เลือกชนิด (Disk Image เลือกไฟล์ .dd/.E01)
  3. 3เลือก Ingest Modules ที่จะรัน (ดู section 4) — เปิดที่จำเป็น ปิดที่ช้าและไม่ต้องใช้
  4. 4รอ ingest เสร็จ (progress มุมขวาล่าง) — Autopsy index + วิเคราะห์อัตโนมัติ
  5. 5สำรวจ tree ซ้าย: Data Sources (ไฟล์ระบบ), Views (จัดกลุ่ม), Results (สิ่งที่ ingest เจอ)
  6. 6Keyword Search 'flag'/'CTF{' ทั่วทั้ง image (รวม unallocated/slack)
  7. 7ดู Deleted Files, Extension Mismatch, Web/Registry artifacts, EXIF
  8. 8tag ไฟล์ที่เจอ → Generate Report (HTML/Excel) สำหรับสรุป
Autopsy tree — ผลอยู่ที่ไหน
Case ├─ Data Sources └─ ไฟล์ระบบจริง (browse เหมือน explorer) ├─ Views ├─ File Types (by ext / MIME) ├─ Deleted Files ← recover อัตโนมัติ └─ File System (allocated/unalloc) └─ Results ├─ Extracted Content (Web, EXIF, Registry...) ├─ Keyword Hits └─ Extension Mismatch / Carved

4. Ingest Modules — เลือกให้ถูก

moduleทำอะไรต้องใช้ตอน
Recent Activityweb history, downloads, USB, บัญชีดูพฤติกรรมผู้ใช้
Hash Lookupเทียบ hash กับ known good/bad (NSRL)ตัดไฟล์ระบบ / หา known-bad
File Type Identificationระบุชนิดจริงจาก signature (ไม่ดูนามสกุล)เสมอ
Extension Mismatch Detectorไฟล์ที่นามสกุลไม่ตรงชนิดจริงหาไฟล์ซ่อน (.jpg ที่จริงเป็น zip)
Embedded File Extractorแตกไฟล์ใน zip/doc/archiveไฟล์ซ้อนไฟล์
Keyword Searchindex ข้อความ → ค้นทั่ว imageหา flag/คำเฉพาะ
Picture Analyzer (EXIF)metadata รูป (GPS, timestamp, กล้อง)geolocation / timeline
Email Parserดึง email จาก PST/MBOXมีไฟล์เมล
Encryption Detectionหาไฟล์ที่ entropy สูง/เข้ารหัสหาไฟล์ลับ
Data Carving (PhotoRec)carve ไฟล์จาก unallocatedไฟล์ที่ลบ/ไม่มี entry
Android Analyzer / Plasoartifact เฉพาะทางมือถือ / super timeline
Keyword Search + Data Carving เป็นตัวช้าสุด (index/สแกนทั้ง image) — ในโจทย์เล็กเปิดหมดได้ แต่ image ใหญ่ให้ค่อยเปิดทีละส่วน สามารถ 'Run Ingest Modules' ซ้ำภายหลังเฉพาะ module ที่ต้องการได้

5. ฟีเจอร์เด่นสำหรับ CTF

  • Deleted Files: Views → Deleted Files — Autopsy recover จาก MFT/inode ให้อัตโนมัติ (flag ในโจทย์มักอยู่ในไฟล์ที่ 'ลบไปแล้ว')
  • Keyword Search: ค้น 'flag', 'CTF{', 'password' ทั่ว image รวม unallocated/slack; รองรับ regex และ literal
  • File Types: Views → File Types → By Extension / By MIME — จัดกลุ่มรูป/เอกสาร/archive ให้เจอเร็ว
  • Extension Mismatch: Results → Extension Mismatch — หาไฟล์ที่เปลี่ยนนามสกุลซ่อน (เช่น secret.jpg ที่จริงเป็น zip/PNG)
  • Web Artifacts: Results → Extracted Content → Web History / Downloads / Cookies / Bookmarks
  • EXIF/GPS: Results → EXIF Metadata — พิกัด GPS + timestamp + รุ่นกล้อง (ต่อยอด geolocation)
  • Carved Files: Results → Carved Files — ไฟล์ที่ PhotoRec ดึงจาก unallocated (ไม่มี directory entry)
  • Data Content viewer: panel ล่างดู Hex / Strings / File Metadata / Application ของไฟล์ที่เลือกได้ทันที
ทางลัดหา flag เร็วสุด: Keyword Search รูปแบบ flag ('CTF{', 'flag{') ก่อนเลย → ถ้าไม่เจอ ค่อยไล่ Deleted Files → Extension Mismatch → Carved Files → Web/Registry artifacts ตามลำดับความน่าจะเป็น

6. Timeline

Tools → Timeline รวม event ตามเวลา (file created/modified/accessed จาก MAC times, web activity, ฯลฯ) เห็นว่ามีอะไรเกิดขึ้นช่วงไหน — เหมาะกับโจทย์ที่ถามลำดับเหตุการณ์ หรือหาไฟล์ที่ถูกสร้าง/แก้ 'รอบเวลาที่น่าสงสัย'

  • Bar chart mode: ดูปริมาณ event ต่อช่วงเวลา → zoom หา spike ที่น่าสนใจ
  • Filter: กรองตาม event type (file system, web, EXIF) และช่วงเวลา
  • MAC times: Modified / Accessed / Changed / Birth — ใช้เรียงลำดับการกระทำ
  • สำหรับ super timeline ที่ละเอียดกว่า (log2timeline/Plaso) ดูหัวข้อ timeline-analysis

7. Registry (Windows image)

สำหรับ image Windows, Autopsy แตก registry hive (SAM, SYSTEM, SOFTWARE, NTUSER.DAT) ผ่านโมดูล Recent Activity และแสดง artifact ที่สำคัญ เช่น USB ที่เคยเสียบ, บัญชีผู้ใช้, โปรแกรมที่รัน แต่ถ้าต้องเจาะ key ดิบให้ export hive ไปวิเคราะห์ต่อ

export hive แล้ววิเคราะห์ด้วย RegRipperWindows
# ใน Autopsy: หา NTUSER.DAT / SYSTEM / SOFTWARE / SAM
#   Data Sources > [vol] > Windows/System32/config/  → Extract File(s)

# วิเคราะห์ต่อด้วย RegRipper (นอก Autopsy)
rip.pl -r SYSTEM -f system     > system.txt
rip.pl -r SAM    -f sam        > sam.txt        # บัญชีผู้ใช้
rip.pl -r NTUSER.DAT -f ntuser > ntuser.txt     # กิจกรรมผู้ใช้

# key ที่ CTF ชอบซ่อน flag / เบาะแส:
#   Software\Microsoft\Windows\CurrentVersion\Run  (persistence)
#   USBSTOR (อุปกรณ์ที่เคยเสียบ)
#   RecentDocs / TypedPaths / RunMRU (ร่องรอยผู้ใช้)
Autopsy โชว์ artifact สรุป; export hive แล้วใช้ RegRipper/regedit เจาะ key ดิบเมื่อ flag ซ่อนใน registry value

8. Autopsy GUI vs Sleuth Kit CLI

Autopsy สร้างบน Sleuth Kit เบื้องหลังมันเรียก tool เดียวกับที่พิมพ์ CLI ได้ — รู้ทั้งสองแบบช่วยได้ (บาง task CLI เร็วกว่า, scriptable, และรันบน headless server ได้)

งานAutopsy (GUI)Sleuth Kit (CLI)
ดู partitionอ่านให้อัตโนมัติmmls image.dd
list ไฟล์ (รวมที่ลบ)Views → Deleted Filesfls -r -o image.dd
ดึงไฟล์ตาม inodeคลิก → Extracticat -o image.dd
MAC timelineTools → Timelinefls -m + mactime
carve unallocatedData Carving modulephotorec / scalpel / foremost
ค้นคำKeyword Searchstrings image.dd | grep flag
เลือกเครื่องมือตามชนิดหลักฐาน: disk image → Autopsy/TSK, memory → Volatility (ดู volatility), pcap → Wireshark (ดู wireshark-forensics) — ไม่มี tool เดียวทำได้ทุกอย่าง

9. Quick Reference

  • GUI ครอบ Sleuth Kit — วิเคราะห์ disk image (.dd/.E01) แบบคลิก
  • New Case → Add Data Source → เลือก Ingest Modules → สำรวจ tree
  • tree: Data Sources (ไฟล์) · Views (จัดกลุ่ม) · Results (artifact)
  • หา flag เร็ว: Keyword Search 'CTF{' → Deleted Files → Extension Mismatch → Carved
  • ingest สำคัญ: File Type, Extension Mismatch, Keyword, EXIF, Data Carving
  • Timeline (Tools → Timeline) ดู MAC times; Web/Registry ใน Results
  • registry: export hive → RegRipper (Run key, USBSTOR, RecentDocs)
  • CLI เทียบ: mmls / fls -r / icat / photorec / mactime
  • disk→Autopsy, memory→Volatility, pcap→Wireshark

🧭 จับมือทำทีละขั้น (มีแค่ Kali) + ถ้าติดไปไหนต่อ

สมมติเพิ่งได้โจทย์ disk image (.dd/.E01/.vmdk) มาไฟล์เดียว มีแค่ Kali เปล่าๆ ไม่เคยเปิด Autopsy มาก่อนก็ทำตามนี้ได้ ทำทีละขั้นตั้งแต่เปิด case จนเจอ flag

  1. 1พิมพ์ file evidence.dd (หรือ evidence.E01) ดูก่อนว่าเป็น raw image หรือ EnCase format
  2. 2เปิด Autopsy: พิมพ์ autopsy ใน terminal แล้วเปิดลิงก์ localhost:9999/autopsy ที่ขึ้นในเบราว์เซอร์
  3. 3New Case → ตั้งชื่อเคส + เลือกโฟลเดอร์เก็บผล (เผื่อพื้นที่ว่างสำหรับไฟล์ index) → Next → Finish
  4. 4Add Data Source → เลือก Disk Image or VM File → ชี้ไปที่ evidence.dd/.E01 → Next
  5. 5เลือก Ingest Modules อย่างน้อย: File Type Identification, Extension Mismatch Detector, Keyword Search, Recent Activity, Picture Analyzer → Finish แล้วรอ progress bar มุมขวาล่างจนเสร็จ
  6. 6พอ ingest เสร็จ เปิด Keyword Search พิมพ์ flag และ CTF{ ดูว่ามีผลลัพธ์ขึ้นมาไหม
  7. 7ถ้ายังไม่เจอ ไปดู Views → Deleted Files ดูว่ามีไฟล์ที่ถูกลบน่าสงสัยไหม
  8. 8ถ้ายังไม่เจอ ดู Results → Extracted Content → Extension Mismatch ดูไฟล์ที่นามสกุลไม่ตรงชนิดจริง
  9. 9ลองเปิด Data Carving module (ถ้ายังไม่เปิด) แล้วดู Results → Carved Files
  10. 10เปิด Tools → Timeline ดูว่ามีช่วงเวลาไหนกิจกรรมพุ่งผิดปกติ
หา flag ใน disk image — เจอที่ไหนก่อน ไปทางนั้น
เปิด image ด้วย Autopsy ได้ปกติไหม
New Case → Add Data Source → เลือกไฟล์
✅ เปิดได้ เห็น partition/ไฟล์ปกติn2
❌ ไฟล์นี้จริงๆ คือ memory dump (.vmem/.raw ของ RAM)toVol
❌ ไฟล์นี้จริงๆ คือ pcap (.pcap/.pcapng)toPcap
❌ error เปิดไม่ได้ (format แปลก)→ ลอง ewfmount (E01) หรือ qemu-nbd (vmdk) แปลงก่อนแล้วเพิ่มใหม่
Keyword Search หา 'flag' / 'CTF{' ทั่วทั้ง image
✅ เจอ→ เปิดไฟล์นั้นอ่าน flag ได้เลย จบ
❌ ไม่เจอn3
ดู Views → Deleted Files
✅ เจอไฟล์ลบที่น่าสงสัย→ extract ออกมาดู/เช็คชนิดไฟล์จริง
❌ ไม่เจอ/ไม่มั่นใจn4
ดู Extension Mismatch + Carved Files
✅ เจอไฟล์นามสกุลผิดหรือ carve ได้ไฟล์แปลก→ แก้นามสกุลให้ตรงชนิดจริงแล้วเปิดดู
❌ ยังไม่เจอn5
ต้องเจาะลึกกว่า GUI แล้ว เลือกทางต่อ
ต้องการคำสั่ง CLI ดิบ (fls/icat/carve มือ)toDisk
ต้องเรียงลำดับเหตุการณ์ทั้งหมดว่าใครทำอะไรก่อนหลังtoTimeline
ขั้นตอน/งานเครื่องมือใน Kaliติดตั้งเพิ่ม (ถ้าไม่มี)เครื่องมือออนไลน์
เปิด/index disk imageautopsy, sleuthkitapt install autopsy sleuthkit-
แปลง E01/VMDK ก่อน mountewf-tools, qemu-utilsapt install ewf-tools qemu-utils-
กู้ไฟล์ที่ถูกลบsleuthkit (fls -rd, icat)--
carve จาก unallocatedphotorec, foremost, binwalkapt install foremost-
เช็คชนิดไฟล์จริงfile, exiftoolapt install exiftool-
เจาะ registry hiveregripperapt install regripper-
ค้น string/flag ทั่วไฟล์strings, grep-CyberChef (decode ผลที่เจอ)
ตรวจ hash ไฟล์กับ known-badmd5sum/sha1sum, hashdeepapt install hashdeepvirustotal.com
🚑 ถ้าตันสนิท ลองท่าถัดไป:
• ไฟล์นี้จริงๆ เป็น memory dump ไม่ใช่ disk → ไป Volatility (วิเคราะห์ RAM)
• ไฟล์นี้จริงๆ เป็น pcap ไม่ใช่ disk → ไป PCAP Analysis
• ต้องกู้ไฟล์ระดับ inode/carve เองแบบ CLI → ไป Disk Analysis
• ต้องเรียงลำดับเหตุการณ์ทั้งหมด (ใครทำอะไรก่อนหลัง) → ไป Timeline Analysis

โน้ตของฉัน

ยังไม่มีโน้ตสำหรับหัวข้อนี้