21/09/2026 · VietTechies · Biên tập

Một chiến dịch mã độc nhắm vào người dùng npm được cho là đã vượt qua cơ chế bảo vệ tập lệnh cài đặt của npm v12 bằng cách đặt trình tải trong hành vi chạy thông thường của gói indexed-btree độc hại. Theo BleepingComputer, dẫn lời các nhà nghiên cứu Checkmarx, gói này giả mạo thư viện sorted-btree hợp pháp và đã đạt 2 triệu lượt tải mỗi tuần.
Kích hoạt khi chạy thay vì lúc cài đặt
Gói này không sử dụng các tập lệnh preinstall, install và postinstall, vốn thuộc phạm vi của những biện pháp bảo mật npm do GitHub công bố vào tháng 6/2026. Thay vào đó, mã độc được kích hoạt thông qua BTree.prototype.set() khi ứng dụng truyền vào một giá trị khóa cụ thể. Vì vậy, quá trình cài đặt có thể trông hoàn toàn bình thường, nhưng gói vẫn trở nên nguy hiểm khi mã ứng dụng được thực thi.
Mã độc thực hiện những gì
Theo Checkmarx, cơ chế kích hoạt khi chạy sẽ nạp giai đoạn đầu tiên đã được làm rối và thu thập thông tin hệ thống, gồm kiến trúc máy, tên máy chủ, CPU, bộ nhớ và thời gian hoạt động. Dữ liệu được gửi qua các kênh Slack và Telegram được ghi cứng trong mã. Mã độc cũng truy vấn một hợp đồng thông minh Ethereum trên mạng thử nghiệm Sepolia để lấy thông tin điều khiển và kiểm soát (C2), sử dụng cơ chế trao đổi khóa X25519 cùng AES để giải mã tải trọng giai đoạn hai được lưu trong hợp đồng.
Khi muốn kết thúc cuộc tấn công, nhóm vận hành có thể xóa các tệp liên quan và loại bỏ trình kích hoạt độc hại khỏi mã gói để xóa dấu vết.
Mở rộng sang nhiều gói khác
Checkmarx xác định thêm chín gói npm có liên quan đến cùng chiến dịch: ordered-kv-index với 448.184 lượt tải, btree-leaderboard với 493.685 lượt, priority-slot-queue với 402.860 lượt, btree-range-store với 468.092 lượt, btree-core với 1.951.274 lượt, btree-time-index với 425.312 lượt, btree-lru-cache với 372.185 lượt, neighbor-key-map với 366.019 lượt và sliding-score-window với 448.024 lượt. Các gói này đã bị gỡ khỏi npm.
Các nhà nghiên cứu cho biết nhóm đứng sau đã đầu tư nhiều công sức để dự án trông hợp pháp, trong đó có việc tạo một kho GitHub giống dự án thật, bổ sung lịch sử commit và xây dựng hồ sơ nhà phát triển có vẻ đáng tin cậy. Báo cáo cũng liên hệ chiến dịch với một ví đang nắm giữ 109 ETH, nhưng không khẳng định số tiền này có nguồn gốc từ việc đánh cắp tiền mã hóa.
Hàm ý đối với nhà phát triển
Chiến dịch cho thấy việc chỉ kiểm tra trong lúc cài đặt không thể bao phủ mọi mối đe dọa đối với chuỗi cung ứng phần mềm. Các nhà phát triển không nên chỉ dựa vào công cụ quét lúc cài đặt mà cần bổ sung phân tích hành vi khi chương trình chạy.
Những người đã cài indexed-btree hoặc bất kỳ gói nào trong danh sách liên quan nên thay mới toàn bộ thông tin bí mật và khôi phục môi trường phát triển từ một bản sao lưu được xác định là an toàn.
Ảnh minh họa do AI tạo.
Nguồn: Malicious npm packages evade install-script defenses at runtime
