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

IAM302 - Phần 2: Phân loại và đặc trưng mã độc

Mã độc được xếp loại theo hai trục: cách nó lan đi và việc nó làm khi đã vào máy. Sâu tự dò lỗ hổng để nhân bản qua mạng mà không cần ai bấm, còn trojan không tự lan được nên phải đội lốt phần mềm hữu ích. Về mục đích, một máy bị chiếm có thể thành một nút trong botnet chờ lệnh từ máy chủ điều khiển, hoặc bị phần mềm tống tiền mã hoá tệp rồi đòi tiền chuộc. Để sống lâu, mẫu tự vệ bằng cách giấu tiến trình và tệp như rootkit, thêm mục khởi động để bám trụ qua mỗi lần khởi động lại, hay tự biến đổi mỗi lần lây để né chữ ký. Nhiều họ mã độc hiện nay là dạng lai, một mẫu đóng nhiều vai cùng lúc, nên nhãn loại chỉ là điểm xuất phát để tìm năng lực thật của mẫu. Cách vượt qua các lớp tự vệ đó được bàn ở Phần 5.

Xem danh sách câu hỏi20 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

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

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

20/20 câuHết danh sách
ARansomware
BDownloader
CBot
DScareware
Lời giải
Đáp án đúng: "Scareware". Scareware (phần mềm hù doạ) đánh vào nỗi sợ của người dùng: nó bật cửa sổ cảnh báo giả rằng máy đã nhiễm virus hoặc sắp hỏng, rồi thúc người dùng mua một phần mềm diệt virus giả hay một dịch vụ sửa lỗi không có thật; cốt lõi là thao túng tâm lý để lấy tiền, còn máy có khi không bị hại gì thực sự. "Ransomware" cũng đòi tiền nhưng bằng cách mã hoá hoặc khoá dữ liệu thật rồi đòi tiền chuộc để trả lại, không phải bán phần mềm giả. "Downloader" là mã độc tải và cài thêm mã độc khác về máy, không nhắm vào việc lừa người dùng trả tiền. "Bot" biến máy nạn nhân thành một nút trong botnet nhận lệnh từ máy chủ điều khiển để gửi thư rác hay tấn công từ chối dịch vụ, thường chạy âm thầm chứ không doạ người dùng.
Mở trang câu hỏi này →
ATrue
BFalse
Lời giải
Đáp án đúng: "True". Keylogger phần mềm (software keylogger, chương trình ghi lại phím người dùng gõ) thường chạy như một tiến trình ở chế độ người dùng hoặc cài hook bàn phím qua hàm SetWindowsHookEx, nên các mẫu kém tinh vi hiện ra thành một tiến trình lạ trong Task Manager, đôi khi với tên giả mạo tiến trình hệ thống. Chữ "sometimes" là mấu chốt: keylogger tinh vi dùng kỹ thuật rootkit, tiêm mã vào tiến trình hợp lệ (process injection) hoặc chạy ở tầng nhân để biến mất khỏi Task Manager, nhưng việc có loại ẩn được không làm sai mệnh đề rằng keylogger phần mềm có lúc nhìn thấy được. Chọn "False" là ngầm khẳng định keylogger phần mềm không bao giờ lộ diện trong Task Manager, trái với thực tế nhiều mẫu đơn giản chỉ là một tệp thực thi chạy nền mà người dùng có thể tìm thấy và kết thúc ngay trong danh sách tiến trình.
Mở trang câu hỏi này →
3What does a downloader malware do?4 lựa chọn
AEncrypt files on the system
BExfiltrate data to attackers
CDownloads other malicious code after initial access
DBlocks incoming connections
Lời giải
Đáp án đúng: "Downloads other malicious code after initial access". Downloader (mã độc tải xuống) là mắt xích đầu của chuỗi lây nhiễm: bản thân nó nhỏ, ít hành vi đáng ngờ, sau khi lọt vào máy thì kết nối ra máy chủ của kẻ tấn công, tải về rồi chạy mã độc thật như trojan, ransomware hay công cụ đánh cắp; khi phân tích thường thấy các hàm như URLDownloadToFile đi kèm WinExec hoặc ShellExecute. "Encrypt files on the system" là hành vi đặc trưng của ransomware. "Exfiltrate data to attackers" là việc của spyware, infostealer hay backdoor khi đẩy dữ liệu đánh cắp ra ngoài, ngược chiều với việc kéo mã về. "Blocks incoming connections" là chức năng của tường lửa; có mã độc chặn kết nối để cản phần mềm bảo mật cập nhật, nhưng đó không phải định nghĩa của downloader.
Mở trang câu hỏi này →
4What is a botnet?4 lựa chọn
AA collection of logs created by keyloggers
BA group of infected machines controlled by a C&C server
CA database of known malware
DA firewall bypassing tool
Lời giải
Đáp án đúng: "A group of infected machines controlled by a C&C server". Botnet (mạng máy ma) là tập hợp các máy bị nhiễm bot; mỗi máy (zombie) định kỳ liên lạc với máy chủ điều khiển C&C (command and control) để nhận lệnh như gửi thư rác, tấn công từ chối dịch vụ phân tán DDoS hay tải thêm mã độc, nhờ đó kẻ tấn công điều khiển cả đàn máy qua các kênh IRC, HTTP hay P2P. Bác: "A collection of logs created by keyloggers" chỉ là dữ liệu đánh cắp mà keylogger ghi lại, có thể được bot gửi về máy chủ điều khiển nhưng không phải bản thân botnet. "A database of known malware" là cơ sở chữ ký của phần mềm diệt virus như ClamAV. "A firewall bypassing tool" là một công cụ đơn lẻ, ví dụ tạo đường hầm qua cổng được phép, trong khi botnet là cả một mạng lưới máy bị chiếm quyền.
Mở trang câu hỏi này →
AWorm
BRootkit
CAdware
DSpyware
Lời giải
Đáp án đúng: "Adware". Adware (phần mềm quảng cáo) cài vào trình duyệt hoặc hệ thống dưới dạng tiện ích mở rộng hay tiến trình nền để tự bật cửa sổ quảng cáo, chèn quảng cáo vào trang và chuyển hướng tìm kiếm nhằm thu tiền hiển thị; việc liên tục tải nội dung quảng cáo ngốn CPU, bộ nhớ và băng thông nên máy chậm hẳn, khớp đúng hai triệu chứng trong tình huống. "Worm" là sâu tự nhân bản và lây qua mạng mà không cần người dùng, triệu chứng thường là lưu lượng mạng tăng vọt chứ không phải quảng cáo bật lên. "Rootkit" có mục tiêu ẩn sự hiện diện của kẻ tấn công trong hệ thống, trái ngược với kiểu quảng cáo lộ liễu. "Spyware" âm thầm thu thập thông tin người dùng và cố không để lộ; một số adware cũng theo dõi thói quen duyệt web, nhưng hiện tượng tự mở quảng cáo là dấu hiệu đặc trưng của adware.
Mở trang câu hỏi này →
AOpening suspicious email attachments
BInstalling antivirus software
CRegularly updating operating systems
DUsing strong passwords
Lời giải
Đáp án đúng: "Opening suspicious email attachments". Tệp đính kèm thư điện tử là đường lây nhiễm (infection vector) rất phổ biến: kẻ tấn công gửi thư lừa đảo (phishing) kèm tài liệu Office chứa macro, tệp nén chứa tệp thực thi hay tệp lối tắt .lnk; nạn nhân mở ra là mã độc được thả và chạy với quyền của người dùng. Đây là dạng tấn công phi kỹ thuật (social engineering) dựa vào chính hành động của con người. Bác: "Installing antivirus software" là biện pháp phòng vệ giúp phát hiện mã độc, không phải cách lây nhiễm. "Regularly updating operating systems" vá các lỗ hổng mà exploit hay lợi dụng, nên làm giảm khả năng nhiễm. "Using strong passwords" chống đoán mật khẩu và tấn công vét cạn, là thói quen bảo mật chứ không phải đường lây của mã độc.
Mở trang câu hỏi này →
AIt always requires user permission to execute
BIt never interacts with the operating system
CIt spreads and infects other systems
DIt cannot be detected by forensic tools
Lời giải
Đáp án đúng: "It spreads and infects other systems". Mã độc là phần mềm được viết để gây hại, và một đặc điểm điển hình được nêu là khả năng lan truyền, lây nhiễm sang máy khác như virus bám vào tệp hay worm tự nhân bản qua mạng; không phải mẫu nào cũng tự lây (trojan cần người dùng chạy), nhưng trong bốn phát biểu đây là đặc điểm duy nhất đúng. "It always requires user permission to execute" sai vì worm và mã khai thác lỗ hổng tự chạy không cần người dùng đồng ý, chữ "always" khiến phát biểu sai. "It never interacts with the operating system" sai vì mã độc liên tục gọi API Windows, ghi registry, tạo tiến trình để hoạt động và bám trụ. "It cannot be detected by forensic tools" sai vì công cụ điều tra như Volatility, Autoruns hay phân tích đĩa vẫn tìm ra dấu vết, dù mã độc có cố ẩn.
Mở trang câu hỏi này →
AHandle
B\\
C\\?\
D\\.\
EADS
Lời giải
Đáp án đúng: "\\?\". Trong Windows, đường dẫn thông thường bị giới hạn MAX_PATH 260 ký tự; tiền tố \\?\ thuộc không gian tên tệp Win32 (Win32 file namespace) báo cho API tệp bỏ qua bước chuẩn hoá đường dẫn và chuyển thẳng xuống hệ thống tệp, nhờ đó cho phép đường dẫn dài tới khoảng 32.767 ký tự; mã độc cũng lợi dụng nó để tạo tệp có tên đặc biệt mà Explorer khó xoá. "\\" là tiền tố đường dẫn UNC trỏ tới thư mục chia sẻ trên máy khác như \\server\share, không nới giới hạn độ dài. "\\.\" là không gian tên thiết bị Win32 (Win32 device namespace), dùng mở thẳng thiết bị như \\.\PhysicalDrive0, không phải để đặt tên tệp dài. "Handle" là số tham chiếu tới đối tượng nhân mà hệ điều hành cấp khi mở tệp, không phải tiền tố đường dẫn. "ADS" là Alternate Data Stream, luồng dữ liệu phụ của NTFS dùng để giấu dữ liệu theo cú pháp tệp:luồng, không liên quan tới độ dài tên.
Mở trang câu hỏi này →
AAntivirus software
BSecure websites
CInfected USB drives
DSoftware updates
Lời giải
Đáp án đúng: "Infected USB drives". Mã độc cần một đường vào máy nạn nhân, và USB nhiễm là đường kinh điển: tệp autorun hoặc tệp tắt (shortcut) giả làm thư mục khiến người dùng tự chạy mã, thậm chí vượt sang mạng cách ly như trường hợp Stuxnet. Các kênh phổ biến khác là tệp đính kèm thư điện tử, trang web độc hại và phần mềm lậu. "Antivirus software" là công cụ phòng vệ chứ không phải kênh phát tán; chỉ phần mềm diệt virus giả mới là mã độc. "Secure websites" là trang web hợp pháp dùng HTTPS, bản thân không phải phương thức phát tán, dù kẻ tấn công đôi khi chiếm trang hợp pháp để cài mã. "Software updates" là kênh bình thường để vá lỗi; tấn công chuỗi cung ứng có lợi dụng bản cập nhật bị chèn mã, nhưng đó là trường hợp đặc biệt chứ không phải cách phát tán thông thường.
Mở trang câu hỏi này →
AMalware that slows down computer performance
BMalware that steals sensitive information
CMalware that encrypts files and demands payment for decryption
DMalware that deletes files and folders without user consent
Lời giải
Đáp án đúng: "Malware that encrypts files and demands payment for decryption". Ransomware (mã độc tống tiền) mã hoá tệp của nạn nhân bằng khoá do kẻ tấn công nắm giữ, thường dùng mã hoá đối xứng như AES cho tệp và mã hoá bất đối xứng RSA để bọc khoá, rồi để lại thông điệp đòi tiền chuộc, thường bằng tiền mã hoá, đổi lấy khoá giải mã; WannaCry là ví dụ nổi tiếng. "Malware that slows down computer performance" chỉ là triệu chứng chung của nhiều loại như mã độc đào tiền ảo hay adware, không định nghĩa ransomware. "Malware that steals sensitive information" mô tả spyware hay infostealer; ransomware hiện đại có thể lấy cắp dữ liệu để tống tiền kép, nhưng đặc trưng vẫn là mã hoá đòi tiền. "Malware that deletes files and folders without user consent" mô tả wiper, loại phá huỷ dữ liệu mà không đòi tiền chuộc.
Mở trang câu hỏi này →
ATo create a backdoor for future access
BTo infect other computers via network propagation
CTo hide the presence of other malicious software
DTo extract sensitive financial information
Lời giải
Đáp án đúng: "To hide the presence of other malicious software". Rootkit (bộ công cụ chiếm quyền và che giấu) can thiệp vào hệ điều hành, ví dụ móc (hook) các hàm liệt kê tiến trình, tệp, khoá registry hoặc sửa cấu trúc nhân, để giấu tiến trình, tệp và kết nối của mã độc khỏi người dùng và phần mềm bảo mật; chức năng định nghĩa nó là tàng hình. "To create a backdoor for future access" là việc của backdoor; rootkit thường đi kèm và che chở cho backdoor, nhưng cửa hậu không phải chức năng cốt lõi của nó. "To infect other computers via network propagation" là đặc trưng của worm, loại tự lây qua mạng. "To extract sensitive financial information" là mục tiêu của spyware hay banking trojan; rootkit có thể giấu chúng nhưng tự nó không đánh cắp dữ liệu.
Mở trang câu hỏi này →
12What is a Trojan horse?4 lựa chọn
AMalware that replicates itself and spreads to other computers
BMalware that encrypts files and demands ransom for decryption
CMalware that disguises itself as legitimate software to trick users
DMalware that spreads through email attachments
Lời giải
Đáp án đúng: "Malware that disguises itself as legitimate software to trick users". Trojan horse (ngựa thành Troy) là mã độc giả làm phần mềm hợp lệ, như bản bẻ khoá, trình cài đặt hay tiện ích miễn phí, để người dùng tự tay chạy nó; bên trong nó làm việc ẩn như mở cửa hậu, đánh cắp thông tin hay tải thêm mã độc. Điểm định danh của Trojan là sự lừa dối, và nó không tự nhân bản. Bác: "Malware that replicates itself and spreads to other computers" là định nghĩa của worm (sâu) hay virus, những loại tự lây. "Malware that encrypts files and demands ransom for decryption" là ransomware (mã độc tống tiền); ransomware có thể được phát tán dưới dạng Trojan nhưng mã hoá đòi tiền không phải đặc điểm định nghĩa Trojan. "Malware that spreads through email attachments" chỉ mô tả một con đường lây mà nhiều loại mã độc dùng chung, không định nghĩa loại cụ thể nào.
Mở trang câu hỏi này →
ASpreading spam
BGaining administrative access
CDemanding payment for decryption
DDownloading another payload
Lời giải
Đáp án đúng: "Demanding payment for decryption". Khi phân loại mã độc theo mục đích, ransomware thuộc nhóm tống tiền: việc mã hoá tệp chỉ là phương tiện để giữ dữ liệu làm con tin, mục tiêu cuối cùng là buộc nạn nhân trả tiền chuộc để nhận khoá giải mã, nên dấu hiệu tệp quan trọng bị mã hoá chỉ thẳng tới mục đích này. "Spreading spam" là mục đích của spambot hay botnet gửi thư rác, không cần mã hoá tệp người dùng. "Gaining administrative access" là mục tiêu của mã leo thang đặc quyền, backdoor hay rootkit; ransomware có thể leo quyền để mã hoá được nhiều tệp hơn, nhưng đó là bước trung gian chứ không phải mục đích. "Downloading another payload" là mục đích của downloader, loại chỉ tải thêm mã độc khác về máy.
Mở trang câu hỏi này →
AUses social engineering only
BAutomatically deletes user data
CSends spam emails
DEncrypts user files and demands payment
Lời giải
Đáp án đúng: "Encrypts user files and demands payment". Cryptoviral extortion (tống tiền bằng virus mật mã) là dạng ransomware dùng mật mã thật: nó mã hoá tệp của nạn nhân, thường bằng khoá đối xứng sinh ngẫu nhiên rồi bọc khoá đó bằng khoá công khai của kẻ tấn công, nên không có khoá riêng thì không giải được; sau đó đòi tiền chuộc để đổi lấy khoá. Dạng đơn giản hơn chỉ khoá màn hình hoặc doạ nạt mà không động tới dữ liệu. "Uses social engineering only" mô tả ransomware khoá màn hình hay scareware, chính là loại đơn giản mà câu hỏi đem ra so sánh. "Automatically deletes user data" là hành vi của wiper phá huỷ dữ liệu, không giữ dữ liệu lại để đòi tiền. "Sends spam emails" là hoạt động của bot thư rác, có thể là kênh phát tán ransomware nhưng không phải điểm phân biệt.
Mở trang câu hỏi này →
ADLL
BProcess
CMutex
DServices
EComponent Object Model (COM)
Lời giải
Đáp án đúng: "Mutex". Mutex (mutual exclusion, đối tượng loại trừ lẫn nhau) có thể mang tên toàn cục trong hệ thống; mã độc gọi CreateMutex hoặc OpenMutex với một tên cố định, nếu đối tượng đã tồn tại (GetLastError trả ERROR_ALREADY_EXISTS) thì biết đã có một bản đang chạy và thoát, tránh lây chồng gây lỗi lộ liễu. Tên mutex vì thế thành dấu hiệu nhận diện (IOC) tìm được bằng Process Explorer hay lệnh handles của Volatility. "DLL" là thư viện mã dùng chung, không đánh dấu một thể hiện đang chạy. "Process" có thể kiểm tra theo tên tiến trình nhưng kém tin cậy vì tên dễ trùng hoặc đổi, và không phải đối tượng được mở để đồng bộ. "Services" dùng để bám trụ chạy nền. "Component Object Model (COM)" là cơ chế gọi đối tượng giữa các tiến trình, mã độc dùng để điều khiển ứng dụng khác chứ không để kiểm tra mình đang chạy.
Mở trang câu hỏi này →
ARootkits are only effective on Windows operating systems, while other malware types target multiple platforms.
BRootkits modify system files to grant unauthorized access, while other malware types focus on data theft or disruption.
CRootkits spread through email attachments, while other malware types exploit software vulnerabilities.
DRootkits require physical access to a computer, while other malware types can infect remotely.
Lời giải
Đáp án đúng: "Rootkits modify system files to grant unauthorized access, while other malware types focus on data theft or disruption.". Rootkit cài sâu vào hệ điều hành, sửa tệp hệ thống, trình điều khiển hoặc cấu trúc nhân để giữ quyền truy cập trái phép ở mức cao và giấu sự hiện diện của mình cùng mã độc đi kèm; nhiều loại khác như spyware, ransomware hay worm thì nhắm vào đánh cắp dữ liệu hoặc phá hoại. Đây là cách phân biệt theo cơ chế và mục tiêu. "Rootkits are only effective on Windows operating systems" sai vì rootkit có trên Linux, macOS và cả trong firmware; khái niệm này vốn bắt nguồn từ Unix. "Rootkits spread through email attachments" sai vì rootkit không có cơ chế lây riêng, nó được cài bởi dropper hay sau khi khai thác lỗ hổng, còn mã độc khác cũng lây qua thư. "Rootkits require physical access to a computer" sai vì rootkit cài được từ xa sau khi kẻ tấn công chiếm quyền quản trị.
Mở trang câu hỏi này →
ABasic file access
BDNS hijacking
CProcess injection
DPort scanning
Lời giải
Đáp án đúng: "Process injection". VirtualAllocEx cấp phát vùng nhớ bên trong một tiến trình khác, thường kèm WriteProcessMemory để chép mã độc vào đó, rồi CreateRemoteThread tạo luồng mới trong tiến trình đích chạy từ vùng nhớ vừa chép; đây là bộ ba kinh điển của tiêm mã vào tiến trình (process injection), giúp mã độc chạy dưới danh nghĩa tiến trình hợp pháp như explorer.exe để né phát hiện. "Basic file access" dùng các API như CreateFile, ReadFile, WriteFile, không cần cấp phát nhớ ở tiến trình khác. "DNS hijacking" là chuyển hướng phân giải tên miền, thường bằng cách sửa tệp hosts hoặc cấu hình máy chủ DNS. "Port scanning" dùng socket và connect lần lượt tới các cổng, không liên quan tới tiến trình khác.
Mở trang câu hỏi này →
Asvchost.exe
Bservices.exe
Crundll32.exe
Dtaskhostw.exe
Lời giải
Đáp án đúng: "svchost.exe". Nhiều dịch vụ Windows được viết dưới dạng DLL, khai báo qua giá trị ServiceDll trong khoá Parameters của dịch vụ, và svchost.exe (Service Host) là tiến trình chủ nạp các DLL này theo nhóm, ví dụ nhóm netsvcs; vì có nhiều bản svchost.exe hợp lệ cùng chạy, mã độc hay đăng ký DLL của mình làm dịch vụ để ẩn dưới tiến trình này. "services.exe" là Service Control Manager, khởi động và quản lý dịch vụ, nhưng không tự nạp các DLL dịch vụ dùng chung vào chính nó. "rundll32.exe" chạy một hàm xuất của một DLL bất kỳ từ dòng lệnh, mã độc hay dùng để kích hoạt DLL nhưng nó không phải tiến trình chủ cho dịch vụ. "taskhostw.exe" là tiến trình chủ cho các tác vụ dựa trên DLL của Task Scheduler, không phải cho dịch vụ.
Mở trang câu hỏi này →
AInfects as many machines as possible
BTailored to a specific target and difficult to detect
CSends spam emails from infected machines
DRecords keystrokes on the infected system
Lời giải
Đáp án đúng: "Tailored to a specific target and difficult to detect". Mã độc có chủ đích (targeted malware) được viết riêng cho một mục tiêu cụ thể và cố ẩn mình lâu dài. Stuxnet là ví dụ kinh điển: nó nhắm vào phần mềm Siemens Step7 và các PLC điều khiển máy ly tâm làm giàu uranium, chỉ kích hoạt phần phá hoại khi gặp đúng cấu hình đó, dùng nhiều lỗ hổng zero-day, chứng chỉ ký số bị đánh cắp và rootkit để che giấu. Bác: "Infects as many machines as possible" là đặc trưng của worm lây đại trà; Stuxnet có lây qua USB và mạng nhưng đó chỉ là phương tiện để chạm tới mục tiêu. "Sends spam emails from infected machines" là hành vi của spambot trong botnet. "Records keystrokes on the infected system" là chức năng keylogger đánh cắp thông tin, không phải đặc điểm định nghĩa mã độc có chủ đích.
Mở trang câu hỏi này →
AA launcher executes other malicious programs stealthily, while a downloader primarily retrieves and installs additional malware
BA launcher is always visible in the system process list, whereas a downloader remains hidden
CA launcher only functions in Windows systems, while a downloader affects all platforms
DA launcher requires a network connection, whereas a downloader operates offline
Lời giải
Đáp án đúng: "A launcher executes other malicious programs stealthily, while a downloader primarily retrieves and installs additional malware". Launcher (hay loader) mang sẵn payload bên trong, thường giấu trong resource hoặc vùng dữ liệu mã hoá, rồi giải ra và chạy nó một cách lén lút bằng process injection hay process hollowing; downloader chỉ là chương trình nhỏ tải payload từ Internet, chẳng hạn qua URLDownloadToFile, rồi cài và chạy nó. "A launcher is always visible in the system process list, whereas a downloader remains hidden" sai vì launcher chính là loại tìm cách ẩn việc thực thi, chữ "always visible" ngược với bản chất của nó. "A launcher only functions in Windows systems, while a downloader affects all platforms" sai vì cả hai loại đều không bị gắn với một nền tảng cụ thể. "A launcher requires a network connection, whereas a downloader operates offline" đảo ngược sự thật: downloader mới cần mạng để tải payload, còn launcher đã chứa payload sẵn.
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.