Ginny Hà
VIP Members
-
04/06/2014
-
88
-
689 bài viết
Phát hiện hơn 200 gói NPM độc hại nhắm mục tiêu vào các nhà phát triển Azure
Cuộc tấn công quy mô lớn với ít nhất 218 gói NPM độc hại, mục tiêu đánh cắp thông tin nhận dạng cá nhân.
Các nhà nghiên cứu của Jfrog cho biết: “Sau khi kiểm tra thủ công một số gói này, rõ ràng đây là một cuộc tấn công có chủ đích nhắm vào toàn bộ phạm vi @azure NPM. Hacker đã sử dụng script tự động để tạo tài khoản và tải lên các gói độc hại nhắm hoàn toàn vào phạm vi đó".
Toàn bộ các gói độc hại đã được thông báo cho các phụ trách NPM khoảng 2 ngày sau khi có thông tin, do đó chúng đã bị xóa đi nhanh chóng. Tuy nhiên, mỗi gói đã được tải xuống trung bình khoảng 50 lần.
Cuộc tấn công được cho là xuất phát từ lỗi typosquatting, diễn ra khi hacker đẩy các gói giả mạo có tên bắt chước các thư viện hợp pháp đến một cơ quan đăng ký phần mềm công cộng như NPM hoặc PyPI nhằm lừa người dùng cài đặt.
Trong trường hợp cụ thể này, công ty DevSecOps phát hiện kẻ xấu đã tạo ra hàng chục gói độc hại cùng tên với gói phạm vi @azure hiện có nhưng không có tên phạm vi (ví dụ: @azure/core-tracing với core-tracing).
Các nhà nghiên cứu cho biết: “Kẻ tấn công đang dựa vào thực tế một số nhà phát triển sai sót bỏ qua tiền tố @azure khi cài đặt một gói. Ví dụ: chạy npm install core-tracing do nhầm lẫn, thay vì lệnh đúng - npm install @azure/core-tracing".
Cuộc tấn công không chỉ lợi dụng tên người dùng duy nhất để tải từng gói đơn lẻ lên kho lưu trữ nhằm tránh gây nghi ngờ, mà các thư viện chứa mã độc còn có số phiên bản cao (ví dụ: 99.10.9), cho thấy nỗ lực thực hiện cuộc tấn công.
Nếu nhà phát triển vô tình cài đặt một trong các gói này, sẽ dẫn đến việc thực thi một payload do thám được thiết kế để liệt kê các thư mục cũng như thu thập thông tin về thư mục làm việc hiện tại của người dùng và địa chỉ IP liên quan đến giao diện mạng và máy chủ DNS, tất cả đều được trích xuất tới một máy chủ từ xa được mã hóa cứng.
Các nhà nghiên cứu cho biết: “Chúng ta cần cẩn trọng với sự gia tăng nhanh chóng của các cuộc tấn công vào chuỗi cung ứng, đặc biệt là thông qua các kho gói NPM và PyPI”.
"Ví dụ: việc thêm cơ chế CAPTCHA khi tạo người dùng npm sẽ ngăn kẻ tấn công dễ dàng tạo ra lượng người dùng tùy ý và tải lên các gói độc hại, giúp việc xác định cuộc tấn công dễ dàng hơn".
Các nhà nghiên cứu của Jfrog cho biết: “Sau khi kiểm tra thủ công một số gói này, rõ ràng đây là một cuộc tấn công có chủ đích nhắm vào toàn bộ phạm vi @azure NPM. Hacker đã sử dụng script tự động để tạo tài khoản và tải lên các gói độc hại nhắm hoàn toàn vào phạm vi đó".
Toàn bộ các gói độc hại đã được thông báo cho các phụ trách NPM khoảng 2 ngày sau khi có thông tin, do đó chúng đã bị xóa đi nhanh chóng. Tuy nhiên, mỗi gói đã được tải xuống trung bình khoảng 50 lần.
Cuộc tấn công được cho là xuất phát từ lỗi typosquatting, diễn ra khi hacker đẩy các gói giả mạo có tên bắt chước các thư viện hợp pháp đến một cơ quan đăng ký phần mềm công cộng như NPM hoặc PyPI nhằm lừa người dùng cài đặt.
Trong trường hợp cụ thể này, công ty DevSecOps phát hiện kẻ xấu đã tạo ra hàng chục gói độc hại cùng tên với gói phạm vi @azure hiện có nhưng không có tên phạm vi (ví dụ: @azure/core-tracing với core-tracing).
Các nhà nghiên cứu cho biết: “Kẻ tấn công đang dựa vào thực tế một số nhà phát triển sai sót bỏ qua tiền tố @azure khi cài đặt một gói. Ví dụ: chạy npm install core-tracing do nhầm lẫn, thay vì lệnh đúng - npm install @azure/core-tracing".
Cuộc tấn công không chỉ lợi dụng tên người dùng duy nhất để tải từng gói đơn lẻ lên kho lưu trữ nhằm tránh gây nghi ngờ, mà các thư viện chứa mã độc còn có số phiên bản cao (ví dụ: 99.10.9), cho thấy nỗ lực thực hiện cuộc tấn công.
Nếu nhà phát triển vô tình cài đặt một trong các gói này, sẽ dẫn đến việc thực thi một payload do thám được thiết kế để liệt kê các thư mục cũng như thu thập thông tin về thư mục làm việc hiện tại của người dùng và địa chỉ IP liên quan đến giao diện mạng và máy chủ DNS, tất cả đều được trích xuất tới một máy chủ từ xa được mã hóa cứng.
Các nhà nghiên cứu cho biết: “Chúng ta cần cẩn trọng với sự gia tăng nhanh chóng của các cuộc tấn công vào chuỗi cung ứng, đặc biệt là thông qua các kho gói NPM và PyPI”.
"Ví dụ: việc thêm cơ chế CAPTCHA khi tạo người dùng npm sẽ ngăn kẻ tấn công dễ dàng tạo ra lượng người dùng tùy ý và tải lên các gói độc hại, giúp việc xác định cuộc tấn công dễ dàng hơn".
Nguồn: The Hacker News
Chỉnh sửa lần cuối bởi người điều hành: