Những kẻ tấn công đã chiếm quyền truy cập vào tài khoản của nhà phát triển đang duy trì bộ công cụ phần mềm phổ biến keyv — được hàng triệu lập trình viên trên toàn thế giới sử dụng. Thông qua quyền truy cập này, kẻ xấu đã nhúng mã độc vào các phiên bản mới của công cụ, như được các chuyên gia an ninh mạng của Aikido Security báo cáo. Cuộc tấn công bắt đầu vào ngày 4 tháng 8 năm 2026 và trở thành một trong những cuộc tấn công lớn nhất trong những năm gần đây — hàng trăm gói phần mềm, được sử dụng hơn 2 tỷ lần mỗi tháng, đã bị đe dọa.
Máy tính bị nhiễm mã độc như thế nào
Tất cả lập trình viên đều sử dụng các kho lưu trữ chứa các đoạn mã sẵn có — một dạng thư viện, nơi họ có thể tải về giải pháp làm sẵn thay vì phải viết từ đầu. Đối với JavaScript, kho lưu trữ đó được gọi là npm và lệnh để tải về là npm install.
Những kẻ tấn công đã giấu một dòng mã trong bản cập nhật thư viện, dòng mã này tự động kích hoạt việc tải về mã độc — ngay sau khi lập trình viên nhập lệnh cài đặt thông thường. Không cần phải thực hiện bất kỳ hành động đáng ngờ nào: quá trình lây nhiễm diễn ra tự động, trong khuôn khổ công việc thường nhật.
Mã độc tìm kiếm gì trên máy tính bị nhiễm
Sau khi xâm nhập vào máy tính, chương trình độc hại bắt đầu tìm kiếm mọi thứ có giá trị nhất:
- Mật khẩu và mã truy cập vào kho lưu trữ phần mềm (npm)
- Mã truy cập vào tài khoản trên GitHub — dịch vụ lưu trữ mã nguồn
- Dữ liệu đăng nhập vào các dịch vụ đám mây Amazon (AWS)
- Khóa bí mật cho cơ sở hạ tầng máy chủ của các công ty
- Khóa để truy cập từ xa vào máy chủ (SSH)
- Các tệp chứa mật khẩu đã lưu (chương trình KeePass)
- Cấu hình của các chương trình viết mã phổ biến, bao gồm Claude, VS Code và những cái khác
- Tệp ví tiền điện tử — bao gồm ví cho Solana và Monero
- Seed phrase và khóa cá nhân (private keys)
Tất cả dữ liệu tìm thấy đều được mã độc mã hóa và gửi cho kẻ tấn công: một phần dữ liệu được tải lên các kho lưu trữ công khai trên GitHub với cái tên rất rõ ràng "Shai-Hulud: lại xuất hiện", một phần khác — lên một máy chủ đặc biệt, mà địa chỉ của nó mã độc nhận được thông qua một hợp đồng thông minh (smart contract) trên mạng Ethereum, điều này khiến việc chặn nó trở nên khó khăn hơn.
Mã độc tự nhân bản
Điều nguy hiểm nhất — mã độc không dừng lại ở một thư viện. Sử dụng mật khẩu đánh cắp được, nó tự động lây nhiễm sang các công cụ phổ biến khác: phát hành các bản "cập nhật" mới dưới danh nghĩa của các nhà phát triển thực sự, trong đó thêm vào cùng dòng mã độc hại đó, sau đó công bố chúng cho cộng đồng. Đồng thời, mã độc ẩn mình sâu hơn trong hệ thống để khiến việc loại bỏ hoàn toàn nó trở nên khó khăn hơn.
Bao nhiêu chương trình đã bị nhiễm
Theo dữ liệu từ Aikido Security tính đến ngày 5 tháng 8 năm 2026, ít nhất 444 gói phần mềm (1.381 phiên bản) đã bị nhiễm. Trong báo cáo của công ty Orca Security, con số được đề cập là khoảng 868 gói. Trong số đó — có một số công cụ được hàng chục nghìn nhà phát triển khác trên toàn thế giới sử dụng để tăng tốc và đơn giản hóa việc viết mã.
Tại sao điều này đặc biệt nguy hiểm cho ngành công nghiệp tiền điện tử
Nếu mã độc xâm nhập vào máy tính của một nhà phát triển đang làm việc với dự án tiền điện tử, hậu quả có thể nghiêm trọng hơn nhiều so với việc rò rỉ mật khẩu thông thường. Thông qua máy tính bị nhiễm, hacker có thể giành quyền truy cập vào seed phrase của ví, khóa truy cập sàn giao dịch, tài khoản GitHub và máy chủ của công ty, như được giải thích bởi Orca Security. Tiếp theo — chỉ là vấn đề kỹ thuật: truy cập vào mã nguồn dự án, truy cập vào máy chủ, và sau đó là một cuộc tấn công toàn diện. Chính theo cách này mà nhiều vụ trộm tiền điện tử lớn trong những năm gần đây đã bắt đầu.
Câu chuyện này cho thấy rằng người ta có thể bị nhiễm mã độc ngay cả khi thực hiện các hành động bình thường nhất — chỉ đơn giản là cài đặt một công cụ cần thiết cho công việc. Đối với các nhóm làm việc với tiền điện tử và ví, đây là một lý do nữa để kiểm tra cẩn thận các chương trình họ sử dụng và kịp thời cập nhật chúng sau khi sự cố được khắc phục.
Ý kiến từ AI
Từ góc độ phân tích dữ liệu bằng máy móc, sự cố hiện tại — không phải là trường hợp cá biệt, mà là làn sóng thứ ba của cùng một chiến dịch: sâu Shai-Hulud lần đầu tiên được phát hiện vào tháng 9 năm 2025, sau đó vào tháng 11 là làn sóng thứ hai "Shai-Hulud 2.0", ảnh hưởng đến hơn 25 nghìn kho mã nguồn (repository). Tính thường xuyên như vậy trong chưa đầy một năm cho thấy một vấn đề hệ thống về niềm tin bên trong hệ sinh thái npm, chứ không phải là một lỗi duy nhất của một nhà phát triển.
end-content




