Bài 1: Introduction to Malware Analysis


Mục tiêu phân tích tài liệu

Tài liệu gồm 32 slide, tôi xác định 5 chủ đề cốt lõi sau khi lọc phần hành chính:

  1. Mục tiêu & vai trò của Malware Analysis
  2. Các loại Malware & Payload
  3. Phương pháp phân tích (Static / Dynamic / Hybrid)
  4. Công cụ & quy trình triage
  5. PE File & Packing

Mục tiêu & Vai Trò của Malware Analysis

Malware analysis không chỉ là “reverse engineering cho vui” — đây là kỹ năng sống còn trong incident response. Khi AV bỏ sót 70–90% mẫu mã độc đặc thù cho từng tổ chức, analyst chính là lớp phòng thủ cuối cùng.

Khái niệm & lý thuyết

Malware Analysis là quá trình kiểm tra mã độc nhằm xác định hành vi, khả năng lây lan, và cơ chế hoạt động của nó.

Ba cấp độ phản ứng sau breach:

Cấp độHành độngGiới hạn
TypicalReimage máyKhông biết còn máy nào bị nhiễm không
Incident ResponsePhân tích log, network, process lạBiết cái gì xảy ra, chưa biết tại sao
Mature (Threat Intel)Phân tích impact, risk, attributionHiểu đầy đủ — APT? Financial? Hacktivist?

Hai loại signature sinh ra từ malware analysis:

  • Host-based signature (IoC): Tập trung vào hành vi của malware trên hệ thống — file được tạo/sửa, registry key bị thay đổi. Hiệu quả hơn AV signature vì không phụ thuộc vào “hình dạng” file.
  • Network signature: Phát hiện traffic độc hại. Khi kết hợp với malware analysis, tỉ lệ phát hiện cao hơn và false positive thấp hơn đáng kể.

Cách hoạt động / Luồng xử lý

flowchart TD A[Phát hiện breach] --> B{Cấp độ phản ứng} B --> C[Typical: Reimage] B --> D[Incident Response] B --> E[Mature: Threat Intel] D --> D1[Phân tích log & traffic] D1 --> D2[Xác định máy bị nhiễm] D2 --> D3[Truy nguồn gốc lây nhiễm] E --> E1[Phân tích mẫu malware] E1 --> E2[Tạo host-based signature] E1 --> E3[Tạo network signature] E2 & E3 --> E4[Deploy detection rule] E4 --> E5[Thu thập Threat Intelligence]

Ví dụ thực tế & Analogy

Ví dụ: WannaCry 2017 — AV của nhiều tổ chức không phát hiện variant đầu tiên. Chỉ khi analyst reverse engineer được dropper, họ mới tìm ra killswitch domain và tạo được network signature ngăn lây lan.

Analogy: Malware analysis giống như bác sĩ pháp y sau vụ án. Cảnh sát (AV) có thể bắt tội phạm quen mặt, nhưng kẻ mới hoặc cải trang thì cần pháp y — mổ xẻ từng chi tiết — mới biết chính xác chuyện gì đã xảy ra.

⚠️ Điểm hay gặp sai / Cần lưu ý

Câu hỏi thực tế

  1. Một máy trong mạng doanh nghiệp bị nhiễm ransomware. Bạn chỉ có 1 giờ trước khi mọi người bắt đầu làm việc. Bạn ưu tiên reimage hay phân tích malware trước? Tại sao?
  2. Sau khi phân tích, bạn tìm thấy malware ghi file svchost32.dll vào C:\Windows\Temp\. Bạn sẽ tạo loại signature nào để deploy toàn mạng nhanh nhất?
  3. Một APT group sử dụng malware tự thay đổi hash mỗi lần lây nhiễm. Tại sao host-based signature hiệu quả hơn AV signature trong trường hợp này?

💡 Chốt nhanh: Malware analysis sinh ra hai thứ: IoC để hunt trên hostnetwork signature để monitor traffic. Mục tiêu cuối cùng là hiểu đầy đủ cơ chế hoạt động của mã độc — không chỉ dọn sạch một máy.


Phân Loại Malware

Biết tên không đủ — phải hiểu cơ chế thì mới phân tích đúng hướng và không bị lạc trong đống assembly code.

Khái niệm & lý thuyo thuyết

General malware — hoạt động theo cơ chế phổ biến:

LoạiCơ chế cốt lõi
VirusTự nhân bản bằng cách gắn vào file hợp lệ — cần host file để sống
WormTự nhân bản không cần host — lan qua network tự động
TrojanGiả dạng phần mềm hợp lệ — không tự nhân bản
BotNhận lệnh từ C&C (Command-and-Control) server
RootkitẨn sự tồn tại của malware khác — thường đi kèm backdoor
RATRemote Access Trojan — điều khiển từ xa toàn diện

Specialized malware — chức năng cụ thể hơn:

LoạiMục tiêu
SpywareThu thập thông tin người dùng thầm lặng
AdwareHiển thị quảng cáo không mong muốn
ScarewareDọa người dùng để bán “giải pháp giả”
Credential StealerKeylogger, sniffer, password hash grabber
BackdoorDuy trì quyền truy cập sau khi xâm nhập
Loader/DownloaderTải và chạy malware khác — thường là bước đầu xâm nhập

Malicious Payloads:

  • Shellcode: Tập lệnh được inject và thực thi bởi chương trình bị khai thác
  • Staged payload: Nhiều giai đoạn — stage 1 nhỏ gọn, chỉ để kéo stage 2 về
  • Stageless payload: Tất cả trong một — chứa sẵn reverse shell callback

Mass vs. Targeted Malware:

  • Mass malware: Lây nhiễm càng nhiều máy càng tốt — dễ phân tích hơn vì có nhiều mẫu
  • Targeted malware (APT): Được viết riêng cho một tổ chức/cá nhân — rất khó phát hiện, cần phân tích nâng cao

Cách hoạt động / Luồng xử lý

flowchart LR subgraph Initial["Giai đoạn xâm nhập"] A[Downloader / Loader] end subgraph Persistence["Duy trì hiện diện"] B[Backdoor] C[Rootkit] B <--> C end subgraph Action["Hành động độc hại"] D[Credential Stealer] E[Ransomware] F[Bot / C&C] G[RAT] end A -->|kéo về & chạy| B A -->|kéo về & chạy| D B --> G F -->|nhận lệnh từ| H[C&C Server]
sequenceDiagram participant Attacker participant C2 as C&C Server participant Bot Bot->>C2: Check-in (beacon) C2->>Bot: Command: download & run payload Bot->>Bot: Execute staged payload Bot->>Attacker: Reverse shell / data exfil

Ví dụ thực tế & Analogy

Ví dụ — Staged payload với Metasploit:

Stage 1 (stager): ~300 bytes — chỉ mở socket và kéo stage 2
Stage 2 (Meterpreter): ~200KB — full-featured reverse shell

Tách 2 giai đoạn giúp bypass detection vì stage 1 quá nhỏ và không chứa code nguy hiểm.

Analogy — Rootkit + Backdoor:
Rootkit giống người canh cổng tàng hình — không thấy mặt anh ta, nhưng anh ta đảm bảo backdoor (cửa hậu) luôn mở và không ai biết cửa đó tồn tại. Diệt backdoor mà không diệt rootkit thì backdoor sẽ tái xuất hiện.

Analogy — Mass vs Targeted:
Mass malware như bom xăng ném vào đám đông — gây hại rộng, không cần chính xác. Targeted malware như sniper — một viên đạn, một mục tiêu cụ thể, cần trinh sát kỹ lưỡng trước.

⚠️ Điểm hay gặp sai / Cần lưu ý

Câu hỏi thực tế

  1. Bạn tìm được một file .exe 15KB trên máy bị nhiễm. File chỉ có một chức năng: kết nối tới IP lạ và download file khác. Đây là loại malware gì? Bước phân tích tiếp theo của bạn là gì?
  2. Một máy trong mạng liên tục gửi HTTP request đều đặn mỗi 60 giây tới một domain lạ. Đây có thể là hành vi của loại malware nào? Bạn cần xác nhận thêm thông tin gì?
  3. Sau khi dọn malware, máy bị nhiễm lại sau 2 ngày mặc dù bạn đã xóa file executable. Có thể cơ chế nào đang hoạt động?

💡 Chốt nhanh: Hiểu loại malware → hiểu cái gì cần tìm khi phân tích. Loader dẫn đến payload thật; rootkit bảo vệ backdoor; bot nhận lệnh từ C&C. Mỗi loại có artifact và IoC đặc trưng riêng.


Phương Pháp Phân Tích

Ba con đường tiếp cận malware — mỗi cái có trade-off riêng. Analyst giỏi biết khi nào dùng cái nào.

Khái niệm & lý thuyết

Phương phápMô tảƯu điểmNhược điểm
Static AnalysisKiểm tra mà không chạy malwareAn toàn, không cần VM đặc biệtChậm, cần kiến thức RE sâu
Dynamic AnalysisChạy malware và quan sát hành viNhanh, trực quanDễ bỏ sót nhánh code không được kích hoạt
HybridKết hợp cả hai — thấy gì trong disassembly thì confirm bằng cách chạyHiệu quả nhất trong thực tếCần thành thạo cả hai

Công cụ Static Analysis:

  • VirusTotal — kiểm tra hash, so sánh với database
  • strings — extract chuỗi ASCII/Unicode từ binary
  • IDA Pro / Ghidra / x64dbg — disassembler và debugger

Công cụ Dynamic Analysis:

  • Process Monitor (ProcMon) — monitor file, registry, network calls
  • RegShot — snapshot registry trước/sau khi chạy malware
  • Process Hacker — xem process tree, memory, handles
  • CaptureBAT — capture toàn bộ behavior
  • Volatility / Mandiant Redline — RAM forensics

Cách hoạt động / Luồng xử lý

flowchart TD A[Nhận mẫu malware nghi vấn] --> B[Triage nhanh] B --> B1[MD5 hash → VirusTotal] B --> B2[strings → tìm URL, IP, key] B --> B3[Hex editor → xem header] B1 & B2 & B3 --> C{Đủ thông tin?} C -->|Chưa| D[Static Analysis sâu] C -->|Cần xác nhận| E[Dynamic Analysis] D --> D1[Disassembly với IDA Pro / Ghidra] D1 --> D2[Tìm key functions, API calls] D2 --> E E --> E1[Chuẩn bị VM snapshot sạch] E1 --> E2[Chạy malware trong VM] E2 --> E3[Monitor: ProcMon + RegShot + Wireshark] E3 --> E4[So sánh trước/sau] E4 --> F[Viết báo cáo + IoC]

Ví dụ thực tế & Analogy

Ví dụ — Hybrid trong thực tế:
Bạn disassemble một hàm encrypt trong IDA Pro và thấy nó XOR từng byte với key cố định. Thay vì giải thủ công, bạn set breakpoint tại điểm sau khi decrypt hoàn tất và chạy malware trong debugger để dump chuỗi đã decrypt ra. Đây là hybrid — static để tìm điểm quan trọng, dynamic để extract data.

Analogy — Static vs Dynamic:
Static analysis như đọc công thức thuốc độc trong sách hóa học — bạn hiểu thành phần nhưng không thấy tác dụng thực tế. Dynamic analysis như để chuột lab uống thuốc và quan sát — bạn thấy triệu chứng nhưng có thể bỏ sót phần tác dụng chỉ xảy ra sau 7 ngày. Hybrid thì bạn vừa đọc công thức vừa quan sát thực nghiệm.

⚠️ Điểm hay gặp sai / Cần lưu ý

Câu hỏi thực tế

  1. Bạn nhận được một mẫu malware đã được pack bằng UPX. Bạn sẽ bắt đầu bằng static hay dynamic analysis? Tại sao? Bước đầu tiên cụ thể là gì?
  2. Dynamic analysis của bạn không thấy malware làm gì bất thường. Nhưng colleague của bạn nói mạng thực tế bị mã hóa toàn bộ sau khi bị nhiễm loại malware này. Bạn nghi ngờ điều gì?
  3. Bạn cần tạo IoC nhanh nhất có thể trong 30 phút. Bạn chọn phương pháp nào và output cụ thể là gì?

💡 Chốt nhanh: Static an toàn nhưng chậm. Dynamic nhanh nhưng có thể bị qua mặt. Hybrid là chuẩn mực thực tế — disassembly để hiểu structure, debugger để confirm và extract runtime data.


PE File & Packing

Hiểu cấu trúc PE file là nền tảng của mọi kỹ thuật static analysis. Packing là kỹ thuật malware dùng để “che” bản thân — analyst phải unpack được mới phân tích tiếp.

Khái niệm & lý thuyết

PE (Portable Executable) là định dạng file thực thi của Windows (.exe, .dll, .sys…).

Cấu trúc chính:

Thành phầnVai trò
MS-DOS HeaderTương thích ngược với DOS, chứa magic bytes MZ
PE File HeaderMetadata: architecture, số section, timestamp
Optional HeaderEntry point, image base, subsystem
Section HeadersMô tả từng section (tên, offset, size, flags)
.text sectionCode thực thi
.rdata sectionRead-only data: strings, import table
.data sectionInitialized global variables
.rsrc sectionResources: icon, dialog, version info

Key concepts:

  • OEP (Original Entry Point): Điểm thực thi đầu tiên của file gốc
  • VA (Virtual Address): Địa chỉ khi file được load vào memory
  • RVA (Relative Virtual Address): Offset tính từ image base

Packing là gì?
Packer nén/encrypt toàn bộ PE gốc, bọc nó trong một stub nhỏ. Khi chạy, stub sẽ giải nén PE gốc vào memory rồi nhảy tới OEP — mọi chuyện xảy ra hoàn toàn trong RAM.

Cách hoạt động / Luồng xử lý

flowchart LR subgraph Normal["PE File bình thường"] n1[PE Header] n2[.text - Code] n3[.rdata - Data] n4[.rsrc - Resource] end subgraph Packed["Packed PE File"] p1[PE Header] p2[Packed original - nén/mã hóa] p3[Unpack stub - code giải nén] end subgraph Runtime["Khi chạy trong memory"] r1[Stub chạy trước] r2[Giải nén PE gốc vào RAM] r3[Jump tới OEP] r4[Malware thật thực thi] r1 --> r2 --> r3 --> r4 end Packed -->|Execute| Runtime

Quy trình unpack thủ công (ESP trick):

1. Load packed binary vào x32dbg
2. Set breakpoint on ESP (hardware breakpoint sau PUSHAD)
3. Run → dừng khi stub chuẩn bị jump tới OEP
4. Tìm lệnh JMP/CALL → OEP
5. Set breakpoint tại OEP
6. Dump memory bằng Scylla
7. Fix IAT (Import Address Table)

Ví dụ thực tế & Analogy

Ví dụ — Nhận biết packed file:

# Dùng strings trên packed file:
$ strings malware.exe
# Output: rất ít string có nghĩa, thấy nhiều ký tự rác
# → dấu hiệu bị pack

# Entropy cao > 7.0 → file bị nén/mã hóa
# Tool: PE Studio, Detect-It-Easy (DIE)

Ví dụ — Dùng DIE để phát hiện packer:

Detect-It-Easy output:
  PE: UPX 3.95 [NRV2B] → rõ ràng là packed bằng UPX
  PE: unknown packer → cần unpack thủ công

Analogy — Packing:
Packed malware giống như tài liệu mật được đặt trong hộp khóa (stub). Chỉ khi hộp được mở (stub chạy và giải mã) thì tài liệu thật mới xuất hiện. Nếu bạn phân tích cái hộp, bạn chỉ thấy cơ chế mở khóa — không thấy nội dung bên trong.

⚠️ Điểm hay gặp sai / Cần lưu ý

Câu hỏi thực tế

  1. Bạn mở một file .exe trong IDA Pro nhưng chỉ thấy khoảng 10 function và gần như không có import nào. Bạn nghi ngờ điều gì và bước tiếp theo là gì?
  2. Sau khi dump một packed binary từ memory, khi load vào IDA Pro bạn thấy tất cả các import đều là địa chỉ số lẻ không có nghĩa. Vấn đề là gì?
  3. Bạn cần so sánh behavior của malware trước và sau khi unpack. Công cụ nào trong bộ dynamic analysis giúp bạn làm điều này hiệu quả nhất?

💡 Chốt nhanh: PE file = bản đồ của executable. Packing = ẩn bản đồ thật trong một phong bì. Unpack = mở phong bì. Mọi static analysis đều vô nghĩa nếu bạn đang đọc stub thay vì malware thật.


Quy Tắc Vàng & Công Cụ Triage

Phần này tổng hợp mindset và workflow thực tế của analyst — thứ không có trong sách nhưng cực kỳ quan trọng trong nghề.

Khái niệm & lý thuyết

Ba quy tắc vàng của malware analysis:

  1. Đừng sa lầy vào chi tiết — Malware thường rất lớn và phức tạp. Focus vào key features trước, general overview trước khi đào sâu.

  2. Không có “một công cụ duy nhất” — Mỗi tình huống cần công cụ khác nhau. Bí với IDA? Thử Ghidra. Bí với một approach? Thử góc nhìn khác.

  3. Cat-and-mouse game — Malware author luôn phát triển kỹ thuật anti-analysis mới để đáp lại analyst. Analyst phải liên tục cập nhật.

One-Minute Triage workflow:

1. Hash file (MD5/SHA256)
2. Upload hash lên VirusTotal → xem detection rate, common names, IoC
3. Chạy strings → tìm URL, IP, registry keys, mutex names
4. Mở Hex editor → xem magic bytes, PE header, entropy
5. Dùng Detect-It-Easy → xác định packer, compiler, architecture

Cách hoạt động / Luồng xử lý

flowchart TD A[Nhận file nghi vấn] --> B[Tính hash MD5/SHA256] B --> C[VirusTotal lookup] C --> D{Known malware?} D -->|Có| E[Đọc báo cáo VT + threat intel] D -->|Không / cần thêm| F[strings extraction] F --> G[Tìm: URLs, IPs, filenames, mutex, registry] G --> H[Hex editor / PE viewer] H --> I[Check entropy từng section] I --> J{Packed?} J -->|Có| K[Unpack trước] J -->|Không| L[Static / Dynamic Analysis] K --> L E --> L

Bộ công cụ tối thiểu:

Static:
├── PE Studio / CFF Explorer     # PE header analysis
├── Detect-It-Easy (DIE)         # Packer/compiler detection
├── strings (Sysinternals)       # String extraction
├── IDA Pro / Ghidra             # Disassembler
└── VirusTotal                   # Hash lookup

Dynamic:
├── x64dbg                       # Debugger
├── Process Monitor (ProcMon)    # Behavior monitoring
├── RegShot                      # Registry diff
├── Wireshark / FakeNet-NG       # Network monitoring
└── Volatility                   # Memory forensics

VM Setup:
├── VMware / VirtualBox          # Isolation
├── Snapshot sạch                # Rollback sau mỗi run
└── INetSim / ApateDNS           # Fake network services

Ví dụ thực tế & Analogy

Ví dụ — strings output tiêu biểu của malware:

$ strings malware.exe | grep -E "(http|\.exe|HKEY|CreateRemoteThread)"
http://evil-c2.xyz/gate.php
C:\Users\Public\svchost32.exe
HKEY_CURRENT_USER\Software\Microsoft\Windows\Run
CreateRemoteThread
VirtualAllocEx
WriteProcessMemory

Chỉ 6 dòng này đã tiết lộ: C&C URL, persistence mechanism, và process injection capability.

Analogy — Triage:
One-minute triage giống như bác sĩ cấp cứu đánh giá bệnh nhân trong 60 giây đầu — không phải để chẩn đoán hoàn toàn, mà để biết mức độ khẩn cấpưu tiên xử lý gì trước.

⚠️ Điểm hay gặp sai / Cần lưu ý

Câu hỏi thực tế

  1. VirusTotal trả về 0/72 cho một file exe bạn tìm thấy trên máy bị nghi nhiễm. Bạn sẽ xử lý file này như thế nào tiếp theo?
  2. Bạn đang phân tích một malware phức tạp và bị kẹt ở một đoạn obfuscated code trong 2 tiếng. Theo quy tắc vàng, bạn nên làm gì?
  3. Bạn cần setup lab dynamic analysis trong 1 giờ cho buổi seminar. Liệt kê 5 bước tối thiểu cần thực hiện trước khi chạy malware đầu tiên.

💡 Chốt nhanh: Triage = hash → VirusTotal → strings → hex. Đây là 60 giây quyết định bạn cần đầu tư bao nhiêu thời gian phân tích tiếp theo. Công cụ ít nhưng thành thạo luôn tốt hơn cài đầy máy mà không dùng được.



📝 Quiz: Introduction to Malware Analysis


Tầng 1 — Ghi nhớ

Câu 1. Malware là viết tắt của?

  • Malicious Software
  • Management Layer Software
  • Multi-Layer Attack Software
  • Malfunction Software

Câu 2. Host-based signature (IoC) tập trung vào điều gì?

  • Hành vi của malware trên hệ thống (file tạo ra, registry thay đổi)
  • Hash của file malware
  • Byte pattern trong binary
  • Địa chỉ IP của C&C server

Câu 3. Loại malware nào tự nhân bản mà KHÔNG cần file host?

  • Worm
  • Virus
  • Trojan
  • Spyware

Câu 4. Rootkit thường đi kèm với loại malware nào?

  • Backdoor
  • Ransomware
  • Adware
  • Worm

Câu 5. Trong cấu trúc PE file, section nào chứa code thực thi?

  • .text
  • .rdata
  • .data
  • .rsrc

Câu 6. Packer làm gì với PE file?

  • Nén/mã hóa PE gốc và thêm stub để giải nén khi chạy
  • Xóa các section không cần thiết để file nhỏ hơn
  • Thay đổi entry point về địa chỉ 0x0
  • Gắn malware vào file PE hợp lệ khác

Câu 7. Dynamic analysis khác static analysis ở điểm cơ bản nào?

  • Dynamic analysis thực sự chạy malware để quan sát hành vi
  • Dynamic analysis nhanh hơn và chính xác hơn
  • Dynamic analysis không cần môi trường cô lập
  • Dynamic analysis chỉ dùng cho malware đã được unpack

Câu 8. OEP trong ngữ cảnh PE packing là gì?

  • Original Entry Point — điểm thực thi đầu tiên của PE gốc trước khi bị pack
  • Open Execution Path — đường dẫn thực thi mở
  • Offset Entry Pointer — con trỏ offset vào file
  • Operating Entry Protocol — giao thức khởi động hệ điều hành

Tầng 2 — Hiểu & Phân Tích

Câu 9. Tại sao host-based IoC hiệu quả hơn AV signature khi phát hiện polymorphic malware?

  • Vì IoC dựa trên hành vi (tạo file, sửa registry) thay vì đặc điểm của file — hành vi ít thay đổi hơn hình dạng file
  • Vì IoC được cập nhật nhanh hơn AV database
  • Vì IoC chỉ cần 1 byte để match
  • Vì AV không thể quét registry

Câu 10. Một analyst chọn chỉ dùng dynamic analysis cho toàn bộ quá trình phân tích. Rủi ro lớn nhất là gì?

  • Bỏ sót các code path không được kích hoạt trong điều kiện test (time bomb, anti-VM logic)
  • File có thể bị corrupt trong quá trình chạy
  • Dynamic analysis không thể tìm được IoC
  • Malware sẽ tự xóa khi phát hiện đang bị monitor

Câu 11. So sánh Staged payload và Stageless payload: lý do attacker chọn staged payload là gì?

  • Stage 1 nhỏ gọn, dễ bypass detection hơn; stage 2 được tải về sau khi đã establish foothold
  • Staged payload mã hóa tốt hơn
  • Stageless payload không hỗ trợ reverse shell
  • Staged payload chỉ dùng trong APT, không dùng trong mass malware

Câu 12. Bạn thấy entropy của section .text là 7.8 (thang 0–8). Điều này gợi ý điều gì nhất?

  • File có thể bị packed hoặc encrypted — cần unpack trước khi phân tích
  • File được viết bằng C++ với nhiều template
  • File sử dụng nhiều string constants
  • File có nhiều resource nhúng

Câu 13. Tại sao targeted malware khó phát hiện hơn mass malware?

  • Targeted malware được viết riêng cho một tổ chức/cá nhân — không có mẫu nào trong AV database, và attacker đã nghiên cứu kỹ môi trường mục tiêu
  • Targeted malware sử dụng ngôn ngữ lập trình hiếm hơn
  • Targeted malware thường nhỏ hơn về kích thước file
  • Targeted malware không giao tiếp với C&C server nên không bị detect qua network

Câu 14. Sau khi dump memory của packed malware, IAT của file dump bị broken. Nguyên nhân là gì?

  • IAT trong memory chứa địa chỉ runtime thực — sau khi dump ra file, các địa chỉ này không còn hợp lệ nữa
  • Dump process làm corrupt IAT
  • Packer xóa IAT khi unpack vào memory
  • IAT chỉ tồn tại trong file on-disk, không có trong memory

Tầng 3 — Vận Dụng

Câu 15. Trong một IR case, bạn tìm thấy file update.exe (12KB) trên nhiều máy. VirusTotal cho 0/72 detections. strings output chỉ có URL http://update-server.xyz/payload.bin và không có gì khác đáng chú ý. Bạn xử lý thế nào?

  • Setup VM cô lập, chạy file và monitor network traffic — bắt payload.bin được download về, sau đó phân tích payload đó
  • Kết luận file sạch vì VT cho 0 detection
  • Xóa file vì size quá nhỏ, không thể là malware nguy hiểm
  • Chỉ cần block URL trên firewall là đủ

Câu 16. Bạn đang phân tích malware bằng dynamic analysis. ProcMon không ghi nhận gì bất thường trong 10 phút đầu. Nhưng bạn nhớ rằng vụ breach xảy ra vào đúng ngày 1 hàng tháng. Bước nào sau đây phù hợp nhất?

  • Thay đổi system clock trong VM về ngày 1 của tháng và chạy lại malware
  • Kết luận dynamic analysis không hiệu quả và chuyển sang static hoàn toàn
  • Tăng thời gian monitor lên 60 phút
  • Submit lên VirusTotal để xem behavioral report

Câu 17. Một SOC analyst cần tạo detection rule NHANH NHẤT có thể cho một malware mới đang lây lan trong mạng. Malware liên tục thay đổi hash (polymorphic) và đã tự xóa khỏi disk. Approach nào sau đây ĐÚNG nhất?

  • Dùng memory forensics (Volatility) để extract malware từ RAM của máy bị nhiễm, sau đó dynamic analysis để tìm network behavior → tạo network signature cho SIEM/IDS
  • Chờ AV vendor cập nhật signature
  • Reimage toàn bộ máy bị nhiễm và monitor tiếp
  • Chạy strings trên các file .tmp trên disk để tìm IoC