HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNGKHOA AN TOÀN THÔNG TIN KỊCH BẢN/ĐỀ CƯƠNG BÀI TẬP LỚN HỌC PHẦN: PHÂN TÍCH MÃ ĐỘC MÃ HỌC PHẦN: INT14164 ĐỀ TÀI: PHÂN TÍCH KẾT HỢP MÃ ĐỘC AGENT TESLA
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TOÀN THÔNG TIN
KỊCH BẢN/ĐỀ CƯƠNG BÀI TẬP LỚN HỌC PHẦN: PHÂN TÍCH MÃ ĐỘC
MÃ HỌC PHẦN: INT14164
ĐỀ TÀI: PHÂN TÍCH KẾT HỢP MÃ ĐỘC AGENT TESLA
Các sinh viên thực hiện (trưởng nhóm xếp số 1):
B22DCAT038 Đỗ Huy Cường B22DCAT046 Doãn Tuấn Dũng B22DCAT022 Trần Tuấn Anh B22DCAT094 Nguyễn Trọng Đức
Tên nhóm: 12 Tên lớp: D22CQAT02-B Giảng viên hướng dẫn: TS Đinh Trường Duy
HÀ NỘI 2025
Trang 2PHÂN CÔNG NHIỆM VỤ NHÓM THỰC HIỆN
TT Công việc / Nhiệm vụ SV thực hiện hoàn thành Thời hạn
NHÓM THỰC HIỆN TỰ ĐÁNH GIÁ
TT SV thực hiện tham gia Thái độ Mức hoàn thành CV Kỹ năng giao tiếp Kỹ năng hợp tác lãnh đạo Kỹ năng
1
2
3
4
Ghi chú:
Thái độ tham gia: Đánh giá điểm thái độ tham gia công việc chung của nhóm (từ 0: không tham gia, đến 5: chủ động, tích cực)
Mức hoàn thành CV: Đánh giá điểm mức độ hoàn thành công việc được giao (từ 0: không hoàn thành, đến 5: hoàn thành xuất sắc)
Kỹ năng giao tiếp: Đánh giá điểm khả năng tương tác, giao tiếp trong nhóm (từ 0: không hoặc giao tiếp rất yếu, đến 5: giao tiếp xuất sắc)
Kỹ năng hợp tác: Đánh giá điểm khả năng hợp tác, hỗ trợ lẫn nhau, giải quyết mâu thuẫn, xung đột
Kỹ năng lãnh đạo: Đánh giá điểm khả năng lãnh đạo (từ 0: không có khả năng lãnh đạo, đến 5: có khả năng lãnh đạo tốt, tổ chức và điều phối công việc trong nhóm hiệu quả)
Trang 3MỤC LỤC
MỤC LỤC 3
DANH MỤC CÁC HÌNH VẼ 5
DANH MỤC CÁC BẢNG BIỂU 5
DANH MỤC CÁC TỪ VIẾT TẮT 6
MỞ ĐẦU 7
CHƯƠNG 1 TỔNG QUAN VỀ mã độc agent tesla và cách thiết lập môi trường phân tích 8
1.1 Giới thiệu về mã độc Agent Tesla 8
1.1.1 Vị trí của Agent Tesla trong phân loại mã độc 8
1.1.2 Lịch sử phát triển 8
1.1.3 Chức năng và các hành vi chính 8
1.1.4 Nguồn tải mã độc 9
1.2 Xây dựng môi trường phân tích an toàn 9
1.2.1 Chuẩn bị máy ảo 9
1.2.2 Cấu hình mạng an toàn 9
1.2.3 Tinh chỉnh cho phân tích 9
1.3 Kết chương 9
CHƯƠNG 2 Phương pháp phân tích tĩnh 11
2.1 Các công cụ sử dụng cho quy trình phân tích tĩnh 11
2.1.1 Detect It Easy (DIE) 11
2.1.2 PEstudio 11
2.1.3 CFF Explorer 11
2.1.4 Strings 11
2.1.5 Floss 12
2.1.6 Ghidra 12
2.1.7 dnSpy 12
2.2 Các bước phân tích tĩnh mã độc Agent Tesla 12
2.3 Kết chương 14
CHƯƠNG 3 PHƯƠNG PHÁP PHÂN TÍCH ĐỘNG 15
3.1 Các công cụ sử dụng cho quy trình phân tích động 15
3.1.1 Process Explorer 15
3.1.2 Process Monitor (Procmon) 15
3.1.3 Regshot 15
3.1.4 Autoruns 15
Trang 43.1.5 Wireshark 15
3.1.6 FakeNet-NG 15
3.2 Các bước phân tích động Agent Tesla 15
3.3 Kết chương 17
KẾT LUẬN 18
TÀI LIỆU THAM KHẢO 19
Trang 5DANH MỤC CÁC HÌNH VẼ
DANH MỤC CÁC BẢNG BIỂU
Trang 6DANH MỤC CÁC TỪ VIẾT TẮT Từ
viết tắt Thuật ngữ tiếng Anh/Giải thích Thuật ngữ tiếng Việt/Giải thích
Trang 7MỞ ĐẦU
Trong bối cảnh an ninh mạng hiện nay, mã độc (malware) ngày càng phát triển với nhiều biến thể tinh vi, gây ra những mối đe dọa nghiêm trọng đối với cá nhân và tổ chức Một trong những dòng mã độc phổ biến và được sử dụng rộng rãi trong các chiến dịch tấn công có chủ đích là Agent Tesla Xuất hiện từ năm 2014, Agent Tesla nhanh chóng trở thành một trong những mã độc thương mại hóa dưới dạng Malware-as-a-Service (MaaS), được bán tràn lan trên các diễn đàn ngầm Với đặc tính là một Trojan RAT kiêm Information Stealer, Agent Tesla có khả năng chiếm quyền điều khiển hệ thống, ghi lại thao tác bàn phím, đánh cắp thông tin nhạy cảm (email, trình duyệt, VPN, FTP…) và gửi dữ liệu ra ngoài thông qua SMTP, HTTP, FTP hoặc thậm chí qua API của Telegram
Để hiểu rõ hơn về cơ chế hoạt động, phương thức lây lan cũng như các kỹ thuật ẩn mình của Agent Tesla, việc phân tích mẫu mã độc trong môi trường an toàn là hết sức cần thiết Trong báo cáo này, nhóm thực hiện phân tích kết hợp (tĩnh và động) nhằm khai thác triệt để thông tin từ mẫu mã độc, bao gồm: định dạng file, các chuỗi và API quan trọng, hành vi khi thực thi, cơ chế duy trì tồn tại, cũng như kênh giao tiếp với máy chủ điều khiển (C2) Thông qua đó, báo cáo cung cấp bộ chỉ báo xâm nhập (IOC) phục vụ công tác phát hiện, đồng thời rút ra bài học về biện pháp phòng thủ trước các mối đe dọa tương tự
Trang 8CHƯƠNG 1 TỔNG QUAN VỀ MÃ ĐỘC AGENT TESLA VÀ CÁCH THIẾT LẬP
MÔI TRƯỜNG PHÂN TÍCH 1.1 Giới thiệu về mã độc Agent Tesla
1.1.1 Vị trí của Agent Tesla trong phân loại mã độc
Agent Tesla là một loại Trojan RAT (Remote Access Trojan) kiêm Information Stealer:
Trojan: giả dạng phần mềm hợp pháp (ví dụ: tài liệu Word, Excel, file PDF, tool crack)
RAT: cung cấp cho kẻ tấn công khả năng kiểm soát từ xa trên máy nạn nhân
Information Stealer: chuyên đánh cắp thông tin nhạy cảm như tài khoản email, VPN, trình duyệt, thông tin clipboard, và keylogger
Như vậy, Agent Tesla có thể được xếp đồng thời vào Trojan horse, RAT, và spyware/data stealer
1.1.2 Lịch sử phát triển
Xuất hiện từ 2014, được bán như một phần mềm giám sát “hợp pháp” nhưng thực tế trở thành một trong những mã độc thương mại hóa phổ biến nhất trên các diễn đàn ngầm Agent Tesla nhanh chóng trở nên nổi tiếng nhờ:
Giao diện dễ dùng: cung cấp control panel để kẻ tấn công theo dõi dữ liệu đánh cắp
Giá rẻ: chỉ vài chục USD bản basic, kèm dịch vụ hỗ trợ như một “SaaS” (Malware-as-a-Service)
Khả năng cập nhật liên tục: tác giả thường xuyên bổ sung kỹ thuật VM, anti-sandbox, obfuscation để vượt qua các giải pháp bảo mật
Trong suốt giai đoạn 2014 – nay, Agent Tesla được ghi nhận trong rất nhiều chiến dịch phishing toàn cầu, đặc biệt nhắm vào tài chính, logistics, năng lượng
1.1.3 Chức năng và các hành vi chính
Agent Tesla sở hữu tập hợp tính năng đa dạng:
Thu thập thông tin xác thực (Credential Stealing):
o Email client (Outlook, Thunderbird…)
o Trình duyệt (Chrome, Firefox, Edge)
o VPN, FTP, RDP client
Keylogger & Clipboard Logger:
o Ghi lại phím bấm, clipboard, tổ hợp phím
o Theo dõi hành vi nhập liệu của người dùng
Trang 9 Persistence (Duy trì tồn tại):
o Tạo khóa Registry Run hoặc RunOnce
o Sao chép vào thư mục AppData/Roaming
Exfiltration (Truyền dữ liệu ra ngoài):
o SMTP (qua tài khoản email bị cấu hình sẵn)
o FTP, HTTP POST
o Các biến thể gần đây còn hỗ trợ Telegram bot API
Kỹ thuật ẩn mình:
o Obfuscation và packer để né phân tích tĩnh
o Kiểm tra dấu vết máy ảo/registry để né phân tích động
o Tự xóa file gốc sau khi thực thi để khó phân tích
1.1.4 Nguồn tải mã độc
https://bazaar.abuse.ch/browse/signature/AgentTesla/
1.2 Xây dựng môi trường phân tích an toàn
1.2.1 Chuẩn bị máy ảo
Phần mềm: VMware Workstation/Player
Hệ điều hành: Windows 10 (ISO)
Snapshot: Ngay sau khi cài đặt xong Windows, ta sẽ tải các công cụ cần thiết dùng để phần tích Cuối cùng tạo snapshot → để rollback sau khi chạy malware
1.2.2 Cấu hình mạng an toàn
Tùy chọn an toàn nhất: Host-Only (máy ảo chỉ giao tiếp với host, không ra Internet) Nếu cần Internet để tải mã độc: chuyển tạm sang NAT, tải xong lập tức chuyển lại Host-Only
Dùng FakeNet-NG ngay trong Win10 VM để “giả” phản hồi từ Internet, giúp thấy traffic mà không để nó đi ra ngoài thật
1.2.3 Tinh chỉnh cho phân tích
Tắt ẩn đuôi file → tránh bị lừa bởi tên file giả
Hiện file/folder ẩn → dễ phát hiện file malware tự drop
Tắt ASLR (Address Space Layout Randomization) để dễ phân tích khi debug/reversing Tắt Windows Firewall trong VM để không chặn hành vi của malware
1.3 Kết chương
Chương 1 đã giới thiệu tổng quan về mã độc Agent Tesla, từ vị trí trong phân loại, lịch
sử phát triển đến các chức năng chính như đánh cắp thông tin, keylogger, persistence và
Trang 10exfiltration dữ liệu Đồng thời, chương này cũng trình bày cách thiết lập môi trường phân tích an toàn trên VMware với Windows 10, sử dụng cấu hình mạng Host-Only kết hợp FakeNet-NG và các tinh chỉnh cần thiết Đây là nền tảng quan trọng để tiến hành các bước phân tích tĩnh và động ở những chương tiếp theo
Trang 11CHƯƠNG 2 PHƯƠNG PHÁP PHÂN TÍCH TĨNH 2.1 Các công cụ sử dụng cho quy trình phân tích tĩnh
2.1.1 Detect It Easy (DIE)
Chức năng:
Xác định loại tệp (PE32, PE64, DLL, NET assembly…)
Nhận diện packer, crypter, compiler thường dùng để nén/ẩn mã độc
Đo entropy (độ hỗn loạn của dữ liệu) → entropy cao thường là file bị nén/obfuscate
Agent Tesla thường được pack bằng các công cụ thương mại (như NET Reactor, ConfuserEx, SmartAssembly) DIE giúp biết trước có cần unpack hay không
2.1.2 PEstudio
Chức năng:
Phân tích file PE mà không cần chạy
Hiển thị Import/Export Table (API nào được gọi, ví dụ: RegSetValueEx, InternetOpenUrl, WriteFile)
Phân tích resources (icon, version info, chuỗi nhúng)
Cảnh báo về API nguy hiểm, section bất thường, khả năng kết nối mạng
Agent Tesla thường import các API liên quan đến network (WinINet, SMTP), registry (persistence), file system (ghi log) → đây là dấu hiệu quan trọng để suy luận hành vi
2.1.3 CFF Explorer
Chức năng:
Cho phép xem và chỉnh sửa PE header (entry point, timestamp, section, import/export)
Kiểm tra section table để phát hiện section bất thường (ví dụ: rsrc chứa code thay vì resource)
Có thể rebuild Import Table sau khi unpack file
Khi Agent Tesla bị pack, Import Table thường bị làm rối hoặc ẩn đi CFF Explorer giúp đối chiếu với PEstudio để xác định mức độ “làm mờ” của mã độc
2.1.4 Strings
Chức năng:
Trích xuất chuỗi ASCII/Unicode từ tệp PE
Có thể phát hiện domain, URL, email, mật khẩu hard-code, API name
Trang 12Agent Tesla thường chứa chuỗi mã hóa (SMTP config, địa chỉ server C2, keylogger format) Công cụ strings giúp lộ ra thông tin ban đầu
2.1.5 Floss
Chức năng:
Giải mã chuỗi bị obfuscate (XOR, Base64, ROT13…) mà strings thông thường không đọc được
Tự động detect routine giải mã trong mã độc
Agent Tesla thường giấu chuỗi (domain C2, thông tin exfiltration) FLOSS giúp giải quyết vấn đề này, lấy được IOC chuẩn hơn
2.1.6 Ghidra
Chức năng:
Disassembler, dịch mã máy → assembly code
Hiển thị call graph, function flow, cross-references
Tìm thấy logic: hàm thu thập password, hàm gửi dữ liệu đi, kỹ thuật persistence Khi phân tích tĩnh Agent Tesla, cần nhìn rõ luồng điều khiển và API gọi để xác nhận hành vi
2.1.7 dnSpy
Chức năng:
Decompile trực tiếp thành C# code dễ đọc, có thể xem toàn bộ logic (form, class, hàm)
Hỗ trợ chỉnh sửa, debug IL code
Đây là công cụ quan trọng nhất khi gặp Agent Tesla bản NET, nó giúp ta có thể đọc gần như nguyên gốc source code
2.2 Các bước phân tích tĩnh mã độc Agent Tesla
Bước 1 File Attributes Analysis (Phân tích thuộc tính tệp)
Công cụ: Detect It Easy (DIE), PEstudio
Thao tác:
o Kiểm tra tên file, dung lượng, timestamp (thời gian compile)
o Nhận diện loại tệp (PE32/PE64, DLL, NET assembly)
Kết quả dự kiến:
o File dạng PE32 NET executable (~100–500 KB)
o Timestamp có thể giả mạo hoặc trống
o DIE báo packer (ví dụ: ConfuserEx, NET Reactor)
Trang 13Bước 2 Hash Analysis (Phân tích mã băm)
Công cụ: PEstudio
Thao tác:
o Sinh MD5, SHA1, SHA256
o Tra cứu hash trên VirusTotal, MalwareBazaar
Kết quả dự kiến:
o VirusTotal nhận diện mẫu là Agent Tesla
o Có thông tin IOC: domain, IP, email liên quan đến C2
Bước 3 Existing Analysis (So sánh với dữ liệu có sẵn)
Công cụ: VirusTotal
Thao tác:
o Xem báo cáo có sẵn từ cộng đồng
o So sánh biến thể (version, packer)
Kết quả dự kiến:
o Có hành vi liên quan SMTP exfiltration
Bước 4 String Analysis (Phân tích chuỗi)
Công cụ: Strings, FLOSS
Thao tác:
o Trích xuất chuỗi ASCII/Unicode
o Dùng FLOSS giải mã chuỗi XOR/Base64
Kết quả dự kiến:
o Tìm thấy domain C2, địa chỉ email SMTP, hoặc API key Telegram
o Chuỗi nhắc tới “Outlook”, “Chrome”, “Thunderbird” → module credential stealer
o API quan trọng: GetAsyncKeyState, InternetOpenUrl, RegSetValueEx
Bước 5 Obfuscation & Packer Check (Kiểm tra packer/obfuscation)
Công cụ: DIE, PEiD
Thao tác:
o Kiểm tra entropy và packer
o Nếu packer nặng, thử unpack bằng Unpac.me hoặc debug
Kết quả dự kiến:
o Thấy packer ConfuserEx/.NET Reactor
Trang 14o Nếu unpack, Import Table lộ ra API gọi thật sự
Bước 6 Inspecting PE (Kiểm tra PE header & metadata)
Công cụ: PEstudio, CFF Explorer, dnSpy (nếu NET)
Thao tác:
o Kiểm tra Import Table, Export Table
o Với dnSpy: decompile sang C# để đọc code
Kết quả dự kiến:
o Xác định hàm thu thập mật khẩu từ Chrome, Outlook, VPN
o Phát hiện module keylogger, clipboard logger
o Hàm gửi dữ liệu qua SMTP (SmtpClient), HTTP POST, hoặc Telegram API
Bước 7 Classifying the Malware (Phân loại)
Công cụ: YARA, so sánh báo cáo
Thao tác:
o Tổng hợp IOC và hành vi → gán nhãn malware family
Kết quả dự kiến:
o Phân loại: Trojan – RAT – Information Stealer
o IOC thu được: hash, domain, IP, email, registry key, mutex
2.3 Kết chương
Trong chương 2, báo cáo đã giới thiệu các công cụ phân tích tĩnh quan trọng như Detect
It Easy, PEstudio, CFF Explorer, Strings, FLOSS, Ghidra và dnSpy, đồng thời xây dựng quy trình phân tích mẫu Agent Tesla từ việc kiểm tra thuộc tính tệp, sinh mã băm và tra cứu trên VirusTotal, so sánh với dữ liệu có sẵn, trích xuất và giải mã chuỗi, kiểm tra packer/obfuscation, phân tích PE header cho đến bước phân loại mã độc Quy trình này cho phép nhận diện rõ các đặc điểm của Agent Tesla như packer thường dùng (ConfuserEx, NET Reactor), các API liên quan đến registry, network và keylogger, chuỗi SMTP hoặc Telegram API phục vụ exfiltration dữ liệu, cùng với hệ thống IOC gồm hash, domain, IP và registry key Những kết quả dự kiến này tạo nền tảng quan trọng cho việc khẳng định hành vi và chức năng của Agent Tesla thông qua phân tích động ở chương tiếp theo
Trang 15CHƯƠNG 3 PHƯƠNG PHÁP PHÂN TÍCH ĐỘNG 3.1 Các công cụ sử dụng cho quy trình phân tích động
3.1.1 Process Explorer
Chức năng chính: nhìn cây tiến trình, command line, module/DLL, strings trong memory
3.1.2 Process Monitor (Procmon)
Chức năng chính: ghi File/Registry/Process/Thread/Network theo thời gian thực
3.1.3 Regshot
Chức năng chính: diff Registry trước/sau chạy mẫu
3.1.4 Autoruns
Chức năng chính: liệt kê autostart locations để xác nhận persistence
3.1.5 Wireshark
Chức năng chính: bắt và phân tích PCAP (DNS/HTTP/SMTP/FTP/TLS)
3.1.6 FakeNet-NG
Chức năng chính: mô phỏng Internet (DNS/HTTP/HTTPS/SMTP/FTP…) và ghi log mọi kết nối ra
3.2 Các bước phân tích động Agent Tesla
Bước 1 Reverting to the clean snapshot (Khôi phục môi trường sạch)
Thao tác:
o Rollback VM Windows về snapshot sạch (trước khi cài mẫu)
o Đảm bảo network mode ở Host-only
Kết quả dự kiến:
o Môi trường an toàn, không bị ảnh hưởng bởi mẫu cũ
Bước 2 Running the dynamic analysis tools (Khởi chạy công cụ giám sát)
Process Explorer: bật trước để quan sát cây tiến trình và thông tin chi tiết
o → Kết quả dự kiến: tiến trình chính sample.exe xuất hiện, có thể spawn child process trong %AppData%\Roaming\<random>.exe
Process Monitor (Procmon): bật filter để log File/Registry/Process
o → Kết quả dự kiến: ghi nhận thao tác tạo file copy trong AppData, ghi log tạm ở Temp, thêm khóa registry Run/RunOnce, và gọi API mạng
Regshot: chụp “shot 1” (before)
o → Kết quả dự kiến: baseline registry sạch để so sánh
Trang 16 Autoruns: mở để sẵn so với baseline persistence
o → Kết quả dự kiến: trước khi chạy mẫu chưa có entry bất thường
FakeNet-NG: bật để mô phỏng DNS/HTTP/SMTP/FTP
o → Kết quả dự kiến: redirect mọi kết nối C2 về lab, ghi log payload exfil
Wireshark: bật capture PCAP
o → Kết quả dự kiến: sẽ ghi DNS query, HTTP/SMTP/FTP traffic của Agent Tesla
Bước 3 Executing the malware specimen (Chạy mẫu mã độc)
Thao tác:
o Thực thi file Agent Tesla với quyền admin, cho chạy 40–60 giây
Kết quả dự kiến:
o Process Explorer hiển thị tiến trình con trong Roaming
o Procmon log thấy ghi file exe mới, ghi key Run
o FakeNet/Wireshark bắt được SMTP traffic (MAIL FROM:), hoặc HTTP POST tới domain
o Chuỗi payload có dạng Base64/URL-encoded chứa username, password, keylog
Bước 4 Stopping the monitoring tools (Dừng công cụ)
Thao tác:
o Dừng capture Wireshark
o Tắt FakeNet-NG
o Procmon dừng logging và save file
o Regshot chụp “shot 2” (after) để so sánh
Kết quả dự kiến:
o Có file PCAP, log Procmon, Regshot diff để phân tích
Bước 5 Analyzing the results (Phân tích kết quả)
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\<random> trỏ tới file trong AppData
Autoruns: xác nhận persistence xuất hiện ở tab Logon/Run
Procmon: chứng minh hành vi copy file, ghi registry, nạp DLL mạng
Process Explorer: tiến trình con không ký số, dùng API từ user32.dll (GetAsyncKeyState) → keylogger