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)
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 เร็ว
2. รูปแบบ image ที่รองรับ
| ชนิด data source | ตัวอย่างไฟล์ | หมายเหตุ |
|---|---|---|
| Disk Image (raw) | .dd / .raw / .img | sector-by-sector ตรงๆ |
| EnCase | .E01 / .Ex01 | มี metadata + compression + hash (นิยมในงานจริง) |
| Virtual disk | .vmdk / .vhd / .vdi | จาก VM |
| Logical Files | โฟลเดอร์/ไฟล์แยก | เมื่อไม่มี image เต็ม |
| Local Disk | physical drive | วิเคราะห์ไดรฟ์จริง (ควรใช้ write-blocker) |
| Unallocated Space | carve จาก image | PhotoRec/carving ดึงไฟล์ที่ไม่มี entry |
.dd, .E01 หรือบางที .raw ถ้าเป็นไฟล์ image ของทั้งดิสก์ (มี partition table) Autopsy จะอ่าน partition ให้เอง; ถ้าเป็น partition เดี่ยวก็เพิ่มเป็น data source ได้เช่นกัน3. Workflow — สร้าง case ถึงหา flag
- 1New Case → ตั้งชื่อ + โฟลเดอร์เก็บผล → Next
- 2Add Data Source → เลือกชนิด (Disk Image เลือกไฟล์ .dd/.E01)
- 3เลือก Ingest Modules ที่จะรัน (ดู section 4) — เปิดที่จำเป็น ปิดที่ช้าและไม่ต้องใช้
- 4รอ ingest เสร็จ (progress มุมขวาล่าง) — Autopsy index + วิเคราะห์อัตโนมัติ
- 5สำรวจ tree ซ้าย: Data Sources (ไฟล์ระบบ), Views (จัดกลุ่ม), Results (สิ่งที่ ingest เจอ)
- 6Keyword Search 'flag'/'CTF{' ทั่วทั้ง image (รวม unallocated/slack)
- 7ดู Deleted Files, Extension Mismatch, Web/Registry artifacts, EXIF
- 8tag ไฟล์ที่เจอ → Generate Report (HTML/Excel) สำหรับสรุป
4. Ingest Modules — เลือกให้ถูก
| module | ทำอะไร | ต้องใช้ตอน |
|---|---|---|
| Recent Activity | web 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 Search | index ข้อความ → ค้นทั่ว 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 / Plaso | artifact เฉพาะทาง | มือถือ / super timeline |
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 ของไฟล์ที่เลือกได้ทันที
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 ไปวิเคราะห์ต่อ
# ใน 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 (ร่องรอยผู้ใช้)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 Files | fls -r -o |
| ดึงไฟล์ตาม inode | คลิก → Extract | icat -o |
| MAC timeline | Tools → Timeline | fls -m + mactime |
| carve unallocated | Data Carving module | photorec / scalpel / foremost |
| ค้นคำ | Keyword Search | strings image.dd | grep flag |
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พิมพ์ file evidence.dd (หรือ evidence.E01) ดูก่อนว่าเป็น raw image หรือ EnCase format
- 2เปิด Autopsy: พิมพ์ autopsy ใน terminal แล้วเปิดลิงก์ localhost:9999/autopsy ที่ขึ้นในเบราว์เซอร์
- 3New Case → ตั้งชื่อเคส + เลือกโฟลเดอร์เก็บผล (เผื่อพื้นที่ว่างสำหรับไฟล์ index) → Next → Finish
- 4Add Data Source → เลือก Disk Image or VM File → ชี้ไปที่ evidence.dd/.E01 → Next
- 5เลือก Ingest Modules อย่างน้อย: File Type Identification, Extension Mismatch Detector, Keyword Search, Recent Activity, Picture Analyzer → Finish แล้วรอ progress bar มุมขวาล่างจนเสร็จ
- 6พอ ingest เสร็จ เปิด Keyword Search พิมพ์ flag และ CTF{ ดูว่ามีผลลัพธ์ขึ้นมาไหม
- 7ถ้ายังไม่เจอ ไปดู Views → Deleted Files ดูว่ามีไฟล์ที่ถูกลบน่าสงสัยไหม
- 8ถ้ายังไม่เจอ ดู Results → Extracted Content → Extension Mismatch ดูไฟล์ที่นามสกุลไม่ตรงชนิดจริง
- 9ลองเปิด Data Carving module (ถ้ายังไม่เปิด) แล้วดู Results → Carved Files
- 10เปิด Tools → Timeline ดูว่ามีช่วงเวลาไหนกิจกรรมพุ่งผิดปกติ
| ขั้นตอน/งาน | เครื่องมือใน Kali | ติดตั้งเพิ่ม (ถ้าไม่มี) | เครื่องมือออนไลน์ |
|---|---|---|---|
| เปิด/index disk image | autopsy, sleuthkit | apt install autopsy sleuthkit | - |
| แปลง E01/VMDK ก่อน mount | ewf-tools, qemu-utils | apt install ewf-tools qemu-utils | - |
| กู้ไฟล์ที่ถูกลบ | sleuthkit (fls -rd, icat) | - | - |
| carve จาก unallocated | photorec, foremost, binwalk | apt install foremost | - |
| เช็คชนิดไฟล์จริง | file, exiftool | apt install exiftool | - |
| เจาะ registry hive | regripper | apt install regripper | - |
| ค้น string/flag ทั่วไฟล์ | strings, grep | - | CyberChef (decode ผลที่เจอ) |
| ตรวจ hash ไฟล์กับ known-bad | md5sum/sha1sum, hashdeep | apt install hashdeep | virustotal.com |
• ไฟล์นี้จริงๆ เป็น memory dump ไม่ใช่ disk → ไป Volatility (วิเคราะห์ RAM)
• ไฟล์นี้จริงๆ เป็น pcap ไม่ใช่ disk → ไป PCAP Analysis
• ต้องกู้ไฟล์ระดับ inode/carve เองแบบ CLI → ไป Disk Analysis
• ต้องเรียงลำดับเหตุการณ์ทั้งหมด (ใครทำอะไรก่อนหลัง) → ไป Timeline Analysis
หัวข้อที่เชื่อมโยง
โน้ตของฉัน
ยังไม่มีโน้ตสำหรับหัวข้อนี้