Tấn công chuỗi cung ứng nghiêm trọng: PhantomRaven và RDD

Cộng đồng nhà phát triển toàn cầu đang đối mặt với một mối đe dọa mạng đáng kể từ PhantomRaven, một chiến dịch độc hại quy mô lớn liên quan đến 126 gói npm, với hơn 86.000 lượt tải xuống. Các gói này được thiết kế để đánh cắp token npm, thông tin xác thực GitHub và bí mật CI/CD từ các nhà phát triển trên toàn thế giới.
Kẻ tấn công đã sử dụng các kỹ thuật mới để che giấu mã độc, lợi dụng điểm mù trong hệ sinh thái mã nguồn mở. Điều này làm nổi bật sự phức tạp ngày càng tăng của các cuộc tấn công chuỗi cung ứng phần mềm.
Chiến Dịch PhantomRaven: Lộ Diện và Phạm Vi
Vào tháng 10 năm 2025, công cụ phân tích rủi ro hành vi Wings của Koi Security đã phát hiện một sự gia tăng các gói npm thực hiện yêu cầu mạng bên ngoài. Đây là một hành vi bất thường đối với hầu hết các gói trong quá trình cài đặt.
Cuộc điều tra sâu hơn tiết lộ một cuộc tấn công chuỗi cung ứng âm thầm đã diễn ra từ tháng 8. Hơn 80 trong số 126 gói gốc vẫn hoạt động, bí mật đánh cắp thông tin xác thực.
Việc gỡ bỏ ban đầu của npm đã bỏ sót phần lớn các gói được tải lên sau đó, cho phép chiến dịch né tránh phát hiện trong nhiều tháng.
Kỹ Thuật Tấn Công Chuỗi Cung Ứng Nâng Cao: Remote Dynamic Dependencies (RDD)
Hạ tầng của kẻ tấn công cho thấy sự thiếu sót trong bảo mật vận hành, với việc sử dụng các địa chỉ email tuần tự từ dịch vụ miễn phí và tên người dùng đơn giản như “npmhell”. Tuy nhiên, cơ chế phân phối thông minh đã giữ cho payload thực sự được ẩn giấu.
Các gói npm truyền thống liệt kê các phụ thuộc được lấy trực tiếp từ npmjs.com, đảm bảo tính minh bạch cho các công cụ quét và phân tích phụ thuộc.
Ngược lại, PhantomRaven đã sử dụng chiến thuật trốn tránh nâng cao: Remote Dynamic Dependencies (RDD). Thay vì các con trỏ tiêu chuẩn, các gói này tham chiếu phụ thuộc bằng các URL HTTP, ví dụ:
http://attacker[.]com/dependency.tgz
Thay đổi tưởng chừng vô hại này lại rất quan trọng. Khi cài đặt, npm sẽ tìm nạp gói từ xa trực tiếp từ máy chủ của kẻ tấn công, bỏ qua kiểm soát của registry và khiến các công cụ bảo mật không phát hiện được, hiển thị “0 dependencies” trên giao diện người dùng.
Kẻ tấn công, kiểm soát hoàn toàn máy chủ phân phối, thậm chí có thể phục vụ các payload được nhắm mục tiêu bằng cách kiểm tra địa chỉ IP của trình cài đặt.
Mỗi lượt cài đặt thực thi các script vòng đời như “preinstall”, đảm bảo mã độc chạy tự động, bất kể nó được chôn sâu đến mức nào trong cây phụ thuộc.
Điều này không chỉ cho phép kẻ tấn công phân phối các payload độc hại tùy chỉnh theo yêu cầu, mà còn bỏ qua tất cả lời nhắc và cảnh báo của người dùng. Đây là một đặc điểm nguy hiểm của cuộc tấn công chuỗi cung ứng này.
Cơ Chế Thu Thập và Rò Rỉ Dữ Liệu Nhạy Cảm
Sau khi được cài đặt, mã độc PhantomRaven thực hiện quét toàn diện để tìm các chi tiết nhạy cảm:
- File cấu hình npm (ví dụ:
.npmrc) - File cấu hình GitHub (ví dụ:
.gitconfig) - Các biến môi trường liên quan đến CI/CD (ví dụ:
CI_TOKEN,NPM_TOKEN) - Mã nguồn dự án và file dữ liệu quan trọng
Để tối đa hóa thành công việc đánh cắp dữ liệu, PhantomRaven gửi dữ liệu bị đánh cắp một cách dự phòng qua HTTP GET, HTTP POST và kết nối WebSocket dự phòng, hiệu quả trong việc vượt qua hầu hết các hạn chế mạng.
Kỹ Thuật Slopsquatting và Khai Thác LLM
Tên gói của PhantomRaven không chỉ đơn thuần là lỗi đánh máy (typosquatting). Kẻ tấn công lợi dụng “ảo giác” của các mô hình ngôn ngữ lớn (LLM) để tạo ra các gói hợp lý, thường được các trợ lý AI như Copilot hoặc ChatGPT gợi ý (ví dụ: “unused-imports” thay vì “eslint-plugin-unused-imports” hợp pháp).
Kỹ thuật này, được gọi là slopsquatting, cho phép kẻ tấn công làm nhiễm độc hệ sinh thái với các gói mà nhà phát triển có thể cài đặt chỉ dựa trên đề xuất của AI.
Các nạn nhân, tin tưởng vào các đề xuất do AI tạo ra, vô tình đưa mã độc PhantomRaven vào môi trường của họ. Đây là một khía cạnh mới trong các cuộc tấn công chuỗi cung ứng.
IOCs (Indicators of Compromise)
Các chỉ số xâm nhập liên quan đến hạ tầng của kẻ tấn công bao gồm:
- Địa chỉ email:
jpdtester01@hotmail[.]comđếnjpdtester13@gmail[.]com - Tên người dùng:
npmhell,npmpackagejpd - Domain sử dụng cho RDD (ví dụ minh họa):
attacker[.]com
Tác Động và Giải Pháp Phòng Ngừa
Các phương pháp của PhantomRaven làm nổi bật sự tinh vi ngày càng tăng của các cuộc tấn công chuỗi cung ứng phần mềm. Remote Dynamic Dependencies, tên gói nhắm mục tiêu bằng AI và các script vòng đời tự động thực thi đại diện cho một kỷ nguyên mới trong việc phân phối mã độc.
Những kỹ thuật này vượt qua nhiều công cụ bảo mật hiện có. Nghiên cứu và giải pháp của Koi Security chứng minh cách phân tích hành vi—theo dõi những gì các gói thực sự làm thay vì chỉ những gì chúng khai báo—có thể phơi bày các cuộc tấn công không bị phát hiện bởi các quét tĩnh.
Khi hệ sinh thái mã nguồn mở đối mặt với các mối đe dọa theo thời gian thực này, các biện pháp phòng thủ động và tiên tiến là điều cần thiết để bảo vệ các nhà phát triển, doanh nghiệp và toàn bộ chuỗi cung ứng phần mềm khỏi các tấn công chuỗi cung ứng tương tự.









