Chủ đề của IAM302 - Phân tích mã độc và kỹ thuật dịch ngược

IAM302 - Phần 5: Điều tra số và vượt cơ chế tự vệ của mã độc

Mã độc bọc thép không muốn bị mổ xẻ. Đóng gói bằng UPX hay một trình đóng gói tự viết sẽ nén hoặc mã hoá phần thân, chỉ để lại một đoạn giải nén nhỏ, nên bảng nhập gần như trống và chuỗi ký tự không đọc được; dấu hiệu là section có entropy cao và tên lạ. Mẫu còn dò xem mình có đang chạy trong máy ảo hay dưới trình gỡ lỗi, chẳng hạn gọi IsDebuggerPresent, để đổi sang hành vi vô hại. Người điều tra lật lại từng trò: chạy tới điểm vào gốc rồi kết xuất vùng nhớ đã giải nén, vá lệnh kiểm tra trình gỡ lỗi, mở được những tệp mà Poison Ivy khoá độc quyền để công cụ khác không đọc nổi, và dò kho chứng chỉ gốc tin cậy của Windows để tìm chứng chỉ PKI giả mà mẫu tự cài vào. Kỹ thuật kết xuất vùng nhớ nối thẳng sang Phần 6.

Xem danh sách câu hỏi13 câu hỏi100% có giải thích

Bắt đầu bằng Chế độ học nếu bạn muốn đáp án và giải thích hiện ngay sau mỗi câu — không bấm giờ, dừng lúc nào cũng được. Chọn Thi thử khi muốn biết mình đang ở đâu: có bấm giờ, chấm điểm ở cuối, và giải thích chỉ mở sau khi nộp.

Học ngân hàng câu hỏi của chủ đề

Luyện tập theo chủ đề này

13Câu hỏi hiện có

Câu hỏi của chủ đề

13/13 câuHết danh sách
AIt does not help in decrypting the malware code
BIt provides information about the malware author
CIt assists in identifying the malware's behavior and origin
DIt determines the file's size
Lời giải
Đáp án đúng: "It assists in identifying the malware's behavior and origin". Packer (trình đóng gói) nén hoặc mã hoá mã gốc và gắn một đoạn stub tự giải nén khi chạy, nên phân tích tĩnh chỉ thấy lớp vỏ. Nhận diện packer (UPX, ASPack, Themida…) bằng PEiD hay Detect It Easy cho biết cách gỡ vỏ (unpack) để lộ mã thật, chuỗi và bảng import thật, từ đó hiểu hành vi; packer tự chế đặc trưng còn là manh mối gắn mẫu với một họ mã độc hay nhóm phát triển, giúp truy nguồn gốc. "It does not help in decrypting the malware code" sai vì biết loại packer chính là bước đầu để giải nén, giải mã mã độc. "It provides information about the malware author" quá mức vì packer phổ biến được rất nhiều người dùng chung, chỉ cho manh mối gián tiếp chứ không chỉ ra tác giả. "It determines the file's size" sai vì kích thước tệp đo trực tiếp được, không cần biết packer.
Mở trang câu hỏi này →
AAnalyzing network traffic
BIdentifying packers and compilers used in executable files
CDecrypting encrypted files
DDebugging malware code
Lời giải
Đáp án đúng: "Identifying packers and compilers used in executable files". PEiD là công cụ phân tích tĩnh đọc tệp PE và so phần mã quanh điểm vào (entry point) với cơ sở chữ ký để báo tệp được biên dịch bằng trình gì như Visual C++ hay Delphi, hoặc bị đóng gói bằng packer nào như UPX hay ASPack. Biết có packer thì nhà phân tích hiểu vì sao chuỗi và bảng import gần như trống, và phải giải nén (unpack) trước khi đọc mã. "Analyzing network traffic" là việc của Wireshark. "Decrypting encrypted files" sai vì PEiD chỉ nhận diện, không giải mã hay giải nén gì. "Debugging malware code" là việc của trình gỡ lỗi như OllyDbg hay x64dbg; PEiD không chạy mẫu và không điều khiển việc thực thi.
Mở trang câu hỏi này →
ACode signing
BEncryption
CDigital watermarking
DSocial engineering
Lời giải
Đáp án đúng: "Encryption". Làm rối mã (obfuscation) là che giấu mã và dữ liệu để chống phân tích; mã hoá là kỹ thuật thường dùng nhất: thân mã độc, chuỗi, địa chỉ máy chủ điều khiển được mã hoá bằng XOR, RC4 hay AES và chỉ giải mã trong bộ nhớ lúc chạy, khiến lệnh strings, phân tích tĩnh và chữ ký của phần mềm diệt virus không thấy nội dung thật. "Code signing" là ký số tệp để chứng minh nguồn gốc và tính toàn vẹn, không che giấu mã; mã độc có thể ký bằng chứng chỉ bị đánh cắp để trông đáng tin, nhưng đó là giả mạo độ tin cậy chứ không làm rối mã. "Digital watermarking" là nhúng dấu bản quyền vào nội dung số. "Social engineering" là lừa người dùng tự mở mẫu, thuộc khâu phát tán chứ không tác động lên mã.
Mở trang câu hỏi này →
AAnalysis of findings
BRecommendations for future incident prevention
CA list of all software installed on the system
DDetails of the forensic analysis methodology used
Lời giải
Đáp án đúng: "A list of all software installed on the system". Câu hỏi tìm thứ KHÔNG thường có trong báo cáo pháp chứng. Báo cáo pháp chứng trình bày điều tra viên đã làm gì và kết luận gì, đủ để người khác thẩm định; danh sách toàn bộ phần mềm cài trên máy là dữ liệu thô, nếu cần thì chỉ đưa vào phụ lục hoặc chỉ nêu phần mềm liên quan tới sự cố. "Analysis of findings" là lõi của báo cáo: phát hiện gì và ý nghĩa ra sao, nên phải có. "Recommendations for future incident prevention" là phần khuyến nghị khắc phục và phòng ngừa thường đặt ở cuối báo cáo. "Details of the forensic analysis methodology used" là phần bắt buộc, vì phương pháp, công cụ và chuỗi lưu giữ bằng chứng quyết định kết quả có lặp lại được và có giá trị pháp lý hay không.
Mở trang câu hỏi này →
ABy analyzing the file's header
BBy scanning the file for known packer signatures
CBy decrypting the file's contents
DBy executing the file in a sandbox environment
Lời giải
Đáp án đúng: "By scanning the file for known packer signatures". PEiD là công cụ phân tích tĩnh: nó đọc tệp PE và so chuỗi byte, đặc biệt tại điểm vào (entry point), với cơ sở chữ ký trong tệp userdb.txt chứa mẫu byte đặc trưng của các packer và trình biên dịch như UPX, ASPack, Themida; khớp mẫu nào thì báo tên packer đó. Bác: "By analyzing the file's header" chỉ đúng một phần: PEiD có đọc tiêu đề PE để tìm entry point và hiện thông tin section, nhưng kết luận tên packer dựa vào so chữ ký chứ không chỉ đọc header. "By decrypting the file's contents" sai vì PEiD không giải nén hay giải mã; gỡ packer cần unpacker hoặc debugger. "By executing the file in a sandbox environment" là phân tích động, trong khi PEiD không bao giờ chạy tệp.
Mở trang câu hỏi này →
AIt decrypts encrypted files
BIt identifies the network traffic generated by malware
CIt helps in analyzing system changes and artifacts left by malware
DIt monitors CPU usage during malware execution
Lời giải
Đáp án đúng: "It helps in analyzing system changes and artifacts left by malware". RegRipper là công cụ đọc ngoại tuyến các tệp hive registry như SYSTEM, SOFTWARE, NTUSER.DAT bằng hệ thống plugin, trích ra các khoá Run, dịch vụ mới cài, UserAssist, ShimCache, tức những dấu vết (artifacts) cho thấy mã độc đã bám trụ và đã được thực thi, giúp dựng lại tác động của nó lên hệ thống. "It decrypts encrypted files" sai vì RegRipper chỉ phân tích registry, không giải mã tệp. "It identifies the network traffic generated by malware" là việc của Wireshark; registry chỉ lưu vài dấu vết mạng như danh sách mạng đã kết nối, không ghi lưu lượng. "It monitors CPU usage during malware execution" sai vì RegRipper làm việc trên tệp hive tĩnh sau sự cố, không theo dõi thời gian thực.
Mở trang câu hỏi này →
AIt targets only specific geographic regions
BIt changes its code structure to evade detection
CIt requires user interaction to spread
DIt is primarily distributed through social media platforms
Lời giải
Đáp án đúng: "It changes its code structure to evade detection". Mã độc đa hình (polymorphic malware) mỗi lần lây nhiễm lại mã hoá thân bằng khoá mới và dùng bộ biến đổi (mutation engine) để thay hình dạng bộ giải mã như chèn lệnh rác, đổi thanh ghi, đảo thứ tự lệnh, nên mỗi bản sao có chuỗi byte và mã băm khác nhau trong khi chức năng giữ nguyên, làm phát hiện dựa trên chữ ký thất bại; mã độc biến hình (metamorphic) còn đi xa hơn khi viết lại toàn bộ mã. "It targets only specific geographic regions" là đặc điểm của chiến dịch nhắm mục tiêu, kiểm tra ngôn ngữ bàn phím hay địa chỉ IP, không liên quan tới đa hình. "It requires user interaction to spread" là đặc điểm của trojan hay virus đính kèm tệp. "It is primarily distributed through social media platforms" chỉ mô tả kênh phát tán, không phải bản chất đa hình.
Mở trang câu hỏi này →
ABy using polymorphic techniques
BBy encrypting or obfuscating the strings
CBy storing strings in plain ASCII format
DBy using multiple DLLs
Lời giải
Đáp án đúng: "By encrypting or obfuscating the strings". Chuỗi nhúng như URL máy chủ điều khiển, tên tệp, khoá registry là manh mối đầu tiên khi chạy strings. Tác giả mã độc giấu chúng bằng cách mã hoá, ví dụ XOR, RC4 hay Base64 tự chế, hoặc làm rối (obfuscation) như dựng chuỗi từng ký tự trên ngăn xếp, chỉ giải ra trong bộ nhớ lúc cần dùng, nên phân tích tĩnh chỉ thấy dữ liệu vô nghĩa. "By using polymorphic techniques" là kỹ thuật đổi hình dạng mã mỗi lần lây để né chữ ký, nhắm vào việc phát hiện chứ không nhắm cụ thể vào chuỗi. "By storing strings in plain ASCII format" làm điều ngược lại: chuỗi ASCII rõ là thứ strings đọc được ngay. "By using multiple DLLs" chỉ chia chức năng ra nhiều module, chuỗi trong từng DLL vẫn đọc được nếu không mã hoá.
Mở trang câu hỏi này →
AData collection
BData preservation
CData destruction
DData examination
Lời giải
Đáp án đúng: "Data destruction". Câu hỏi phủ định nên cần tìm bước KHÔNG thuộc quy trình pháp chứng. Pháp chứng số đi theo các bước thu thập, bảo toàn, kiểm tra, phân tích và báo cáo, với nguyên tắc xuyên suốt là giữ nguyên vẹn bằng chứng và chuỗi giám sát (chain of custody); huỷ dữ liệu đi ngược nguyên tắc đó nên không phải một bước của quy trình. Mỗi phát biểu sau đều là bước thật nên không được chọn: "Data collection" là thu nhận bằng chứng như ảnh đĩa, ảnh bộ nhớ, nhật ký hệ thống. "Data preservation" là bảo toàn bằng chứng, ví dụ tính băm SHA-256, dùng thiết bị chống ghi (write blocker) và chỉ làm việc trên bản sao. "Data examination" là kiểm tra, lọc và trích dữ liệu liên quan từ bằng chứng đã thu.
Mở trang câu hỏi này →
AA device used to physically secure a computer
BA tool used to expand malware files
CA technique used to hide malware from detection
DA type of malware designed to infiltrate networks
Lời giải
Đáp án đúng: "A technique used to hide malware from detection". Packer (trình đóng gói) nén hoặc mã hoá tệp thực thi gốc và gắn thêm một đoạn mã giải nén nhỏ (stub); khi chạy, stub bung mã thật vào bộ nhớ rồi nhảy tới điểm vào gốc. Tệp trên đĩa vì thế mang chữ ký khác, chuỗi và bảng import gần như trống, che mắt phần mềm diệt virus và cản phân tích tĩnh; UPX, ASPack, Themida là ví dụ quen thuộc. "A device used to physically secure a computer" là thiết bị khoá phần cứng, không liên quan. "A tool used to expand malware files" ngược với thực tế: packer thường làm tệp nhỏ đi vì nén. "A type of malware designed to infiltrate networks" sai vì packer không phải một loại mã độc mà là lớp vỏ bọc áp lên bất kỳ chương trình nào, kể cả phần mềm hợp pháp.
Mở trang câu hỏi này →
AEncrypting its code
BProviding fake error messages
CDisplaying pop-up ads
DDeleting system files
Lời giải
Đáp án đúng: "Encrypting its code". Phần mềm diệt virus dựa nhiều vào chữ ký, tức chuỗi byte đặc trưng trong tệp; mã độc né bằng cách mã hoá thân mã qua crypter, packer hay kỹ thuật đa hình (polymorphic), chỉ để lại một đoạn giải mã nhỏ thay đổi theo từng bản, nên trên đĩa không còn chuỗi byte quen thuộc và mã thật chỉ hiện ra trong bộ nhớ khi chạy. Bác: "Providing fake error messages" là thủ đoạn lừa người dùng, ví dụ báo lỗi giả để che việc cài đặt ngầm, không đánh lừa được trình quét chữ ký. "Displaying pop-up ads" là hành vi lộ liễu của adware, khiến người dùng chú ý hơn chứ không giúp né tránh. "Deleting system files" là hành vi phá hoại, dễ gây chú ý và không giúp mã độc tránh bị phát hiện.
Mở trang câu hỏi này →
AIt can only identify packers used in Windows executables
BIt is a standalone antivirus software
CIt requires an internet connection to function
DIt can identify both packers and compilers used in executable files
Lời giải
Đáp án đúng: "It can identify both packers and compilers used in executable files". PEiD so mẫu byte quanh entry point của tệp PE với cơ sở chữ ký để báo tệp được đóng gói hay mã hoá bằng packer nào như UPX, ASPack, và nếu không đóng gói thì được biên dịch bằng trình nào như Microsoft Visual C++ hay Delphi, giúp quyết định có cần gỡ vỏ trước khi phân tích tĩnh không. "It can only identify packers used in Windows executables" sai ở chữ "only", vì PEiD còn nhận diện được trình biên dịch, dù đúng là nó chỉ làm việc với tệp PE của Windows. "It is a standalone antivirus software" sai vì PEiD không quét hay diệt mã độc, chỉ nhận diện cách tệp được tạo. "It requires an internet connection to function" sai vì PEiD chạy hoàn toàn ngoại tuyến với tệp chữ ký cục bộ.
Mở trang câu hỏi này →
AAdding comments to the code
BRenaming files randomly
CEncrypting or compressing executable files
DDisabling antivirus software
Lời giải
Đáp án đúng: "Encrypting or compressing executable files". Packer như UPX, ASPack hay Themida nén hoặc mã hoá phần mã và dữ liệu gốc của tệp thực thi, rồi gắn thêm một đoạn mã giải nén (stub) làm điểm vào mới; khi chạy, stub bung mã gốc vào bộ nhớ rồi nhảy tới điểm vào gốc (OEP). Trên đĩa, tệp chỉ còn dữ liệu có entropy cao, ít chuỗi đọc được và bảng import rất ngắn, nên chữ ký lẫn phân tích tĩnh khó nhận ra mã độc. Bác: "Adding comments to the code" vô nghĩa với tệp đã biên dịch, vì chú thích mã nguồn không còn tồn tại trong mã máy. "Renaming files randomly" chỉ đổi tên tệp, nội dung và chữ ký vẫn y nguyên. "Disabling antivirus software" là hành vi của chính mã độc sau khi chạy, không phải kỹ thuật packer dùng để giấu mã.
Mở trang câu hỏi này →

Đề có câu hỏi của chủ đề này

3 đề chứa ít nhất một câu thuộc chủ đề — mở đề để làm cả bộ, không chỉ từng câu.