Nguyễn Tiến Đạt
Intern Writer
Các nhóm tấn công liên quan đến Triều Tiên được cho là đang khai thác lỗ hổng nghiêm trọng React2Shell trong React Server Components (RSC) để triển khai EtherRAT, một loại malware truy cập từ xa chưa từng được ghi nhận. Theo Sysdig, EtherRAT sử dụng hợp đồng thông minh Ethereum để giải quyết vấn đề điều khiển và kiểm soát (C2), sở hữu năm cơ chế duy trì độc lập trên Linux và tự tải môi trường Node.js từ nodejs.org.
Hoạt động này có nhiều điểm trùng lặp với chiến dịch dài hạn Contagious Interview, vốn dựa trên kỹ thuật EtherHiding để phát tán malware từ tháng 2/2025. Chiến dịch này chủ yếu nhắm vào lập trình viên blockchain và Web3 thông qua các cuộc phỏng vấn xin việc giả trên LinkedIn, Upwork hoặc Fiverr, nơi kẻ tấn công giả danh nhà tuyển dụng để gửi bài kiểm tra và phát tán mã độc. Theo công ty bảo mật phần mềm chuỗi cung ứng Socket, đây là một trong những chiến dịch khai thác hệ sinh thái npm hiệu quả nhất hiện nay.
Nhiệm vụ chính của dropper là giải mã payload EtherRAT bằng khóa được nhúng và khởi chạy bằng tệp Node.js đã tải xuống. EtherRAT sử dụng EtherHiding để truy xuất URL C2 từ hợp đồng thông minh Ethereum mỗi 5 phút, cho phép thay đổi máy chủ linh hoạt khi URL bị gỡ xuống.
Điểm độc đáo nằm ở cơ chế đồng thuận chín điểm cuối RPC công khai của Ethereum. EtherRAT gửi truy vấn song song và chọn URL được trả về bởi số đông, giúp tránh việc bị chuyển hướng bởi một RPC độc hại hoặc bị các nhà nghiên cứu phá vỡ quá trình phân giải C2 bằng các nút giả mạo.
Cách tiếp cận này từng được quan sát trong hai gói npm colortoolsv2 và mimelib2, vốn tải xuống các thành phần độc hại vào máy của nhà phát triển.
Sau khi liên lạc với máy chủ C2, EtherRAT thực thi vòng lặp thăm dò mỗi 500 ms, coi các phản hồi có độ dài lớn hơn 10 ký tự là mã JavaScript để chạy trên máy nạn nhân. Nó duy trì sự hiện diện bằng năm cơ chế độc lập:
Ngoài EtherHiding, EtherRAT cũng chia sẻ mẫu dropper mã hóa với malware BeaverTail, củng cố mối liên hệ với chiến dịch Contagious Interview.
Trên Linux, tập lệnh đầu tiên tải và chạy "vscode-bootstrap.sh", rồi tải thêm "package.json" và "env-setup.js". Tệp thứ hai đóng vai trò môi trường khởi chạy cho BeaverTail và InvisibleFerret.
OpenSourceMalware phát hiện 13 phiên bản chiến dịch này, rải rác qua 27 tài khoản GitHub, cùng 11 phiên bản BeaverTail. Kho lưu trữ sớm nhất xuất hiện ngày 22/4/2025 và phiên bản mới nhất ngày 1/12/2025. Nhóm cho biết các tác nhân Triều Tiên đã chuyển sang sử dụng Vercel gần như hoàn toàn, không còn dùng Fly.io, Platform.sh hay Render.
Sysdig đánh giá EtherRAT đại diện cho bước tiến lớn trong việc khai thác React2Shell, vượt xa mục tiêu khai thác tiền mã hóa, hướng đến truy cập bí mật và lâu dài, gây ra thách thức lớn cho các hệ thống phòng thủ truyền thống.(thehackernews)
Hoạt động này có nhiều điểm trùng lặp với chiến dịch dài hạn Contagious Interview, vốn dựa trên kỹ thuật EtherHiding để phát tán malware từ tháng 2/2025. Chiến dịch này chủ yếu nhắm vào lập trình viên blockchain và Web3 thông qua các cuộc phỏng vấn xin việc giả trên LinkedIn, Upwork hoặc Fiverr, nơi kẻ tấn công giả danh nhà tuyển dụng để gửi bài kiểm tra và phát tán mã độc. Theo công ty bảo mật phần mềm chuỗi cung ứng Socket, đây là một trong những chiến dịch khai thác hệ sinh thái npm hiệu quả nhất hiện nay.
Cách khai thác React2Shell và triển khai EtherRAT
Chuỗi tấn công bắt đầu bằng việc lợi dụng lỗ hổng CVE-2025-55182 (điểm CVSS 10.0) để thực thi lệnh shell được mã hóa Base64 nhằm tải và chạy một tập lệnh shell triển khai mã độc JavaScript chính. Tập lệnh này được lấy qua curl, với wget và python3 làm phương án dự phòng. Nó chuẩn bị môi trường bằng cách tải Node.js v20.10.0, sau đó ghi vào ổ đĩa một blob mã hóa cùng trình dropper JavaScript bị làm tối nghĩa. Khi hoàn tất, nó xóa chính nó để hạn chế dấu vết và chạy dropper.Nhiệm vụ chính của dropper là giải mã payload EtherRAT bằng khóa được nhúng và khởi chạy bằng tệp Node.js đã tải xuống. EtherRAT sử dụng EtherHiding để truy xuất URL C2 từ hợp đồng thông minh Ethereum mỗi 5 phút, cho phép thay đổi máy chủ linh hoạt khi URL bị gỡ xuống.
Điểm độc đáo nằm ở cơ chế đồng thuận chín điểm cuối RPC công khai của Ethereum. EtherRAT gửi truy vấn song song và chọn URL được trả về bởi số đông, giúp tránh việc bị chuyển hướng bởi một RPC độc hại hoặc bị các nhà nghiên cứu phá vỡ quá trình phân giải C2 bằng các nút giả mạo.
Cách tiếp cận này từng được quan sát trong hai gói npm colortoolsv2 và mimelib2, vốn tải xuống các thành phần độc hại vào máy của nhà phát triển.
Sau khi liên lạc với máy chủ C2, EtherRAT thực thi vòng lặp thăm dò mỗi 500 ms, coi các phản hồi có độ dài lớn hơn 10 ký tự là mã JavaScript để chạy trên máy nạn nhân. Nó duy trì sự hiện diện bằng năm cơ chế độc lập:
- Dịch vụ systemd
- Mục khởi động XDG
- Cron job
- Tiêm vào .bashrc
- Tiêm vào profile
Ngoài EtherHiding, EtherRAT cũng chia sẻ mẫu dropper mã hóa với malware BeaverTail, củng cố mối liên hệ với chiến dịch Contagious Interview.
Contagious Interview chuyển hướng sang VS Code
Trong khi đó, OpenSourceMalware ghi nhận một biến thể mới của Contagious Interview, trong đó nạn nhân bị yêu cầu tải một kho GitHub, GitLab hoặc Bitbucket độc hại như một bài kiểm tra lập trình và mở trong VS Code. Khi dự án được mở, tệp tasks.json tự động thực thi nhờ cấu hình runOptions.runOn: 'folderOpen'. Tệp này tải về tập lệnh dropper thông qua curl hoặc wget.Trên Linux, tập lệnh đầu tiên tải và chạy "vscode-bootstrap.sh", rồi tải thêm "package.json" và "env-setup.js". Tệp thứ hai đóng vai trò môi trường khởi chạy cho BeaverTail và InvisibleFerret.
OpenSourceMalware phát hiện 13 phiên bản chiến dịch này, rải rác qua 27 tài khoản GitHub, cùng 11 phiên bản BeaverTail. Kho lưu trữ sớm nhất xuất hiện ngày 22/4/2025 và phiên bản mới nhất ngày 1/12/2025. Nhóm cho biết các tác nhân Triều Tiên đã chuyển sang sử dụng Vercel gần như hoàn toàn, không còn dùng Fly.io, Platform.sh hay Render.
Sysdig đánh giá EtherRAT đại diện cho bước tiến lớn trong việc khai thác React2Shell, vượt xa mục tiêu khai thác tiền mã hóa, hướng đến truy cập bí mật và lâu dài, gây ra thách thức lớn cho các hệ thống phòng thủ truyền thống.(thehackernews)
Được phối hợp thực hiện bởi các chuyên gia của Bkav,
cộng đồng An ninh mạng Việt Nam WhiteHat
và cộng đồng Khoa học công nghệ VnReview