# MedusaHVNC: "Màn hình Windows vô hình" đang giúp tin tặc qua mặt mọi ánh mắt giám sát

## **Chuyện Gì Đang Xảy Ra?**

Hãy tưởng tượng thế này: bạn đang ngồi làm việc trên máy tính, soạn email, lướt web, mở tài khoản ngân hàng kiểm tra số dư. Mọi thứ đều bình thường. Không có cửa sổ lạ nào bật lên. Không có dấu hiệu nào cho thấy máy bị chậm. Task Manager sạch sẽ. Antivirus im lặng.

Nhưng ngay lúc đó — **trên cùng chiếc máy tính ấy** — ai đó đang mở một phiên Chrome khác, đăng nhập thẳng vào tài khoản ngân hàng của bạn bằng chính session đang active, duyệt email của bạn, sao chép dữ liệu qua clipboard, và bạn... **không nhìn thấy gì cả.** Không một pixel nào xuất hiện trên màn hình bạn đang nhìn.

Nghe như phim khoa học viễn tưởng? Không. Đây là chính xác những gì **MedusaHVNC** đang làm ngoài đời thực, ngay bây giờ, vào tháng 7/2026.

Mã độc này không đánh cắp mật khẩu rồi đăng nhập lại từ xa — nó **ngồi chung bàn** với bạn, trên một màn hình mà chỉ kẻ tấn công nhìn thấy. Nó bypass xác thực hai yếu tố (2FA) vì không cần đăng nhập — phiên đăng nhập của bạn đã sẵn sàng ở đó rồi. Và đáng sợ hơn nữa: nó chỉ dùng những **công cụ hợp pháp có sẵn của Windows**, khiến hầu hết các giải pháp bảo mật hoàn toàn... mù.

Được bán như một dịch vụ (Malware-as-a-Service) trên các diễn đàn ngầm, MedusaHVNC không yêu cầu người mua phải là chuyên gia — chỉ cần có tiền, là có thể biến bất kỳ ai thành nạn nhân.

![](https://cdn.hashnode.com/uploads/covers/6777abffdb647396c7d71de4/0f179659-492b-4da1-ae79-7db6defe2a06.png align="center")

**Bài phân tích này sẽ "mổ xẻ" MedusaHVNC từ A đến Z:** cách nó xâm nhập qua 5 giai đoạn, cách nó ẩn mình trong `charmap.exe` — vâng, đúng là cái **Character Map** mà bạn không bao giờ dùng, cách nó tạo desktop vô hình, và quan trọng nhất — **gót chân Achilles duy nhất** mà bạn có thể khai thác để phát hiện nó.

## **Tổng Quan Mối Đe Dọa**

| **Thuộc tính** | **Chi tiết** |
| --- | --- |
| **Tên mã độc** | MedusaHVNC |
| **Loại** | Remote Access Trojan (RAT) với HVNC |
| **Ngày phát hiện** | 27/07/2026 |
| **Mô hình phân phối** | Malware-as-a-Service (MaaS) |
| **Nền tảng mục tiêu** | Microsoft Windows (x64) |
| **Kiến trúc payload** | Unsigned 64-bit PE executable |
| **C2 Server** | `51.89.204.28:4444` |
| **Giao thức C2** | Custom protocol trên native Windows networking |
| **Nguồn phân tích chính** | BlackFog, SecurityWeek, SecurityAffairs |

## **Chuỗi Lây Nhiễm**

Để đưa được MedusaHVNC vào máy tính và ẩn mình thành công, kẻ tấn công đã thiết kế một hành trình "giao hàng" cực kỳ công phu gồm 5 bước. Chúng giống như một nhóm trộm chuyên nghiệp: không phá cửa xông vào, mà cải trang thành người giao hàng, dùng chìa khóa giả, và từ từ vô hiệu hóa hệ thống báo động.

Dưới đây là sơ đồ tóm tắt hành trình đó:

![](https://cdn.hashnode.com/uploads/covers/6777abffdb647396c7d71de4/d186cbe4-b717-4ec5-9417-763184edb409.png align="center")

### **Bước 1: "Kẻ mạo danh gõ cửa" và trò lừa Sandbox**

Mọi chuyện bắt đầu khi nạn nhân vô tình chạy một tệp tin script (JScript). Tệp này được hệ thống Windows Script Host (`wscript.exe`) thực thi. Tuy nhiên, nó không hành động ngay lập tức. Thay vào đó, nó **"đứng im" chính xác 7.584 giây (hơn 7,5 giây)**. Tại sao lại có con số kỳ lạ này? Trong thế giới bảo mật, các hệ thống Sandbox (môi trường giả lập để kiểm tra mã độc) thường chỉ theo dõi một file trong vài giây đầu tiên. Bằng cách "giả chết" trong 7,5 giây, đoạn script này đã đánh lừa hệ thống bảo vệ rằng nó là một file an toàn, trước khi âm thầm tỉnh dậy và tiếp tục.

![](https://cdn.hashnode.com/uploads/covers/6777abffdb647396c7d71de4/e72f28b7-6fb6-4b4a-a29e-1080dd507411.png align="center")

### **Bước 2: Dựng "căn cứ bí mật" để cắm chốt lâu dài**

Sau khi qua mặt được hệ thống bảo vệ, đoạn script bắt đầu xây dựng căn cứ. Nó lẻn vào thư mục tạm thời của Windows (`%TEMP%`) và tạo ra một thư mục bí mật có tên `Nx2981Okkr2`. Tại đây, nó âm thầm tập kết "đồ nghề" bao gồm:

*   Một phần mềm tự động hóa hợp pháp có tên **AutoIt** (như một công cụ được cấp phép, không bị ai nghi ngờ).
    
*   Một tệp tin cấu hình.
    
*   Bản thân phần lõi của mã độc (lúc này đang bị mã hóa và giấu phần đuôi mở rộng để tránh bị chú ý).
    
*   Đặc biệt, nó lén nhét một đoạn mã (batch script) vào thư mục **Startup** của máy tính. Nhờ vậy, dù nạn nhân có khởi động lại máy, mã độc vẫn tự động chạy lên.
    

### **Bước 3: Dùng phần mềm hợp pháp để làm việc mờ ám (AutoIt Decryption)**

Kẻ tấn công rất khôn ngoan khi không tự tay mở khóa lõi mã độc. Chúng "nhờ" **AutoIt** — một công cụ vốn được các quản trị viên hệ thống dùng để tự động hóa công việc. Vì AutoIt là phần mềm sạch và đáng tin cậy, các phần mềm diệt virus sẽ bỏ qua nó. AutoIt sau đó nhận lệnh, dùng một chìa khóa đơn giản (XOR key `0xAE`) để giải mã lớp vỏ đầu tiên của khối payload, tạo ra một chương trình chạy được (64-bit executable).

### **Bước 4: "Nhập hồn đoạt xác" (Process Injection)**

Đây là bước tinh vi nhất. Để có nơi ẩn náu an toàn, đoạn mã độc vừa được AutoIt tạo ra không tự mình hoạt động. Thay vào đó, nó nhắm đến `charmap.exe` — đây chính là tiện ích **Character Map** (Bảng ký tự) có sẵn, vô hại và nhàm chán nhất trên mọi máy tính Windows. Mã độc "bơm" (inject) toàn bộ bản thân nó vào bên trong tiến trình của `charmap.exe`. Nếu bạn mở Task Manager lên để kiểm tra xem máy tính có gì bất thường không, bạn sẽ chỉ thấy `charmap.exe` đang chạy. Không có gì đáng ngờ, và bạn sẽ bỏ qua nó. Kỹ thuật dùng chính phần mềm hệ thống để làm chuyện xấu này được gọi là **Living-off-the-Land (LOLBin)**.

### **Bước 5: Cởi bỏ 3 lớp vỏ bọc cuối cùng**

Ngay cả khi đã chui vào bên trong `charmap.exe`, phần lõi của mã độc vẫn chưa lộ diện. Nó tự bảo vệ mình bằng **3 lớp khóa mã hóa liên tiếp**:

1.  Đầu tiên, nó dùng thuật toán XOR 16-byte để quét qua và giải mã hơn 1 triệu byte dữ liệu.
    
2.  Tiếp theo, nó dùng một thuật toán mã hóa mạnh khác là ChaCha20.
    
3.  Cuối cùng, lớp vỏ bọc vỡ ra.
    

Chỉ đến lúc này, con quái vật **MedusaHVNC** mới thực sự thức giấc và bắt đầu dựng lên một màn hình Desktop vô hình. Toàn bộ quá trình giải mã 3 lớp này nhằm mục đích làm nản lòng và làm chậm tiến độ của các nhà nghiên cứu bảo mật khi cố gắng mổ xẻ nó.

## **Cơ Chế Hoạt Động Cốt Lõi — Hidden Desktop**

### **HVNC là gì?**

**Hidden Virtual Network Computing (HVNC)** là kỹ thuật cho phép tạo một **desktop Windows thứ hai hoàn toàn ẩn**. Trong khi nạn nhân vẫn làm việc bình thường trên desktop chính, kẻ tấn công hoạt động song song trên desktop ẩn mà không có bất kỳ dấu hiệu nào trên màn hình của nạn nhân.

![](https://cdn.hashnode.com/uploads/covers/6777abffdb647396c7d71de4/a7af857b-37eb-4967-b3b7-2887e4df14bb.png align="center")

### **Tận dụng phiên trình duyệt sống**

Đây là điểm **nguy hiểm nhất** của MedusaHVNC:

*   Mã độc chạy trình duyệt (Chrome, Edge, Firefox) trên desktop ẩn
    
*   Trình duyệt này **thừa kế toàn bộ phiên đăng nhập** của nạn nhân
    
*   Kẻ tấn công có thể:
    
    *   Truy cập tài khoản ngân hàng đang đăng nhập
        
    *   Đọc email mà không cần biết mật khẩu
        
    *   Thao tác trên các ứng dụng web đang active
        
    *   Đánh cắp cookie, session token, saved passwords
        
    *   Thực hiện giao dịch tài chính giả mạo
        
*   Không giống keylogger hay stealer truyền thống cần đánh cắp credentials rồi đăng nhập lại, MedusaHVNC **trực tiếp sử dụng phiên đăng nhập hiện tại** — bypass hoàn toàn 2FA/MFA đã xác thực trước đó.
    

## **Phân Tích Kỹ Thuật Chi Tiết**

Để tạo ra được một "vũ trụ song song" ngay trên máy tính nạn nhân, MedusaHVNC không sử dụng phép thuật. Nó đơn giản là "lách luật" một cách xuất sắc bằng cách lạm dụng chính những công cụ hợp pháp mà hệ điều hành Windows cung cấp cho các nhà phát triển phần mềm.

### **Vũ Khí Hợp Pháp: Bộ Windows API**

Thay vì viết các đoạn mã độc hại có thể dễ dàng bị phần mềm diệt virus bắt quả tang, kẻ đứng sau MedusaHVNC chỉ gọi (call) các hàm API có sẵn trong thư viện của Windows. Đây là những hàm mà các ứng dụng như TeamViewer hay Zoom sử dụng hàng ngày:

| **Tên Hàm API (Function)** | **Vai trò trong hệ thống Windows** | **Mục đích lạm dụng của MedusaHVNC** |
| --- | --- | --- |
| `CreateDesktopW` / `OpenDesktopW` | Cho phép hệ điều hành tạo ra các môi trường hiển thị khác nhau (ví dụ: màn hình khóa, màn hình đăng nhập). | **Tạo "căn phòng tối":** Tạo ra một desktop hoàn toàn mới nhưng **không được gán vào màn hình vật lý**. Đây là nơi mọi tội ác diễn ra. |
| `BitBlt` / `PrintWindow` | Cho phép các ứng dụng chụp ảnh màn hình hoặc sao chép đồ họa từ cửa sổ này sang cửa sổ khác. | **Livestream màn hình:** Chụp liên tục nội dung của cái "desktop ẩn" kia, đóng gói lại và gửi qua mạng về cho kẻ tấn công xem (giống như xem livestream). |
| `EnumWindows` | Liệt kê tất cả các cửa sổ đang mở trên màn hình để hệ thống quản lý. | **Quản lý cửa sổ:** Kẻ tấn công dùng nó để xem có những ứng dụng nào (trình duyệt, Explorer) đang chạy trên desktop ẩn. |
| `SendInput` / `SetWindowsHookExW` | Cho phép phần mềm giả lập thao tác gõ phím hoặc click chuột (thường dùng cho các phần mềm auto/macro). | **Điều khiển từ xa:** Nhận lệnh từ kẻ tấn công (di chuột, click, gõ phím) và "tiêm" những lệnh đó thẳng vào các ứng dụng đang chạy trên desktop ẩn. Nạn nhân không hề thấy chuột của mình tự di chuyển. |
| `OpenClipboard` / `SetClipboardData` | Quản lý khay nhớ tạm (Copy/Paste) của hệ thống. | **Trộm cắp dữ liệu tức thì:** Kẻ tấn công có thể copy một đoạn mã độc từ máy chúng, paste thẳng vào trình duyệt của nạn nhân, hoặc copy dữ liệu nhạy cảm của nạn nhân và lấy về. |

### **Nghệ Thuật Kết Hợp**

Sự nguy hiểm không nằm ở từng hàm API đơn lẻ, mà ở cách mã độc này phối hợp chúng (Orchestration). Dưới đây là cách chúng hoạt động nhịp nhàng:

![](https://cdn.hashnode.com/uploads/covers/6777abffdb647396c7d71de4/04c24120-aa3f-4efb-ac6d-301c5c5b022d.png align="center")

### **Tại sao các lá chắn bảo mật (EDR/AV) lại bị "mù"?**

Các giải pháp Endpoint Detection and Response (EDR) hay Antivirus (AV) truyền thống gặp cực kỳ nhiều khó khăn trong việc bắt quả tang MedusaHVNC vì 4 lý do cốt lõi sau:

1.  **Không có "vũ khí nóng" (No Malicious APIs):** EDR thường báo động khi thấy phần mềm cố gắng xóa file hệ thống, sửa Registry trái phép, hay mã hóa đĩa (như Ransomware). MedusaHVNC không làm vậy. Nó chỉ dùng các hàm xử lý đồ họa (`BitBlt`) và giả lập chuột (`SendInput`). Đối với EDR, hành động này trông giống hệt một phần mềm hỗ trợ từ xa hợp pháp.
    
2.  **Ký sinh trên tiến trình sạch (Process Injection):** Nhớ lại Bước 4 trong Chuỗi lây nhiễm, mã độc này tiêm thẳng mã của nó vào tiến trình `charmap.exe` (Character Map). `charmap.exe` là một file có chữ ký số hợp lệ của Microsoft (Signed Binary). Khi EDR kiểm tra ai đang gọi các hàm API kia, nó thấy `charmap.exe` đang gọi. Sự tin tưởng vào một file hệ thống cốt lõi khiến EDR bỏ qua sự giám sát gắt gao.
    
3.  **Mã độc nằm hoàn toàn trong bộ nhớ (Fileless / In-Memory):** Lõi của MedusaHVNC không bao giờ được ghi xuống ổ cứng (Disk) dưới dạng một file có đuôi `.exe` hay `.dll`. Nó được giải mã thẳng vào bộ nhớ RAM (Memory) của tiến trình `charmap.exe`. Do đó, các trình quét Antivirus quét ổ cứng định kỳ sẽ không bao giờ tìm thấy nó.
    
4.  **Desktop vật lý hoàn toàn yên tĩnh:** Vì mọi thao tác đều được hệ thống Windows định tuyến (route) sang một Desktop thứ hai không hiển thị, nên chuột vật lý của người dùng không bị giật, bàn phím không bị loạn, màn hình không chớp tắt. Nạn nhân không có lý do gì để gọi đội ngũ IT hỗ trợ.
    

## **Hạ Tầng Command & Control (C2)**

| **Thuộc tính** | **Giá trị** |
| --- | --- |
| **IP Address** | `51.89.204.28` |
| **Port** | `4444` |
| **Protocol** | Custom protocol (không phải HTTP/HTTPS) |
| **Cấu hình** | Hardcoded trong binary (không resolve động) |

Việc hardcode địa chỉ C2 là **con dao hai lưỡi**: đơn giản cho attacker vận hành, nhưng cũng là target ổn định mà defender có thể block ngay lập tức.

## **Indicators of Compromise (IOCs)**

### **Network IOCs**

| **Type** | **Value** | **Description** |
| --- | --- | --- |
| **C2 IP** | `51.89.204.28` | Command & Control server |
| **C2 Port** | `4444` | Communication port |

### **Host-based IOCs**

| **Type** | **Value** | **Description** |
| --- | --- | --- |
| **Temp Folder** | `%TEMP%\Nx2981Okkr2` | Malware staging directory |
| **Startup Persistence** | Batch script trong Startup folder | Auto-start mechanism |
| **Process** | `charmap.exe` spawned bởi AutoIt | Process injection target |
| **Internal String** | `MedusaHVNC` | Embedded trong final payload |
| **XOR Key (Stage 3)** | `0xAE` | Single-byte XOR decryption key |
| **Encryption (Stage 5)** | ChaCha20 (32-byte key, 12-byte nonce) | Final payload decryption |

### **MITRE ATT&CK Mapping**

| **Tactic** | **Technique** | **ID** | **Chi tiết** |
| --- | --- | --- | --- |
| **Execution** | Windows Script Host | T1059.007 | JScript launcher via wscript.exe |
| **Execution** | AutoIt scripting | T1059 | AutoIt interpreter để decrypt payload |
| **Persistence** | Startup Folder | T1547.001 | Batch script trong Startup |
| **Defense Evasion** | Process Injection | T1055 | Inject vào charmap.exe |
| **Defense Evasion** | Obfuscated Files | T1027 | Multi-layer XOR + ChaCha20 |
| **Defense Evasion** | Sandbox Evasion | T1497 | Delay 7,584ms trước khi thực thi |
| **Defense Evasion** | Masquerading | T1036 | Sử dụng signed system binary (LOLBin) |
| **Collection** | Screen Capture | T1113 | BitBlt, PrintWindow |
| **Collection** | Input Capture | T1056 | SetWindowsHookExW |
| **Collection** | Clipboard Data | T1115 | OpenClipboard, GetClipboardData |
| **C2** | Non-Standard Port | T1571 | Port 4444 |
| **C2** | Custom Protocol | T1095 | Custom binary protocol |
| **Impact** | Account Access | T1078 | Hijack live browser sessions |

##   
**Khuyến Nghị Phòng Thủ**

### **Hành Động Ngay Lập Tức**

*   **Block C2 IP** `51.89.204.28` trên firewall/IPS/proxy
    
*   **Block port 4444** cho outbound traffic (nếu không cần thiết)
    
*   **Deploy IOC** vào SIEM/EDR/Threat Intelligence platform
    
*   **Scan toàn bộ hệ thống** bằng endpoint security solution cập nhật
    
*   **Kiểm tra Task Scheduler** cho các scheduled task bất thường hoặc ẩn
    
*   **Kiểm tra Startup folder** cho batch script không rõ nguồn gốc
    

### **Phòng Ngừa Dài Hạn**

| **Biện pháp** | **Mô tả** | **Ưu tiên** |
| --- | --- | --- |
| **Anti-Data Exfiltration (ADX)** | Giám sát và chặn kết nối outbound bất thường — bất kể process nào thực hiện | Cao |
| **Application Whitelisting** | Chỉ cho phép thực thi các ứng dụng đã approved, block AutoIt nếu không cần thiết | Cao |
| **Network Segmentation** | Giới hạn outbound traffic đến chỉ các IP/domain đã whitelist | Trung bình |
| **EDR với behavioral analysis** | Deploy EDR có khả năng phát hiện process injection và HVNC behavior | Cao |
| **Credential Hygiene** | Nếu nghi ngờ bị compromise, reset TOÀN BỘ credentials, invalidate sessions, revoke tokens | Cao |
| **Browser Session Management** | Không lưu mật khẩu trong browser, sử dụng password manager riêng | Trung bình |
| **Monitoring charmap.exe** | Alert khi charmap.exe có network connection hoặc được spawn bởi non-explorer parent | Trung bình |

### **Điểm Yếu Của Mã Độc**

*   Dù MedusaHVNC cực kỳ khó phát hiện ở mức endpoint, nó **không thể ẩn lưu lượng mạng**:
    
    *   Mọi hành động trên desktop ẩn (chuyển tiền, đọc email, sao chép dữ liệu) đều phải gửi dữ liệu qua mạng về C2 server
        
    *   **Network-level monitoring** là lớp phòng thủ hiệu quả nhất
        
    *   Kết nối đến C2 server trông giống nhau dù đến từ hidden desktop hay remote-access tool thông thường
        
    *   Giải pháp **Anti-Data Exfiltration** có thể phát hiện và chặn kết nối C2 theo thời gian thực
        

## **Kết Luận & Nhận Định**

MedusaHVNC đại diện cho một **bước tiến hóa cực kỳ nguy hiểm** trong cách thức mã độc đánh cắp dữ liệu. Nó vứt bỏ hoàn toàn các phương pháp cũ (như cài keylogger hay trộm file mật khẩu) để chọn một con đường tàng hình: dùng chính công cụ hợp pháp của hệ điều hành để "ngồi chung bàn" với nạn nhân.

Bằng cách kết hợp:

1.  **Công nghệ HVNC** tạo desktop tàng hình.
    
2.  **Kỹ thuật Living-off-the-Land** (dùng `charmap.exe` và API hợp pháp).
    
3.  **Mô hình MaaS** giúp bất kỳ tin tặc "tập sự" nào cũng có thể mua và sử dụng.
    

MedusaHVNC đã biến các hệ thống Antivirus (dựa trên mẫu nhận diện) và một số EDR (dựa trên hành vi tiến trình) trở nên **bất lực**.

## Tài Liệu Tham Khảo

[MedusaHVNC Malware Uses Hidden Windows Desktops to Evade Detection](https://www.securityweek.com/medusahvnc-malware-uses-hidden-windows-desktops-to-evade-detection/)

[MedusaHVNC Trojan Creates Hidden Desktops to Hijack Browsers and Steal Data](https://securityaffairs.com/196111/malware/medusahvnc-trojan-creates-hidden-desktops-to-hijack-browsers-and-steal-data.html)

[MedusaHVNC: A Hidden Desktop](https://www.blackfog.com/medusahvnc-a-hidden-desktop/)
