Phát hiện Mã độc Cmimai Stealer: Chiến lược Toàn diện

K7 Labs đã tiến hành phân tích chuyên sâu về mã độc Cmimai Stealer. Đây là một infostealer dựa trên VBScript, được phát hiện lần đầu vào tháng 6 năm 2025. Phát hiện này là một yếu tố quan trọng trong lĩnh vực threat intelligence, cho thấy cách nó sử dụng PowerShell và các scripting gốc của Windows để bí mật trích xuất dữ liệu.
Tổng quan về Cmimai Stealer
Mã độc Cmimai Stealer được đánh giá là một công cụ tấn công gọn nhẹ. Nó có khả năng vượt qua các chính sách thực thi thông thường. Nó còn tạo ra các script PowerShell mang tính tạm thời.
Mục tiêu chính của mã độc này là thu thập siêu dữ liệu từ hệ thống nạn nhân và các trình duyệt web. Sau khi thu thập, dữ liệu được gửi đi thông qua các Discord webhooks.
Một mẫu bổ sung của mã độc Cmimai Stealer đã xuất hiện vào ngày 28 tháng 6 năm 2025. Mẫu này sở hữu một URL webhook khác biệt. Điều này chỉ ra khả năng có các biến thể mới hoặc sự tiến hóa trong các chiến dịch tấn công liên quan.
Cơ chế hoạt động và Thu thập dữ liệu
Quá trình khởi tạo của Cmimai Stealer bắt đầu bằng việc ghi lại các sự kiện thực thi. Một tệp tạm thời có tên “vbs_reporter_log.txt” được tạo trong thư mục %TEMP% của hệ thống.
Tiếp theo, mã độc tiến hành truy vấn Windows Management Instrumentation (WMI) thông qua lớp Win32_OperatingSystem. Điều này giúp trích xuất các thông tin hệ thống quan trọng. Các thông tin này bao gồm phiên bản hệ điều hành, tên, tên người dùng hiện tại, tên máy tính và dấu thời gian.
Dữ liệu thu thập được định dạng thành một payload JSON. Payload này sau đó được gửi đi bằng đối tượng WinHttpRequest.5.1. Nếu phương thức này thất bại, nó sẽ chuyển sang sử dụng MSXML2.XMLHTTP qua HTTPS.
Quá trình này đảm bảo việc trích xuất dữ liệu diễn ra đáng tin cậy. Dữ liệu được chuyển đến các kênh Discord do kẻ tấn công kiểm soát.
Thu thập dữ liệu trình duyệt
Mô-đun thu thập siêu dữ liệu trình duyệt của script này rất linh hoạt. Nó tạo và thực thi động tệp “vbs_ps_browser.ps1”. Script này có nhiệm vụ phân tích các tệp JSON “Local State”.
Các trình duyệt dựa trên Chromium như Google Chrome và Microsoft Edge là mục tiêu chính. Mã độc thu thập tên hồ sơ người dùng, địa chỉ email và các khóa chính đã được mã hóa.
Các khóa này thường được mã hóa Base64 dưới dạng “encrypted_key” hoặc “app_bound_encrypted_key”. Đây là các khóa quan trọng để giải mã dữ liệu nhạy cảm hơn.
Mặc dù mã độc này có khả năng giải mã các artifact nhạy cảm như Login Data hoặc Cookies để đánh cắp thông tin đăng nhập. Tuy nhiên, các mẫu được phân tích không chứa các mô-đun giải mã hoặc exfiltration tiếp theo.
Điều này cho thấy thiết kế ban đầu của mã độc tập trung vào mục đích trinh sát. Nó không được tối ưu hóa cho việc đánh cắp dữ liệu quy mô lớn ngay lập tức.
Chức năng chụp màn hình
Một thành phần bổ trợ là mô-đun chụp màn hình. Nó triển khai script “vbs_ps_diag.ps1”. Script này sử dụng các .NET assembly như System.Drawing và System.Windows.Forms.
Mục đích là chụp ảnh màn hình chính của nạn nhân. Hình ảnh sau đó được nén thành định dạng JPEG với chất lượng 70%. Dung lượng ảnh được giữ dưới 8MB để tuân thủ giới hạn tải lên của Discord.
Cuối cùng, ảnh chụp màn hình được tích hợp vào payload webhook. Điều này giúp kẻ tấn công có được thông tin trực quan về hệ thống bị xâm nhập.
Cơ chế duy trì và Phát hiện xâm nhập
Khả năng duy trì của mã độc Cmimai Stealer được đảm bảo thông qua một vòng lặp vô hạn. Vòng lặp này tự động kích hoạt lại quá trình báo cáo chẩn đoán cứ sau 60 phút.
Cơ chế này cho phép kẻ tấn công duy trì sự giám sát liên tục. Nó không yêu cầu khởi động lại hệ thống hoặc sử dụng các kỹ thuật né tránh phức tạp khác.
Các Vector phát hiện và Chỉ số thỏa hiệp (IOC)
Từ góc độ phòng thủ, dấu vết hoạt động của Cmimai Stealer cung cấp nhiều vector phát hiện xâm nhập. Điều này giúp các chuyên gia an ninh mạng xác định sự hiện diện của nó.
Các vector này bao gồm chuỗi tiến trình cha-con bất thường. Cụ thể, wscript.exe sẽ tạo ra powershell.exe. Trong đó, các chính sách thực thi bị bỏ qua và cửa sổ được ẩn đi.
Ví dụ về các lệnh thực thi:
powershell.exe -NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File vbs_ps_browser.ps1
powershell.exe -NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File vbs_ps_diag.ps1
Các chỉ số liên quan đến hệ thống tệp bao gồm nhiều artifact tạm thời. Chúng có thể được dùng để nhận diện hoạt động của mã độc:
- Script PowerShell tạm thời, ví dụ: vbs_ps_browser.ps1, vbs_ps_diag.ps1.
- Tệp nhật ký hoạt động: vbs_reporter_log.txt.
- Các tệp ảnh chụp màn hình đầu ra: vbs_diag_*.jpg, thường nằm trong thư mục %TEMP%.
Dữ liệu đo lường mạng (network telemetry) là một nguồn quan trọng để phát hiện xâm nhập. Nó cho thấy lưu lượng HTTPS đến các endpoint của Discord, cụ thể là discord.com/api/webhooks.
Đặc biệt, chuỗi User-Agent độc đáo “Cmimai Stealer VBS UI Rev” được sử dụng. User-Agent này có thể được dùng để tạo các quy tắc chặn dựa trên chữ ký trên các thiết bị endpoint hoặc gateway. (Tham khảo thêm tại: K7 Labs: Silent Watcher – Dissecting Cmimai Stealer’s VBS Payload)
Ngoài ra, các quy tắc YARA có thể được xây dựng. Chúng sẽ giúp săn lùng các mẫu script nhấn mạnh các truy vấn WMI và các hook tới Discord, tăng cường khả năng phát hiện.
Đánh giá và Khuyến nghị bảo mật
Mặc dù Cmimai Stealer thiếu các tính năng mạnh mẽ như duy trì qua khởi động lại hệ thống hoặc giao tiếp mã hóa. Nó cũng không trực tiếp giải mã thông tin đăng nhập. Tuy nhiên, mã độc infostealer này vẫn có giá trị kép.
Nó hoạt động vừa như một kẻ trộm dữ liệu, vừa như một tài sản trinh sát cho giai đoạn hai của cuộc tấn công. Điều này nhấn mạnh tiềm năng của nó trong các cuộc tấn công đa giai đoạn.
Hiện tại, mã độc này chưa được gán cho bất kỳ họ mã độc nào đã được thiết lập. Các nhà phòng thủ được khuyến nghị cần tăng cường giám sát.
Cần đặc biệt chú ý đến lưu lượng truy cập Discord không mong muốn từ các hệ thống nhạy cảm. Đồng thời, cần gắn cờ các lần thực thi script có rủi ro cao để giảm thiểu sự lây lan của mã độc và bảo vệ an toàn thông tin của tổ chức.









