Article
Memory Forensics: Thu Thập và Phân Tích RAM Dump
Hướng dẫn thu thập memory dump trên Windows và phân tích với Volatility 3 — từ triage nhanh đến truy tìm malware ẩn trong RAM.
RAM là nơi lưu trữ mọi thứ đang chạy trên hệ thống tại thời điểm xảy ra sự cố. Malware chạy trong bộ nhớ, credentials bị dump từ lsass, lateral movement tool nạp trực tiếp không chạm đĩa — tất cả đều ở trong RAM. Đây là lý do memory forensics là kỹ năng không thể thiếu trong IR.
Thu thập Memory Dump
Công cụ trên Windows:
- WinPmem — mã nguồn mở, không cần cài đặt, phù hợp IR nhanh
- DumpIt — đơn giản, click-to-run, output là file
.raw - Magnet RAM Capture — GUI, free, ghi log timestamp
- FTK Imager — có tùy chọn memory acquisition tích hợp
Khi thu thập trên live system, luôn ưu tiên ghi vào thiết bị ngoài (USB, network share) thay vì ổ đĩa cục bộ để tránh ghi đè artifact.
# WinPmem — dump toàn bộ RAM ra file
winpmem_mini_x64.exe memdump.raw
# DumpIt — đơn giản hơn
DumpIt.exe /output memdump.raw
Thứ tự thu thập (order of volatility): RAM → network connections → running processes → disk. Thu thập RAM trước tiên, trước khi làm bất cứ điều gì khác.
Volatility 3 — Framework phân tích
Volatility là công cụ phân tích memory dump phổ biến nhất. Version 3 không còn cần symbol profile thủ công như v2.
# Cài đặt
pip install volatility3
# Xác định OS và version
vol -f memdump.raw windows.info
Các plugin quan trọng
Process listing:
# Danh sách process đang chạy
vol -f memdump.raw windows.pslist
# Process tree — nhìn thấy parent-child relationship
vol -f memdump.raw windows.pstree
# Phát hiện hidden process (so sánh với kernel list)
vol -f memdump.raw windows.psscan
Sự khác biệt giữa pslist và psscan có thể là dấu hiệu process bị ẩn (rootkit).
Network connections:
# Kết nối mạng tại thời điểm dump
vol -f memdump.raw windows.netstat
Tìm kiếm: kết nối từ process lạ, port bất thường, kết nối đến IP nghi ngờ.
DLL và modules:
# DLL đã nạp trong từng process
vol -f memdump.raw windows.dlllist --pid 1234
# Tìm code inject vào process khác
vol -f memdump.raw windows.malfind
malfind tìm vùng nhớ có quyền MEM_PRIVATE + PAGE_EXECUTE_READWRITE — đây là dấu hiệu điển hình của shellcode injection.
Registry hives trong RAM:
# Liệt kê hive đang mở
vol -f memdump.raw windows.registry.hivelist
# Đọc key cụ thể
vol -f memdump.raw windows.registry.printkey --key "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
Persistence thường thấy: Run keys, Startup folder, services. Xem trực tiếp trong RAM cho thấy cả giá trị đã bị xóa khỏi đĩa.
Triage nhanh — Quy trình 30 phút
Thứ tự phân tích khi cần kết quả nhanh:
windows.info— xác nhận dump hợp lệ, OS version, thời điểm thu thậpwindows.pstree— tìm process bất thường: parent sai (ví dụexplorer.exesinh racmd.exe), tên giả mạo (svchost.exechạy từ thư mục khác)windows.netstat— phát hiện C2 connectionwindows.malfind— tìm injected codewindows.cmdline— xem command line của từng process
# Xem command line của toàn bộ process
vol -f memdump.raw windows.cmdline
# Dump process cụ thể ra file để phân tích thêm
vol -f memdump.raw windows.dumpfiles --pid 1234
Dấu hiệu đáng ngờ cần chú ý
Process:
svchost.exechạy từ đường dẫn không phảiC:\Windows\System32\lsass.execó nhiều hơn 1 instance- Process có tên giống system process nhưng PID thấp bất thường
explorer.exechạy từAppDatahoặcTemp
Network:
- Kết nối TCP từ
notepad.exe,calc.exe, hay browser đến IP ngoài port 80/443 - Beacon traffic: kết nối đều đặn với interval cố định
- Kết nối đến domain mới đăng ký hoặc IP trong AS của hosting provider rẻ tiền
Memory regions:
- Vùng
MEM_PRIVATE+RWXtrong process system hợp pháp - Code không có backing file trên đĩa (dấu hiệu fileless malware)
Ghi chú thực tế
Memory dump từ máy bị nhiễm thường có size bằng đúng RAM vật lý. Với máy 16GB RAM, dump sẽ tốn ~16GB dung lượng và vài phút để ghi.
Nếu không thể dump toàn bộ RAM (máy đang production), cân nhắc dump process cụ thể:
# Dump riêng lsass để tìm credentials
vol -f memdump.raw windows.dumpfiles --physaddr <addr>
Volatility 3 hỗ trợ cả Linux và macOS với cú pháp tương tự — thay prefix windows. bằng linux. hoặc mac..