Phần mềm độc hại NodeCordRAT
Các nhà phân tích an ninh mạng đã phát hiện ba gói npm độc hại được thiết kế để phát tán một loại trojan truy cập từ xa (RAT) chưa từng được ghi nhận trước đây, hiện được theo dõi với tên gọi NodeCordRAT. Các gói này đã bị xóa khỏi kho lưu trữ npm vào tháng 11 năm 2025 và đều được phát hành bởi một tài khoản hoạt động dưới tên 'wenmoonx'.
Các gói phần mềm độc hại đã được xác định:
- bitcoin-main-lib (khoảng 2.300 lượt tải xuống)
- bitcoin-lib-js (khoảng 193 lượt tải xuống)
- bip40 (khoảng 970 lượt tải xuống)
Những kẻ tấn công đã cố tình chọn những cái tên gần giống với các kho lưu trữ hợp pháp từ hệ sinh thái bitcoinjs nổi tiếng, một nỗ lực rõ ràng nhằm đánh lừa các nhà phát triển và tăng khả năng cài đặt nhầm.
Mục lục
Chuỗi lây nhiễm và vận chuyển tải trọng
Quá trình xâm nhập bắt đầu khi bitcoin-main-lib hoặc bitcoin-lib-js được cài đặt. Cả hai gói đều chứa một tệp package.json được tạo sẵn, định nghĩa một tập lệnh postinstall.cjs. Tập lệnh này âm thầm kéo bip40 vào, nơi chứa mã độc thực sự.
Sau khi được thực thi, bip40 sẽ triển khai phần mềm độc hại cuối cùng: NodeCordRAT, một loại trojan truy cập từ xa đầy đủ tính năng với các chức năng thu thập dữ liệu tích hợp sẵn.
NodeCordRAT là gì?
NodeCordRAT được đặt tên theo hai lựa chọn thiết kế cốt lõi: npm làm cơ chế lây lan và Discord làm nền tảng điều khiển và kiểm soát (C2). Sau khi cài đặt, phần mềm độc hại này sẽ thu thập dấu vân tay của hệ thống bị xâm nhập để tạo ra một mã định danh duy nhất trên các máy chủ Windows, Linux và macOS.
Phần mềm độc hại này có khả năng thu thập thông tin nhạy cảm, bao gồm:
- Thông tin đăng nhập Google Chrome
- Mã thông báo API
- Thông tin bí mật của ví tiền điện tử, chẳng hạn như dữ liệu MetaMask và cụm từ khôi phục.
Tất cả dữ liệu thu thập được đều được chuyển về cho kẻ tấn công thông qua cơ sở hạ tầng của Discord.
Hệ thống chỉ huy và kiểm soát dựa trên Discord
Thay vì dựa vào các máy chủ C2 truyền thống, NodeCordRAT sử dụng máy chủ Discord và mã thông báo được mã hóa cứng để thiết lập kênh liên lạc bí mật. Thông qua kênh này, người điều hành có thể ra lệnh và nhận dữ liệu bị đánh cắp.
Các lệnh tấn công được hỗ trợ bao gồm:
- !run – Thực thi các lệnh shell tùy ý thông qua hàm exec của Node.js
- !screenshot – Chụp toàn bộ ảnh màn hình và xuất ra dưới dạng tệp PNG
- !sendfile – Tải lên một tệp cục bộ được chỉ định lên kênh Discord
Rò rỉ dữ liệu thông qua API của Discord
Việc đánh cắp dữ liệu được thực hiện hoàn toàn thông qua API REST của Discord. Sử dụng mã thông báo được nhúng, phần mềm độc hại đăng tải nội dung bị đánh cắp trực tiếp lên một kênh riêng tư, đính kèm các tệp thông qua điểm cuối:
/channels/{id}/messages
Cách tiếp cận này cho phép các tác nhân đe dọa trộn lẫn lưu lượng truy cập độc hại với hoạt động hợp pháp trên Discord, khiến việc phát hiện trở nên khó khăn hơn trong môi trường cho phép sử dụng Discord.
Ý nghĩa về an ninh
Chiến dịch này nêu bật việc tiếp tục lạm dụng các hệ sinh thái mã nguồn mở và các nền tảng hợp tác đáng tin cậy. Bằng cách giả mạo các thư viện liên quan đến Bitcoin quen thuộc và sử dụng các tập lệnh cài đặt sau để tấn công, những kẻ tấn công đã tạo ra một con đường lây nhiễm dễ dàng, có khả năng phát tán phần mềm RAT đa nền tảng tập trung vào việc đánh cắp thông tin đăng nhập và điều khiển từ xa.
Đối với các nhóm phát triển và chuyên gia bảo mật, sự cố này nhấn mạnh tầm quan trọng của việc kiểm tra nghiêm ngặt các thành phần phụ thuộc, giám sát các tập lệnh cài đặt và phát hiện các bất thường đối với lưu lượng truy cập đi ra các nền tảng người dùng như Discord.