Skip to main content

Command Palette

Search for a command to run...

Rapuncel & Alinubx.sys: Khi Driver Có Chữ Ký Microsoft Trở Thành Vũ Khí Diệt 145 Sản Phẩm Bảo Mật

Updated
•35 min read•View as Markdown
Rapuncel & Alinubx.sys: Khi Driver Có Chữ Ký Microsoft Trở Thành Vũ Khí Diệt 145 Sản Phẩm Bảo Mật

Tổng Quan

Ngày 17/09/2026, đội LastPass TIME cùng Delphos Labs công bố báo cáo phân tích một chiến dịch phát tán mã độc quy mô công nghiệp, trong đó LastPass Authenticator chỉ là một trong hơn 40 thương hiệu bị giả mạo bởi cùng một bộ kit.

Chuỗi tấn công có ba thành phần chính:

  1. Hạ tầng phát tán — các repository GitHub giả mạo được tối ưu SEO, dẫn qua nhiều tầng chuyển hướng ẩn trước khi tới server payload thật.

  2. Rapuncel — infostealer đánh cắp mật khẩu từ 19+ trình duyệt, ví tiền mã hóa từ 30+ ứng dụng, session Discord/Steam/Telegram và toàn bộ nội dung Windows Credential Manager.

  3. Alinubx.sys — driver kernel có chữ ký Microsoft hợp lệ, chứa danh sách 145 tiến trình sản phẩm bảo mật được kết thúc từ tầng kernel — tức là từ vị trí mà chính EDR/AV cũng không thể tự bảo vệ.

Điểm đáng lo nhất không nằm ở kỹ thuật, mà ở các tín hiệu tin cậy bị vô hiệu hóa. Tại thời điểm phân tích (20/08/2026), driver Alinubx.sys có:

  • 0/72 phát hiện trên VirusTotal — và con số này không đổi từ tháng 7/2025

  • Chữ ký Microsoft Windows Hardware Compatibility Publisher hợp lệ, đóng dấu thời gian tháng 3/2023

  • Không có mặt trong danh sách chặn driver của Microsoft (DriverPolicy_Enforced.xml)

Nói cách khác: một người dùng cẩn thận — tải từ GitHub, kiểm tra chữ ký số, quét VirusTotal, tin vào blocklist của Microsoft — vẫn bị qua cả bốn lớp phòng vệ.


Đôi Nét Về Threat Actor

Thuộc tính Chi tiết
Tên stealer Rapuncel (do Delphos Labs đặt)
Tên driver kernel Alinubx.sys (biến thể đổi danh tính của CcProtect.sys)
Thời gian hoạt động Ít nhất từ đầu năm 2026 → tháng 9/2026; hạ tầng "có mọi dấu hiệu sẽ tiếp tục"
Mốc phát hiện LastPass TIME phát hiện tổ chức GitHub giả mạo ngày 13/08/2026; snapshot điều tra ngày 10/09/2026
Mô hình vận hành Malware-as-a-Service (MaaS) — một bộ kit, hơn 40 thương hiệu bị giả mạo
Công cụ đóng gói Cruciferra crypter (gói PUROSANGUE) — Delphos đánh giá độ tin cậy cao
Quan hệ với họ mã độc đã biết BoryptGrab — Delphos đánh giá Rapuncel là biến thể hoặc nhánh cùng họ, ở mức tin cậy trung bình, không khớp byte-to-byte với mẫu nào Trend Micro đã công bố
Attribution Không quy kết cho nhóm cụ thể nào. Đây là hệ sinh thái tội phạm mạng thương mại, không phải chiến dịch APT có chủ đích

Về mô hình MaaS: Server payload chính albinofennel.com được xác nhận đang phục vụ ít nhất 40 trang lure giả mạo thương hiệu khác cùng lúc. Kit này dùng một bộ JavaScript (window.__PM__) để tự động sinh trang lure cho từng thương hiệu — nghĩa là việc mở rộng sang thương hiệu thứ 41, 42 gần như không tốn chi phí. LastPass không phải mục tiêu được chọn riêng, mà là một thương hiệu trong danh mục.

Một chi tiết về nguồn gốc: Delphos không tìm thấy bằng chứng chắc chắn rằng Rapuncel được sinh ra bởi AI, tuy "không thể loại trừ khả năng một bản viết lại có AI hỗ trợ từ cùng đặc tả; một bản viết lại thủ công cũng khả dĩ không kém". Đây là cách diễn đạt thận trọng đáng ghi nhận, trong bối cảnh nhiều báo cáo hiện nay quy kết AI quá nhanh.


Phân Tích Kĩ Thuật

1. Hạ Tầng Phát Tán — Bốn Tầng Che Giấu

1.1. Repository GitHub giả mạo

Hai tài khoản được xác định:

Tài khoản Đặc điểm
github.com/LastPass-Authenticator Dùng logo, branding và mô tả sản phẩm LastPass thật; có nút "GET – LASTPASS AUTHENTICATOR" nổi bật; được tối ưu SEO có chủ đích để lên cao trong kết quả tìm kiếm
github.com/LastPass-S Ngôn ngữ nhồi SEO gần như y hệt, quảng bá một sản phẩm "macOS LastPass"; đã bị xóa trước khi điều tra kết thúc

Các nhà phân tích đánh giá "rất có thể cùng một actor vận hành nhiều tài khoản giả mạo".

Tại sao GitHub? Vì tên miền github.com tự nó là một tín hiệu tin cậy. Người dùng — kể cả người có kiến thức kỹ thuật — thường coi link GitHub là kênh phân phối chính thống của phần mềm. Đây chính là giả định bị khai thác.

1.2. Chuỗi chuyển hướng nhiều tầng

Kết quả tìm kiếm ("lastpass authenticator download")
   │
   ├─→ github.com/LastPass-Authenticator  (repo giả mạo, SEO cao)
   │
   ├─→ lastpass-authenticator.github.io   (cổng tải giả)
   │      └─ hiển thị badge tin cậy giả: "VirusTotal Approved",
   │         "Secure Archive", "Authorized Access"
   │
   ├─→ edgarcostartqd.github.io           (điểm trung chuyển ẨN)
   ├─→ dallikilic54.github.io             (điểm trung chuyển ẨN)
   │      └─ dùng file 404.html tùy biến chứa JavaScript
   │         chuyển hướng âm thầm
   │
   ├─→ istatlmenus.com/mandua.wonted      (bộ điều phối động, sau Cloudflare)
   │      └─ cấp địa chỉ server payload tại RUNTIME
   │
   └─→ albinofennel.com / hanselarinmusky.com   (server payload)
          └─ trả về file ZIP kèm mã theo dõi người dùng

Hai chi tiết đáng chú ý về thiết kế:

Thứ nhất — badge tin cậy giả. Trang tải giả hiển thị các nhãn "VirusTotal Approved" và "Secure Archive". Đây là social engineering nhắm chính xác vào người dùng có ý thức bảo mật — người biết VirusTotal là gì và sẽ yên tâm khi thấy nhãn đó. Người không biết VirusTotal thì badge này vô nghĩa; người biết thì bị lợi dụng chính kiến thức của mình.

Thứ hai — tầng điều phối động. Endpoint istatlmenus.com/mandua.wonted cấp địa chỉ server payload tại thời điểm chạy, cho phép luân chuyển hạ tầng mà không cần sửa trang lure. Khi một server payload bị chặn, operator chỉ cần cập nhật một chỗ; toàn bộ hệ thống repo và trang GitHub Pages vẫn nguyên vẹn và tiếp tục hoạt động.

Hai tên miền macperformancetools.com và zaffersnouty.com đóng vai trò chuyển hướng cuối, 302 về các trang vô hại (awwwards.com và threads.com) — làm nhiễu quá trình phân tích tự động.

1.3. Chiến thuật ZIP khổng lồ để vượt qua scanner

Tên file Kích thước
LastPass-Authenticator-download-1.66.2.zip 148 MB
lastpass-authenticator-2.78.7.zip 127,9 MB

Kích thước này không phải do nội dung. Archive được nhồi hai file rác chỉ để đệm dung lượng:

TitanStorage.dll   (chỉ là dữ liệu đệm)
ProManager.dll     (chỉ là dữ liệu đệm)

Mục đích: vượt qua giới hạn kích thước file của các công cụ quét tự động. Rất nhiều sandbox, gateway email và dịch vụ quét trực tuyến có ngưỡng dung lượng tối đa — file vượt ngưỡng thì được cho qua mà không quét, chứ không bị chặn. Đây là một dạng khai thác "fail-open" trong thiết kế phòng vệ.

Delphos ghi nhận kỹ thuật này trùng với nghiên cứu trước đó của họ về một mẫu stealer libpsl-5.dll nặng 55 MB mà phần lớn là dữ liệu rác.


2. Loader — DLL Side-Loading Qua Debugger Của Microsoft

Thành phần thực thi trong archive là vsdbg.exe — debugger thật của Microsoft, được đổi tên để trông như trình cài đặt LastPass. Windows tự động nạp file đồng hành vsdbg.dll từ cùng thư mục — đây là hành vi chuẩn của Windows, bị khai thác có chủ đích. File vsdbg.dll trong archive không phải thư viện của Microsoft mà là code của kẻ tấn công.

Thuộc tính loader Chi tiết
SHA-256 ea8c31a86fa785ab514022c278a2f6e571c86aac9283745a96605c44d88382d6
Runtime .NET NativeAOT — không phải Mono hay .NET tiêu chuẩn, nhằm chống dịch ngược IL
Nơi chứa payload Section .reloc, mã hóa bằng bảng Base16 tùy biến (byte 0x50–0x5F, tương ứng ký tự PQRSTUVWXYZ[\]^_)
Chuỗi môi trường build C:\ExploitTests\purosangue.tx (giải mã được từ mẫu)

Chuỗi purosangue chính là bằng chứng mạnh nhất liên kết mẫu này với gói PUROSANGUE của Cruciferra crypter — chi tiết ở phần attribution.

Về việc chọn NativeAOT: đây là một bước nâng cấp có ý thức. Proofpoint từng ghi nhận Cruciferra dùng runtime Mono; NativeAOT biên dịch thẳng ra native code, khiến các công cụ dịch ngược .NET thông thường (dnSpy, ILSpy) mất hiệu lực. Operator đang chủ động làm khó nhà phân tích, không chỉ làm khó AV.


3. Leo Thang Đặc Quyền — Ba Phương Thức

Loader thử lần lượt ba kỹ thuật leo thang, trong đó phương thức được nêu tên rõ là:

  1. UAC bypass qua COM Elevation Moniker — khai thác một tính năng sẵn có của Windows cho phép chương trình yêu cầu quyền cao hơn.

  2. và 3. Hai phương thức bổ sung, báo cáo gốc không nêu tên cụ thể, chỉ mô tả là các hướng khai thác "tính năng có sẵn của Windows".

Khi thành công, mã độc đạt quyền SYSTEM — cao hơn cả tài khoản administrator thông thường, và là điều kiện bắt buộc để cài đặt driver kernel ở bước tiếp theo.

Ghi chú về tính đầy đủ: Báo cáo gốc chỉ nêu tên một trong ba phương thức leo thang. Chúng tôi giữ nguyên mức chi tiết này thay vì suy đoán hai phương thức còn lại.


4. Alinubx.sys — Driver Kernel Là Trọng Tâm Của Cả Chiến Dịch

Đây là thành phần đáng phân tích nhất, vì nó cho thấy một mô hình tấn công không thể vá bằng bản cập nhật.

4.1. Nguồn gốc: một sản phẩm bảo mật hợp pháp bị đổi danh tính

Alinubx.sys không phải driver mới viết. Nó là bản đổi danh tính của CcProtect.sys — driver thuộc sản phẩm mã hóa đĩa và bảo vệ máy chủ CnCrypt của công ty Trung Quốc Henan Dafeng Software Co., Ltd. — một sản phẩm thương mại hợp pháp.

Trường thông tin CcProtect.sys (bản đã biết) Alinubx.sys
Product CnCrypt CnCrypt (giữ nguyên)
Version 1.32 1.32 (giữ nguyên)
Description CnCrypt Protect Driver Alinubx Driver (đã sửa)
Original filename CcProtect.sys Alinubx.sys (đã sửa)
Submitter Henan Dafeng Software Co., Ltd. Henan Dafeng Software Co., Ltd. (giữ nguyên)

Báo cáo gốc tóm gọn chính xác bản chất: "Chức năng vẫn nhận ra được, còn danh tính thì đổi vừa đủ để cơ chế phát hiện bỏ sót."

Đây là điểm cốt lõi cần hiểu đúng: kẻ tấn công không phá vỡ chữ ký của Microsoft, cũng không xâm nhập Henan Dafeng. Họ chỉ đổi vài trường metadata của một driver đã được Microsoft cấp chữ ký hợp lệ từ tháng 3/2023 — và chữ ký vẫn còn giá trị, vì chữ ký chứng thực file này đã qua quy trình chứng nhận tại thời điểm đó, không chứng thực rằng file này an toàn khi dùng vào mục đích khác.

Đáng chú ý hơn: mã proof-of-concept công khai đã tồn tại từ trước — repository CcProtect-Killer của BlackSnufkin trên GitHub đã tài liệu hóa đúng primitive kết thúc tiến trình này. Nghĩa là năng lực này không cần nghiên cứu gì mới; nó đã nằm sẵn trên internet.

4.2. Trạng thái phát hiện — bốn lớp tin cậy cùng thất bại

Lớp phòng vệ Trạng thái (20/08/2026)
VirusTotal 0/72 phát hiện — không đổi từ tháng 7/2025
Chữ ký số Hợp lệ — chuỗi Microsoft Windows Hardware Compatibility Publisher, timestamp tháng 3/2023
Microsoft vulnerable driver blocklist Không có mặt trong DriverPolicy_Enforced.xml
Danh tính nhà phát hành Tên công ty hợp pháp có thật

SHA-256: 611b3ba687b7f46319a19609605ddfe5225e6d85277d8e923eea3fdb6f7b5b61

4.3. Năng lực đang được kích hoạt

Kết thúc tiến trình bảo mật từ tầng kernel — cơ chế cụ thể:

Driver mở handle tới tiến trình đích với cờ truy cập KernelMode, qua đó:

  • Bỏ qua SeAccessCheck ở user-mode — kiểm tra quyền thông thường không được áp dụng

  • Vô hiệu hóa cơ chế Protected Process Light (PPL) mà không cần chạm vào bit trong cấu trúc EPROCESS

  • Kết thúc tiến trình bằng ZwTerminateProcess

Đây là điều đáng lo về mặt kiến trúc: PPL là cơ chế Windows dùng để bảo vệ chính các tiến trình EDR/AV khỏi bị kill. Một driver chạy ở kernel với handle KernelMode đứng ở tầng cao hơn tầng mà PPL bảo vệ — nên cơ chế này không còn ý nghĩa.

Giao diện điều khiển:

Device name:  \\.\Alinubx
IOCTL:        0x222024   (nhận danh sách PID đích)

Danh sách 145 tiến trình bảo mật: Hàm sub_1800eae00 cấp phát 0x91 = 145 phần tử, rồi điền vào bằng các chuỗi tên tiến trình EDR/AV đã giải mã. Danh sách bao phủ các bộ antivirus, nền tảng endpoint security và công cụ phân tích hành vi của các nhà cung cấp phòng vệ lớn.

Duy trì hiện diện:

  • Cài đặt như Windows service tên NvFsFilter, tự khởi động cùng hệ thống

  • Chạy vòng lặp liên tục, kiểm tra xem sản phẩm bảo mật nào đã khởi động lại để kill tiếp

  • File driver được đặt tên nvfsflt64.sys, giả dạng "NVIDIA File System Filter Driver"

Vòng lặp liên tục là chi tiết quan trọng với đội ứng cứu: khởi động lại dịch vụ AV không giải quyết được vấn đề — driver sẽ kill lại. Muốn xử lý phải loại bỏ driver trước, và việc này không làm được an toàn khi hệ thống đang chạy.

4.4. Năng lực có trong code nhưng CHƯA được cấu hình

Đây là phần đáng quan tâm về hướng phát triển tương lai. Driver đã chứa sẵn các năng lực sau, nhưng operator chưa kích hoạt:

Năng lực Điều kiện kích hoạt
Ẩn file và registry (rootkit) Cần file cấu hình \SystemRoot\Alinubx.ccf — operator không cung cấp
Chặn/can thiệp process, driver, DLL Cần cấu hình rule
Điều khiển mạng và chuyển hướng lưu lượng qua WFP Cần cấu hình rule
Inject DLL vào user-mode qua APC Thành phần ProtectR3.dll đã có mặt nhưng chưa triển khai
Heartbeat JSON qua HTTP POST Không có URL được cấu hình

Cách đọc đúng thông tin này: chiến dịch hiện tại chỉ dùng driver như một công cụ kill AV. Nhưng toàn bộ năng lực rootkit và AiTM đã nằm trong binary, chỉ chờ một file cấu hình. Điều đó có nghĩa: sự hiện diện của \SystemRoot\Alinubx.ccf trên một hệ thống là dấu hiệu của hoạt động rootkit rộng hơn, không chỉ là kill AV — và đây là một chỉ báo hunt rất đáng giá.


5. Rapuncel — Phạm Vi Đánh Cắp Dữ Liệu

SHA-256: aefbc6e04320e9a0e80f2323f8a897c4fdb222a37b0b87d76e850109decbfadd

Loại dữ liệu Chi tiết
Mật khẩu trình duyệt 19+ trình duyệt web
Ví tiền mã hóa File ví từ 30+ ứng dụng
Session Discord Token đăng nhập
Session Steam Token session — nếu Steam chưa chạy, stealer tự khởi động Steam rồi quét bộ nhớ để lấy credential
Session Telegram Dữ liệu session
Windows Credential Manager Mật khẩu mạng, dữ liệu Windows Hello
Tài liệu File có tên chứa từ khóa: password, seed, wallet, recovery
Ảnh chụp màn hình Từ tất cả các màn hình đang kết nối
Thông tin hệ thống Profile chi tiết

Cách thức exfiltration:

  • Nén toàn bộ thành archive ZIP

  • Upload lên 2.26.126.50 qua raw TCP có định dạng HTTP POST (POST /upload)

  • Thử lại 3 lần, giãn cách 2 giây nếu thất bại

Duy trì hiện diện: cài như Windows service tự khởi động, chạy vòng lặp liên tục re-run thành phần stealer.

Chi tiết về Steam đáng được nhấn mạnh: việc tự khởi động Steam nếu nó đang tắt, rồi quét bộ nhớ tiến trình cho thấy mức độ chủ động cao. Stealer không chỉ đọc file có sẵn — nó tạo ra điều kiện để lấy dữ liệu.


6. Vượt Qua App-Bound Encryption Của Chrome

Google giới thiệu app-bound encryption năm 2024 với mục đích cụ thể là ngăn chính loại tấn công này — buộc việc giải mã mật khẩu lưu trong Chrome phải đến từ chính tiến trình Chrome.

Cách Rapuncel vượt qua:

Mã độc inject một đoạn code nhỏ trực tiếp vào tiến trình trình duyệt. Đoạn code này mạo danh chính trình duyệt và gọi dịch vụ giải mã mật khẩu của Chrome từ bên trong Chrome — cơ chế bảo vệ bị vô hiệu vì yêu cầu giải mã trông như đến từ nguồn hợp lệ.

Thuộc tính DLL trợ giúp Chi tiết
SHA-256 75018b06c7105a1dca391805d17b402aed35ebd515b92d461236eafbd606cb40
Kỹ thuật Reflective injection vào tiến trình Chrome/Edge
Hàm được gọi Method DecryptData của Elevation Service
Kích thước 136 KB (so với 1,35 MB của DLL tương ứng trong BoryptGrab)

Một artifact pháp y hữu ích: quá trình này để lại file %TEMP%\browser_decryption.log.

Nhận xét về app-bound encryption: cơ chế này vẫn có giá trị — nó buộc kẻ tấn công phải leo thang từ "đọc file" lên "inject vào tiến trình", một bước khó hơn và dễ bị EDR phát hiện hơn nhiều. Vấn đề là ở chiến dịch này, EDR đã bị driver kernel kill trước đó. Đây là ví dụ rõ về cách các lớp phòng vệ phụ thuộc lẫn nhau: khi lớp dưới sụp, lớp trên mất hiệu lực dù bản thân nó không có lỗi.


7. Attribution — Hai Liên Kết Ở Hai Mức Tin Cậy

7.1. Cruciferra crypter (gói PUROSANGUE) — độ tin cậy CAO

Delphos đánh giá với độ tin cậy cao rằng mẫu vsdbg.dll được sinh ra bởi gói PUROSANGUE của Cruciferra hoặc một biến thể gần:

Bằng chứng Mức độ đặc trưng
Payload chứa trong section .reloc Kỹ thuật đặc trưng
Bảng Base16 tùy biến PQRSTUVWXYZ[\]^_ Rất đặc trưng
Chuỗi môi trường build C:\ExploitTests\purosangue.tx Bằng chứng mạnh nhất
Tập tính năng khớp: DLL side-loading, UAC bypass, persistence, BYOVD Khớp kiến trúc
eSentire đã tài liệu hóa PUROSANGUE sinh ra đúng 145 mục tiêu AV/EDR mặc định Khớp chính xác con số
Runtime NativeAOT Bản nâng cấp so với Mono mà Proofpoint từng ghi nhận

Con số 145 là chi tiết đáng chú ý nhất: nó không phải kết quả nghiên cứu riêng của actor này, mà là danh sách mặc định của một công cụ thương mại có trả phí. Nghĩa là bất kỳ khách hàng nào của Cruciferra đều có năng lực kill 145 sản phẩm bảo mật — rào cản kỹ thuật ở đây đã bị thương mại hóa về gần bằng không.

7.2. BoryptGrab — độ tin cậy TRUNG BÌNH

Delphos đánh giá Rapuncel là biến thể hoặc nhánh cùng họ với BoryptGrab (Trend Micro tài liệu hóa tháng 3/2026), ở mức tin cậy trung bình — "không phải mẫu khớp xác nhận với bất kỳ mẫu nào Trend Micro đã công bố, nhưng mức trùng lặp về hành vi và artifact đủ để đặt nó trong hệ sinh thái BoryptGrab".

Điểm trùng lặp:

  • Cùng một thương hiệu lure: passathook-cs2 xuất hiện trong cả hai cuộc điều tra

  • Kiến trúc phát tán: repo GitHub tối ưu SEO → cổng .github.io

  • Mô hình URL trung gian động

  • Artifact thu thập: UserInformation.txt có trường BUILD NAME, installed_applications.txt, thư mục Filegraber viết sai chính tả (một chỉ dấu rất đặc trưng)

  • Cùng bộ mục tiêu: Telegram, Discord, Steam, ví crypto, credential trình duyệt

  • Cùng cách vượt app-bound encryption qua DLL trợ giúp riêng

  • Cùng chiến thuật nhồi dung lượng ZIP

Điểm khác biệt:

  • Payload không giống nhau ở mức byte; build name khác nhau (Rapuncel vs. CryptoByte/Shrek/Sonic/Yaropolk)

  • DLL trợ giúp trình duyệt khác cách hiện thực (136 KB vs. 1,35 MB, khác cách mã hóa và export)

  • Hạ tầng C2 riêng biệt (2.26.126.50 vs. các server Trend Micro ghi nhận)

  • Rapuncel triển khai driver kernel; BoryptGrab được tài liệu hóa với backdoor reverse SSH (TunnesshClient) và downloader viết bằng Golang (HeaconLoad)

  • Rapuncel dùng bộ JavaScript window.__PM__ để tự động sinh trang lure cho 40+ thương hiệu; BoryptGrab không có mức tự động hóa này


Tóm Tắt Rủi Ro

Chiều rủi ro Mức độ Lý do
Khả năng vô hiệu hóa phòng vệ Nghiêm trọng Kill 145 sản phẩm bảo mật từ tầng kernel, vượt cả Protected Process Light; chạy vòng lặp liên tục nên khởi động lại AV không có tác dụng
Khả năng bị phát hiện trước Rất thấp 0/72 VirusTotal trong hơn một năm; chữ ký Microsoft hợp lệ; không có trong blocklist
Mức độ mất mát dữ liệu nếu nhiễm Nghiêm trọng Toàn bộ mật khẩu trình duyệt, ví crypto, session, Credential Manager, dữ liệu Windows Hello — đều bị lấy trước khi AV bị kill
Độ khó khắc phục Cao Driver hoạt động dưới tầng công cụ user-mode; không thể loại bỏ an toàn khi hệ thống đang chạy — cần Safe Mode hoặc công cụ khôi phục ngoài
Khả năng mở rộng của chiến dịch Cao Mô hình MaaS, 40+ thương hiệu bị giả mạo, tự động sinh lure, tầng điều phối cho phép luân chuyển hạ tầng không cần sửa lure
Tiềm năng leo thang năng lực Cao Rootkit, APC injection, chuyển hướng lưu lượng WFP đã có trong code, chỉ chờ file cấu hình
Rủi ro khi vá Không áp dụng Không có bản vá nào để chờ — đây là driver hợp pháp bị lạm dụng, không phải lỗ hổng

Lưu ý về một hàng đặc biệt trong bảng trên: "Rủi ro khi vá: Không áp dụng" không phải điểm tốt — nó có nghĩa không có hành động nào từ phía nhà cung cấp có thể chấm dứt rủi ro này. Biện pháp duy nhất là chặn driver (qua Microsoft blocklist hoặc WDAC policy nội bộ) và giám sát hành vi.


IOC & Artifacts

File Hashes (SHA-256)

Thành phần Hash
vsdbg.dll (loader .NET NativeAOT) ea8c31a86fa785ab514022c278a2f6e571c86aac9283745a96605c44d88382d6
Rapuncel stealer aefbc6e04320e9a0e80f2323f8a897c4fdb222a37b0b87d76e850109decbfadd
Alinubx.sys (driver kernel) 611b3ba687b7f46319a19609605ddfe5225e6d85277d8e923eea3fdb6f7b5b61
DLL inject trình duyệt 75018b06c7105a1dca391805d17b402aed35ebd515b92d461236eafbd606cb40
ProtectR3.dll x64 (đã giải nén) 26db14b956e33f69b3397a36387d32e01eb63613acff91069dc76b6ed7de45a8
CcProtect.sys v1.32 (mẫu đối chiếu) 5f0cfe8357bb52b45068ddbac053e32bc38e6cb5e086746f5402657b0a5cfb1c

Tên Miền

Tên miền Vai trò
albinofennel.com Server payload MaaS chính — phục vụ 40+ trang lure thương hiệu
hanselarinmusky.com Server payload phụ
icansamyope.com Server payload thứ ba
istatlmenus.com Tầng điều phối C2 (sau Cloudflare), endpoint /mandua.wonted
macperformancetools.com Chuyển hướng cuối (302 về trang vô hại)
zaffersnouty.com Chuyển hướng cuối (302 về trang vô hại)
ryanpresbrey.cc Cụm favicon (quan hệ chưa xác định)
lastpass-authenticator.github.io Cổng tải giả
edgarcostartqd.github.io Điểm trung chuyển ẩn (404.html chứa JS)
dallikilic54.github.io Điểm trung chuyển ẩn (404.html chứa JS)
github.com/LastPass-Authenticator Repo giả mạo chính
github.com/LastPass-S Repo giả mạo phụ (đã bị xóa)

Địa Chỉ IP

IP Vai trò
2.26.126.50 Endpoint exfiltration của Rapuncel (raw TCP, POST /upload)
104.21.27.38 Cloudflare proxy cho albinofennel.com
172.67.168.224 Cloudflare proxy cho albinofennel.com
172.67.212.253 Cloudflare proxy cho istatlmenus.com
104.21.20.224 Cloudflare proxy cho macperformancetools.com
104.21.18.89 Cloudflare proxy cho zaffersnouty.com

Đường Dẫn File

C:\Windows\System32\drivers\nvfsflt64.sys   ← driver được cài đặt (giả dạng NVIDIA)
%TEMP%\browser_decryption.log               ← artifact giải mã mật khẩu trình duyệt
%TEMP%\sends.log                            ← xác nhận exfiltration
\SystemRoot\Alinubx.ccf                     ← ⚠ cấu hình rootkit: nếu TỒN TẠI,
                                              nghĩa là năng lực rootkit đã được kích hoạt,
                                              không chỉ kill AV

Tên Service & Device

NvFsFilter      ← tên Windows service (giả dạng thành phần NVIDIA)
\\.\Alinubx     ← device IOCTL của driver
IOCTL 0x222024  ← lệnh nhận PID cần kết thúc

Registry

HKEY_CURRENT_USER\Software\Google\Chrome\PreferenceMACs\Default\extensions.settings
   → bị XÓA (phá integrity của extension Chrome)
   → được xác nhận ở CẢ HAI đích chuyển hướng cuối, cho thấy đây là năng lực có chủ đích

Chỉ Báo Pivot Bổ Sung

Publisher (Authenticode OpusInfo programName):  Henan Dafeng Software Co., Ltd.
Favicon dhash:   3761dd64e0d46913
Body SHA-256:    1e6c1766ac78d7adfdae71d361cb132d972771897ae9065503b135cb812d7c35
                 (JavaScript chuyển hướng tại istatlmenus.com/mandua.wonted,
                  xác nhận còn hoạt động ngày 10/09/2026)

MITRE ATT&CK Mapping

Đã xác nhận hoạt động trong chiến dịch này

Tactic ID Technique Biểu hiện
Defense Evasion / Persistence T1574.002 Hijack Execution Flow: DLL Side-Loading vsdbg.exe (Microsoft) nạp vsdbg.dll độc hại
Defense Evasion T1553.002 Subvert Trust Controls: Code Signing Driver có chữ ký Microsoft WHCP hợp lệ từ 3/2023
Defense Evasion T1562.001 Impair Defenses: Disable or Modify Tools 145 tiến trình AV/EDR bị kill từ kernel
Defense Evasion T1036.005 Masquerading: Match Legitimate Name or Location nvfsflt64.sys / service NvFsFilter giả dạng NVIDIA
Privilege Escalation T1548.002 Abuse Elevation Control Mechanism: Bypass UAC COM Elevation Moniker + hai phương thức khác
Persistence T1543.003 Create or Modify System Process: Windows Service Service tự khởi động cho cả driver và stealer
Execution T1055.012 Process Injection: Process Hollowing —
Credential Access T1555.003 Credentials from Web Browsers 19+ trình duyệt; vượt app-bound encryption
Credential Access T1539 Steal Web Session Cookie Session Discord, Steam, Telegram
Collection T1113 Screen Capture Ảnh chụp tất cả màn hình
Collection T1005 Data from Local System File chứa password, seed, wallet, recovery
Exfiltration T1041 Exfiltration Over C2 Channel ZIP → 2.26.126.50 qua raw TCP POST

Có trong code nhưng CHƯA được cấu hình

Tactic ID Technique Điều kiện kích hoạt
Defense Evasion T1014 Rootkit Cần file \SystemRoot\Alinubx.ccf
Execution T1055.004 Process Injection: Asynchronous Procedure Call Cần triển khai ProtectR3.dll
Collection / C2 T1557 Adversary-in-the-Middle Cần cấu hình chuyển hướng WFP

Nhận Định Chuyên Gia

Bài học lớn nhất từ chiến dịch này là về bản chất của "tín hiệu tin cậy". Báo cáo gốc chỉ ra rất rõ: chiến dịch khai thác bốn giả định độc lập, và cả bốn đều thất bại:

  1. Thương hiệu quen trên GitHub = kênh chính thống → repo giả mạo, tối ưu SEO

  2. Chữ ký Microsoft = driver đã được thẩm định → chữ ký hợp lệ nhưng cho một sản phẩm hoàn toàn khác mục đích

  3. VirusTotal sạch = file an toàn → 0/72 suốt hơn một năm

  4. Có trong blocklist = được bảo vệ → driver không nằm trong blocklist

Điều đáng suy nghĩ là cả bốn giả định này đều hợp lý trong hầu hết trường hợp. Chúng không phải kiến thức sai — chúng là heuristic có xác suất đúng cao, và chính vì thế mới đáng để tấn công. Kẻ tấn công không phá vỡ cơ chế nào; họ tìm đúng khoảng trống giữa những gì một tín hiệu thực sự chứng thực và những gì người dùng hiểu rằng nó chứng thực. Chữ ký Microsoft chứng thực rằng file này từng qua quy trình chứng nhận — nó không bao giờ chứng thực file này an toàn trong mọi ngữ cảnh sử dụng.

Về DLL side-loading: đây là lần thứ tư trong loạt bài này. SLEEPWALKER (qua ESET), MoiClient (qua SumatraPDF), BambooToken (qua Tendyron OnKey), và giờ là Rapuncel (qua vsdbg.exe của chính Microsoft). Bốn chiến dịch độc lập, bốn nhà cung cấp khác nhau, cùng một cơ chế nền tảng: thứ tự tìm kiếm DLL của Windows. Mức độ lặp lại này khẳng định điều đã nêu ở các bài trước — đây không phải lỗi của bất kỳ vendor nào, mà là một bề mặt tấn công có tính hệ thống của nền tảng. Đội bảo mật nên coi "giám sát việc nạp DLL từ thư mục ứng dụng của phần mềm bên thứ ba" là một kiểm soát thường trực, không phải phản ứng với từng vụ việc.

Về BYOVD: rào cản kỹ thuật đã bị thương mại hóa. Chi tiết đáng lo nhất trong toàn bộ báo cáo, theo chúng tôi, không phải năng lực của driver — mà là việc con số 145 là danh sách mặc định của một crypter có trả phí. Điều này có nghĩa: không cần trình độ nghiên cứu kernel để có năng lực kill 145 sản phẩm bảo mật — chỉ cần mua công cụ. Cộng với việc mã proof-of-concept cho CcProtect.sys đã công khai trên GitHub từ trước, có thể thấy toàn bộ chuỗi năng lực này đã được hàng hóa hóa. BYOVD từng là kỹ thuật của nhóm có tài nguyên; giờ nó là một tính năng trong sản phẩm.

Về mô hình phòng vệ theo lớp — một quan sát ít được nói tới. App-bound encryption của Chrome là một cơ chế được thiết kế tốt và vẫn có giá trị: nó buộc kẻ tấn công phải chuyển từ "đọc file" sang "inject vào tiến trình", một hành vi ồn ào hơn nhiều và dễ bị EDR bắt. Nhưng trong chiến dịch này nó vô hiệu, không phải vì bản thân nó có lỗi, mà vì EDR đã bị kill trước đó. Đây là minh họa rõ nhất về một điều đội bảo mật cần cân nhắc khi thiết kế kiến trúc: nhiều lớp phòng vệ tưởng là độc lập nhưng thực ra phụ thuộc vào một lớp chung phía dưới. Khi năng lực kill EDR ở tầng kernel trở nên phổ biến như hiện nay, những phụ thuộc ẩn này cần được rà soát lại.

Về phần dead code — đọc như một dự báo. Việc rootkit, APC injection và chuyển hướng lưu lượng WFP đã có trong binary nhưng chưa được cấu hình cho thấy operator đang giữ năng lực trong túi. Chiến dịch hiện tại chỉ cần kill AV để stealer làm việc; nhưng cùng một driver, chỉ thêm một file .ccf, sẽ trở thành rootkit đầy đủ. Đây cũng là lý do chỉ báo \SystemRoot\Alinubx.ccf đáng được ưu tiên cao trong hunt: sự hiện diện của nó phân biệt "một vụ nhiễm stealer" với "một hệ thống đã bị rootkit hóa" — hai mức độ nghiêm trọng khác nhau hẳn.

Với Việt Nam, cần nói rõ trước: báo cáo gốc không công bố dữ liệu nạn nhân theo quốc gia, nên không có xác nhận nào về nạn nhân tại Việt Nam. Tuy vậy, có ba đặc điểm của bối cảnh trong nước khiến mô hình tấn công này đáng được chú ý hơn mức trung bình:

Thứ nhất — thói quen tải phần mềm từ kết quả tìm kiếm. Chiến dịch này hoàn toàn dựa vào SEO: nạn nhân tự tìm đến, không cần email phishing hay khai thác lỗ hổng nào. Với thói quen phổ biến là gõ tên phần mềm vào Google rồi tải từ kết quả đầu tiên trông hợp lý, mô hình này có tỉ lệ thành công cao. Đáng lưu ý hơn: vì lure được giả mạo hơn 40 thương hiệu, không thể phòng ngừa bằng cách "cẩn thận với LastPass" — cần một nguyên tắc chung là tải phần mềm chỉ từ tên miền chính thức của nhà phát triển.

Thứ hai — tỉ lệ sở hữu ví tiền mã hóa. Việt Nam nhiều năm liền nằm trong nhóm dẫn đầu thế giới về tỉ lệ người dân sở hữu tài sản mã hóa. Rapuncel nhắm ví từ 30+ ứng dụng và file có tên chứa seed, wallet, recovery — nghĩa là cả seed phrase lưu dưới dạng file văn bản, một thói quen còn phổ biến. Tổn thất trong trường hợp này là không thể đảo ngược: khác với mật khẩu có thể đổi, ví crypto bị lấy seed phrase là mất vĩnh viễn.

Thứ ba — nhận diện thương hiệu bảo mật còn hạn chế. Người dùng ở Việt Nam thường ít quen với các thương hiệu quản lý mật khẩu quốc tế, nên khó phân biệt trang chính thức với trang giả mạo bằng trực giác. Trong khi đó, cái bẫy "badge VirusTotal Approved" lại nhắm chính xác vào nhóm người dùng có ý thức bảo mật một phần — biết VirusTotal là gì nhưng chưa biết rằng nhãn đó có thể bị làm giả tùy ý trên một trang web bất kỳ.

Một khuyến nghị bổ sung cho các tổ chức tại Việt Nam: vì driver này không nằm trong blocklist của Microsoft tại thời điểm công bố, biện pháp chủ động nhất là tự chặn ở cấp tổ chức — thêm hash 611b3ba6... và các chỉ báo Henan Dafeng / CnCrypt vào WDAC hoặc App Control policy nội bộ, thay vì chờ Microsoft cập nhật. Đây là bước làm được ngay, không phụ thuộc vào bất kỳ nhà cung cấp nào.


Khuyến Nghị

Với hệ thống nghi đã nhiễm — xử lý khẩn cấp

  1. Coi toàn bộ credential là đã bị lộ. Mật khẩu trình duyệt, ví tiền mã hóa, session Discord/Steam/Telegram và nội dung Windows Credential Manager đã bị thu thập TRƯỚC KHI antivirus bị kill — nên việc AV vẫn đang chạy bình thường không có nghĩa là an toàn.

  2. Đổi mật khẩu từ một máy sạch khác. Tuyệt đối không đổi trên chính máy bị ảnh hưởng — keylogger và stealer có thể vẫn đang hoạt động.

  3. Ưu tiên cao nhất cho ví tiền mã hóa: chuyển tài sản sang ví mới với seed phrase mới. Seed phrase đã bị đọc thì không thể "đổi mật khẩu" được.

  4. Thu hồi session, không chỉ đổi mật khẩu. Token Discord/Steam/Telegram đã bị lấy vẫn dùng được sau khi đổi mật khẩu — cần đăng xuất toàn bộ thiết bị.

  5. Rà soát hoạt động của vault quản lý mật khẩu để tìm truy cập hoặc thay đổi bất thường.

  6. Cần forensics ở tầng kernel. Alinubx.sys hoạt động dưới tầng các công cụ user-mode; tiện ích Windows thông thường không thể loại bỏ nó an toàn khi hệ thống đang chạy. Phải boot vào Safe Mode hoặc dùng công cụ khôi phục ngoài. Trong môi trường doanh nghiệp, cách an toàn nhất là cài lại hệ điều hành.

Chặn và kiểm soát — ngắn hạn

  1. Thêm hash driver vào WDAC / App Control policy nội bộ — không chờ Microsoft cập nhật blocklist:

    611b3ba687b7f46319a19609605ddfe5225e6d85277d8e923eea3fdb6f7b5b61   (Alinubx.sys)
    5f0cfe8357bb52b45068ddbac053e32bc38e6cb5e086746f5402657b0a5cfb1c   (CcProtect.sys)
    
  2. Chặn theo danh tính nhà phát hành: từ chối driver có Authenticode programName chứa "Henan Dafeng" hoặc version resource tham chiếu "CnCrypt", nếu tổ chức không sử dụng sản phẩm này.

  3. Bật Microsoft vulnerable driver blocklist (DriverPolicy_Enforced.xml) nếu chưa bật — dù driver này chưa có trong đó, blocklist vẫn chặn được hàng trăm driver BYOVD khác.

  4. Chặn tên miền tại DNS/proxy: albinofennel.com, hanselarinmusky.com, icansamyope.com, istatlmenus.com, macperformancetools.com, zaffersnouty.com.

  5. Với IP 2.26.126.50: không chặn máy móc. Theo khuyến nghị của Delphos, dùng như ngữ cảnh hạ tầng chia sẻ và chỉ hành động khi có thêm dấu hiệu về khung request (POST /upload qua raw TCP kèm ZIP).

Hunting — theo hành vi, không theo hash

Đây là phần quan trọng nhất, vì báo cáo gốc nhấn mạnh: khi chỉ báo bị phát hiện, operator sẽ triển khai hạ tầng mới, biên dịch lại với chữ ký mới và đổi tên file driver lần nữa (như đã làm từ CcProtect.sys sang Alinubx.sys). Chỉ báo bền là hành vi.

Truy tìm driver:

□ Driver có Authenticode programName chứa "Henan Dafeng"
□ Version resource tham chiếu "CnCrypt"
□ OriginalFilename hoặc chuỗi khớp: CcProtect.sys, Alinubx.sys, Alinubx,
  ProtectR3.dll, \\.\Alinubx
□ Tạo service tên "NvFsFilter"
□ Ghi file vào C:\Windows\System32\drivers\nvfsflt64.sys
□ Driver được nạp, ngay sau đó có tiến trình bảo mật bị kết thúc từ kernel
□ ⚠ Tồn tại \SystemRoot\Alinubx.ccf  → dấu hiệu rootkit đã kích hoạt,
  không chỉ kill AV. Nâng mức độ ưu tiên xử lý.

Nhận diện loader (rất hữu ích và khó bị lẩn tránh):

□ File PE có section .reloc thô LỚN HƠN ĐÁNG KỂ so với kích thước khai báo
  trong IMAGE_DIRECTORY_ENTRY_BASERELOC
□ Vùng dư đó chứa mật độ cao các byte trong khoảng 0x50–0x5F
  (chính là payload đã mã hóa Base16 tùy biến)
□ vsdbg.exe sinh ra tiến trình con KHÔNG thuộc Microsoft
□ Nạp DLL đồng hành từ thư mục ứng dụng (DLL side-loading tổng quát)

Chỉ báo .reloc phình to đáng chú ý vì nó bắt được kỹ thuật của crypter, không phải mẫu cụ thể — nghĩa là nó vẫn hiệu lực với các payload khác do cùng Cruciferra sinh ra, kể cả những mẫu chưa từng được thấy.

Artifact trên endpoint:

□ %TEMP%\browser_decryption.log
□ %TEMP%\sends.log
□ Xóa khóa registry:
  HKCU\Software\Google\Chrome\PreferenceMACs\Default\extensions.settings

Lưu lượng mạng:

□ Upload ZIP dạng "POST /upload HTTP/1.1" qua raw TCP
□ Tải file ZIP dung lượng rất lớn (>100 MB) mang tên phần mềm phổ biến
□ Truy cập tới *.github.io ngay sau khi rời khỏi một trang github.com
  (mô hình chuỗi chuyển hướng)

Kiểm soát dài hạn

  1. Chính sách tải phần mềm rõ ràng cho toàn tổ chức: phần mềm chỉ được tải từ tên miền chính thức của nhà phát triển, không từ kết quả tìm kiếm, không từ GitHub trừ khi đó là tổ chức GitHub đã được xác minh của chính nhà phát triển. Đây là kiểm soát hiệu quả nhất với chiến dịch này, vì nó chặn ở bước đầu tiên và hiệu lực với cả 40+ thương hiệu bị giả mạo, không chỉ LastPass.

  2. Rà soát giới hạn kích thước của các công cụ quét. Nếu sandbox hoặc gateway của tổ chức cho qua file vượt ngưỡng dung lượng thay vì chặn, đó là một thiết kế fail-open đang bị khai thác trực tiếp bởi chiến dịch này. Cân nhắc đổi thành chặn hoặc cách ly file vượt ngưỡng thay vì cho qua.

  3. Giám sát việc nạp DLL từ thư mục ứng dụng với mọi phần mềm bên thứ ba chạy quyền cao — kiểm soát này có giá trị vượt xa một chiến dịch, như bốn vụ việc đã dẫn trong phần nhận định cho thấy.

  4. Không phụ thuộc hoàn toàn vào phát hiện theo chữ ký. Báo cáo gốc nói thẳng: "một chữ ký chỉ đặt ra câu hỏi liệu file này có khớp với thứ gì đã được phát hiện là độc hại hay chưa" — driver này đạt 0/72 suốt hơn một năm. Cần bổ sung phát hiện dựa trên hành vi và, với tổ chức có năng lực, phân tích binary trực tiếp.

  5. Chuyển dần sang phương thức xác thực không thể bị stealer lấy lại. Mật khẩu và session token đều bị đánh cắp được; passkey và khóa bảo mật vật lý (FIDO2) thì không — chúng không tồn tại dưới dạng dữ liệu có thể copy khỏi máy.

  6. Không lưu seed phrase ví tiền mã hóa dưới dạng file trên máy tính. Rapuncel tìm chính xác các file có tên chứa seed, wallet, recovery. Seed phrase nên được lưu offline, ngoài hệ thống máy tính.


Tham Khảo

More from this blog