Mối đe dọa từ các gói độc hại trên NPM

Mối đe dọa từ các gói độc hại trên NPM
Hàng trăm thư viện mã trên NPM bị phát hiện cố gắng cài đặt phần mềm độc hại lên máy của các nhà phát triển.

Các chuyên gia bảo mật cảnh báo về một chiến dịch tấn công đang diễn ra nhằm phát tán các gói độc hại lên kho lưu trữ NPM, nhắm mục tiêu vào các nhà phát triển sử dụng thư viện mã nguồn mở.

Một chiến dịch tấn công đang diễn ra sử dụng chiến thuật phát tán hàng trăm gói độc hại đến kho lưu trữ mã nguồn mở NPM, với mục đích nhắm vào các nhà phát triển đang phụ thuộc vào các thư viện mã nguồn tại đây. Những gói độc hại này mang tên gần giống với các thư viện Puppeteer, Bignum.js, cũng như nhiều thư viện liên quan đến tiền mã hóa.

Theo các nhà nghiên cứu từ công ty bảo mật Phylum, cuộc tấn công này xuất hiện ngay sau một đợt tấn công nhắm vào các nhà phát triển sử dụng các fork của thư viện Ethers.js cách đây không lâu. Đây là minh chứng rõ ràng rằng các cuộc tấn công chuỗi cung ứng vẫn đang phát triển mạnh mẽ. Các tác giả mã độc đã tìm cách sử dụng những phương pháp mới để che giấu mục đích và ẩn dấu các máy chủ điều khiển từ xa.

Một kỹ thuật mới được phát hiện là sử dụng hợp đồng thông minh trên Ethereum để che giấu địa chỉ IP của các thiết bị bị nhiễm liên lạc để nhận tải trọng phần mềm độc hại giai đoạn hai. Địa chỉ IP này không xuất hiện trong mã giai đoạn một, thay vào đó mã truy cập một hợp đồng thông minh để lấy một chuỗi, trong trường hợp này là địa chỉ IP.

Điều thú vị là việc lưu trữ dữ liệu này trên blockchain Ethereum tạo ra một lịch sử không thể thay đổi của tất cả các giá trị, cho phép chúng ta nhìn thấy mọi địa chỉ IP mà kẻ tấn công đã từng sử dụng. Vài địa chỉ IP đã được ghi nhận như: hxxp://45.125.67[.]172:1337 và gần đây nhất là hxxp://194.53.54[.]188:3001.

Khi được cài đặt, các gói độc hại sẽ chạy dưới dạng một gói Vercel được đóng gói sẵn, hoạt động trong bộ nhớ và tự động tải khi khởi động lại hệ thống. Chúng thực hiện các yêu cầu để tải thêm các tệp Javascript và gửi ngược thông tin hệ thống tới máy chủ.

Cuộc tấn công này chủ yếu dựa vào việc đánh lừa người dùng bằng cách áp dụng typosquatting - sử dụng tên gần giống với các gói hợp pháp nhưng có sai sót nhỏ. Thủ thuật này lừa các nhà phát triển tải xuống các thư viện mã độc hại. Phylum khuyến cáo các nhà phát triển nên kiểm tra kỹ tên gói trước khi thực thi. Bài viết của họ cung cấp danh sách tên gói, địa chỉ IP và các hàm băm mã hóa liên quan đến chiến dịch tấn công này.

Read more