Evasive Panda APT: Nguy hiểm từ Mã độc MgBot và Tấn công AiTM

Nhóm Evasive Panda APT, còn được biết đến với các tên gọi khác như Bronze Highland, Daggerfly, và StormBamboo, đã tiến hành các chiến dịch tấn công có chủ đích từ tháng 11 năm 2022. Nhóm này sử dụng các kỹ thuật tinh vi để phân phối mã độc MgBot, đặt ra một mối đe dọa mạng đáng kể cho nhiều ngành công nghiệp.
Các chiến dịch của nhóm Evasive Panda APT liên tục diễn ra cho đến tháng 11 năm 2024, ảnh hưởng đến người dùng ở nhiều khu vực. Phương thức tấn công chính bao gồm các cuộc tấn công Adversary-in-the-Middle (AiTM) kết hợp với kỹ thuật DNS poisoning.
Kỹ thuật Tấn công Adversary-in-the-Middle và DNS Poisoning
Evasive Panda APT triển khai các cuộc tấn công AiTM bằng cách can thiệp vào giao tiếp giữa nạn nhân và máy chủ hợp pháp. Điều này cho phép chúng chặn và sửa đổi dữ liệu trao đổi. Để tăng cường hiệu quả, nhóm này kết hợp với kỹ thuật DNS poisoning.
Kỹ thuật DNS poisoning liên quan đến việc thao túng phản hồi DNS để chuyển hướng lưu lượng truy cập của nạn nhân đến các máy chủ do kẻ tấn công kiểm soát. Thay vì kết nối với máy chủ hợp pháp, hệ thống của nạn nhân sẽ được giải quyết tới địa chỉ IP độc hại.
Giả mạo Cập nhật Phần mềm Hợp pháp
Để lừa nạn nhân, nhóm Evasive Panda APT ngụy trang các tệp thực thi độc hại của chúng thành các bản cập nhật phần mềm hợp pháp. Các ứng dụng phổ biến bị giả mạo bao gồm:
- SohuVA
- iQIYI Video
- IObit Smart Defrag
- Tencent QQ
Khi người dùng cố gắng tải xuống các bản cập nhật cho các ứng dụng này, kẻ tấn công sẽ kích hoạt cơ chế DNS poisoning. Điều này làm cho hệ thống của nạn nhân nhận được phản hồi DNS giả mạo, hướng chúng đến các máy chủ chứa mã độc.
Ví dụ điển hình là tệp sohuva_update_10.2.29.1-lup-s-tp.exe. Tệp này được trình bày như một bản cập nhật SohuVA chính hãng nhưng thực chất lại phân phối mã độc MgBot từ một nguồn do kẻ tấn công kiểm soát. Các nhà nghiên cứu từ Securelist đã xác định rằng kẻ tấn công đã thay đổi phản hồi DNS của p2p.hd.sohu.com[.]cn thành địa chỉ IP của máy chủ do chúng kiểm soát.
Kỹ thuật này cho phép chặn các yêu cầu cập nhật hợp pháp và thay thế chúng bằng các payload độc hại. Để tránh bị phát hiện, nhóm Evasive Panda APT lưu trữ các phần mã độc được mã hóa trên các máy chủ của chúng. Các phần này chỉ được giải quyết khi có các yêu cầu DNS cụ thể, khiến việc phân tích và phát hiện trở nên khó khăn.
Cơ chế Hoạt động của Mã độc MgBot
Mã độc MgBot của nhóm Evasive Panda APT sử dụng một quy trình lây nhiễm đa giai đoạn với mã hóa lai (hybrid encryption) để làm phức tạp việc phân tích và gây khó khăn cho các công cụ phát hiện xâm nhập.
Loader Ban đầu và Giải mã
Loader ban đầu của MgBot sử dụng thuật toán giải mã dựa trên XOR để giải mã cấu hình của nó. Sau khi giải mã, nó kiểm tra tên người dùng đang đăng nhập.
Nếu tên người dùng là SYSTEM, mã độc sẽ sao chép chính nó với một tên khác bằng cách thêm hậu tố .ext.exe. Điều này giúp mã độc thiết lập sự tồn tại trên hệ thống và tránh bị phát hiện ban đầu.
Tiếp theo, loader giải mã một shellcode có kích thước 9.556 byte sử dụng một khóa XOR một byte. Shellcode này sau đó được lưu trữ trong phần .data của bộ nhớ.
Thông thường, phần .data không có quyền thực thi. Để vượt qua hạn chế này và cho phép shellcode chạy mà không kích hoạt các cảnh báo bảo mật, mã độc sử dụng API VirtualProtect. API này thay đổi quyền của phần bộ nhớ, cấp quyền thực thi cho shellcode.
Minh họa khái niệm thay đổi quyền bộ nhớ:
// Pseudocode minh họa việc sử dụng VirtualProtectBOOL bResult = VirtualProtect( lpAddress, // Địa chỉ bắt đầu của vùng nhớ dwSize, // Kích thước của vùng nhớ PAGE_EXECUTE_READWRITE, // Quyền mới (đọc, ghi, thực thi) &dwOldProtect // Con trỏ đến biến lưu quyền cũ);Quy trình Lây nhiễm Đa giai đoạn và Mã hóa Lai
Nhóm Evasive Panda APT áp dụng một quy trình lây nhiễm nhiều giai đoạn, kết hợp các phương pháp mã hóa phức tạp để tránh bị phân tích. Shellcode giai đoạn đầu tiên tìm kiếm một tệp DAT cụ thể trong thư mục cài đặt của mã độc.
Nếu tệp DAT được tìm thấy, shellcode sẽ giải mã nó bằng API CryptUnprotectData. API này đảm bảo rằng dữ liệu chỉ có thể được giải mã trên chính máy tính bị lây nhiễm, tăng cường bảo mật cho payload. Sau khi giải mã, shellcode sẽ xóa tệp để loại bỏ dấu vết của cuộc tấn công mạng.
Trong trường hợp tệp DAT không tồn tại, shellcode sẽ tải xuống dữ liệu được mã hóa từ dictionary[.]com. Tên miền này có vẻ hợp pháp nhưng đã bị xâm phạm thông qua DNS poisoning.
Kẻ tấn công thao túng địa chỉ IP liên kết với tên miền này, khiến hệ thống nạn nhân giải quyết nó thành các địa chỉ IP khác nhau do kẻ tấn công kiểm soát, tùy thuộc vào vị trí địa lý của nạn nhân.
Phân phối Payload Giai đoạn Hai
Mã độc truy xuất một shellcode giai đoạn hai được ngụy trang dưới dạng tệp PNG. Payload này sử dụng một phương pháp mã hóa lai tùy chỉnh, kết hợp Microsoft Data Protection API (DPAPI) và thuật toán RC5.
Khóa mã hóa RC5 được mã hóa bằng DPAPI và lưu trữ trong 16 byte đầu tiên của tệp perf.dat. Phần còn lại của tệp chứa payload được mã hóa bằng RC5. Để giải mã, khóa RC5 được mã hóa sẽ được giải mã trước bằng DPAPI, sau đó khóa này được sử dụng để giải mã phần nội dung còn lại của tệp.
Kỹ thuật Tải lén DLL (DLL Sideloading) và Duy trì Quyền truy cập
Loader thứ cấp, libpython2.4.dll, dựa vào một tệp thực thi hợp pháp có chữ ký số tên là evteng.exe để thực hiện tải lén một cách lén lút thông qua kỹ thuật DLL sideloading. Kỹ thuật này cho phép mã độc được tải và thực thi trong ngữ cảnh của một tiến trình hợp pháp, giúp nó tránh bị phát hiện bởi các giải pháp bảo mật thông thường.
Sau khi giải mã, mã độc sẽ tiêm (inject) MgBot implant vào tiến trình hợp pháp svchost.exe. Bằng cách này, Evasive Panda APT có thể duy trì quyền truy cập dai dẳng (persistence) trên hệ thống nạn nhân trong khi vẫn tránh được sự phát hiện.
Cấu hình của mã độc bao gồm tên chiến dịch, địa chỉ IP của máy chủ command-and-control (C2) được hardcode, và các khóa mã hóa. Đáng chú ý, một số máy chủ C2 vẫn hoạt động trong nhiều năm, cho thấy sự kiên trì và nguồn lực của nhóm Evasive Panda APT trong các hoạt động của chúng.
Các Chỉ số Thỏa hiệp (IOCs)
Dưới đây là các chỉ số thỏa hiệp (IOCs) được xác định liên quan đến các chiến dịch của nhóm Evasive Panda APT:
Tên miền và Địa chỉ IP liên quan đến DNS Poisoning:
p2p.hd.sohu.com[.]cn(bị chuyển hướng đến máy chủ độc hại)dictionary[.]com(bị xâm nhập và chuyển hướng để phân phối payload giai đoạn hai)- Các địa chỉ IP của máy chủ C2 được hardcode trong cấu hình mã độc (không được cung cấp cụ thể trong nguồn, nhưng là một chỉ số quan trọng).
Tên tệp độc hại:
sohuva_update_10.2.29.1-lup-s-tp.exe- Tệp có hậu tố
.ext.exe(sau khi loader tự sao chép) perf.dat(chứa payload giai đoạn hai được mã hóa)libpython2.4.dll(DLL độc hại được sideload)
Tiến trình bị ảnh hưởng:
svchost.exe(tiến trình hợp pháp được sử dụng để inject MgBot implant)evteng.exe(tiến trình hợp pháp được sử dụng để thực hiện DLL sideloading)
Biện pháp Phòng ngừa và Phát hiện
Để bảo vệ hệ thống khỏi các mối đe dọa như Evasive Panda APT và mã độc MgBot, các tổ chức cần triển khai một chiến lược bảo mật đa lớp.
Phòng chống DNS Poisoning:
- Sử dụng các máy chủ DNS đáng tin cậy và có khả năng bảo mật cao.
- Triển khai DNSSEC để xác thực phản hồi DNS, ngăn chặn các cuộc tấn công DNS poisoning.
- Giám sát lưu lượng DNS để phát hiện các truy vấn bất thường hoặc các phản hồi được giải quyết đến các địa chỉ IP đáng ngờ.
Phát hiện và Ngăn chặn Mã độc:
- Sử dụng các giải pháp EDR (Endpoint Detection and Response) và NGAV (Next-Generation Antivirus) có khả năng phát hiện hành vi để nhận diện các hoạt động đáng ngờ của mã độc, bao gồm việc thay đổi quyền bộ nhớ bằng VirtualProtect hoặc tiêm tiến trình.
- Áp dụng các chính sách Application Whitelisting để chỉ cho phép các ứng dụng đáng tin cậy chạy, ngăn chặn các tệp thực thi giả mạo.
- Thường xuyên cập nhật bản vá bảo mật cho hệ điều hành và tất cả các ứng dụng, đặc biệt là các phần mềm được kẻ tấn công sử dụng để giả mạo bản cập nhật.
Giám sát và Phân tích Mạng:
- Triển khai các hệ thống IDS/IPS (Intrusion Detection/Prevention Systems) để giám sát lưu lượng mạng và phát hiện các dấu hiệu của cuộc tấn công mạng, bao gồm lưu lượng đến các máy chủ C2 đã biết.
- Phân tích log hệ thống và mạng để tìm kiếm các hoạt động bất thường, chẳng hạn như tải xuống tệp từ các tên miền không mong muốn hoặc hoạt động DLL sideloading.
- Đào tạo người dùng về nhận diện các dấu hiệu lừa đảo và tầm quan trọng của việc chỉ tải xuống cập nhật phần mềm từ các nguồn chính thức.







