Tin tức bảo mật về chuỗi tấn công supply chain này cho thấy các công cụ phát triển đáng tin cậy có thể bị lạm dụng để đánh cắp credentials, cloud tokens và source code. Mục tiêu bị nhắm tới không chỉ là máy lập trình viên, mà còn là các luồng CI/CD, tiện ích mở rộng và quy trình kiểm soát mã nguồn.
Lỗ hổng CVE và bề mặt tấn công trong hệ sinh thái phát triển
Chiến dịch được ghi nhận gồm hai nhánh liên kết với nhau. Nhánh đầu tiên sử dụng phiên bản bị cấy độc của Nx Console VS Code extension 18.95.0, được đưa lên Visual Studio Code Marketplace vào ngày 18/05/2026. Tiện ích này có hơn 2,2 triệu lượt cài đặt, khiến phạm vi ảnh hưởng tăng rất nhanh.
Trong sự kiện này, CVE-2026-48027 được gán cho tiện ích độc hại và đưa vào danh mục Known Exploited Vulnerabilities của CISA. Tham chiếu chính thức có tại: CISA Alert: Supply Chain Compromises Impact Nx Console and GitHub Repositories.
CISA đánh giá mọi máy đã chạy tiện ích bị xâm nhập cần được xem là fully compromised. Điều này áp dụng cả khi người dùng không thực hiện hành động rõ ràng nào, vì mã độc có thể được tải và thực thi nền tự động khi mở workspace.
Chuỗi xâm nhập và cơ chế đánh cắp dữ liệu
Chiến dịch đầu tiên bắt đầu từ một personal access token của contributor bị đánh cắp trong một sự cố supply chain trước đó. Với token này, đối tượng tấn công chèn một hidden orphan commit vào kho lưu trữ chính thức nrwl/nx, chứa payload JavaScript đã được làm rối kích thước 498 KB.
Sau đó, gói tiện ích độc hại được phát hành lên marketplace bằng publishing credentials bị chiếm đoạt. Phần mã chèn thêm vào file chính của extension có kích thước 2.777 bytes. Khi nhà phát triển mở workspace có cài extension này, payload sẽ âm thầm chạy ở nền.
Payload gồm 6 mô-đun thu thập thông tin xác thực nhắm vào:
- GitHub tokens
- AWS credentials
- HashiCorp Vault secrets
- Kubernetes configs
- npm tokens
- 1Password vaults
Nhánh này tập trung vào đánh cắp dữ liệu liên quan tới quy trình phát triển, đặc biệt là secrets có thể dùng để mở rộng quyền truy cập sang các hệ thống khác.
Nhánh tấn công Megalodon trên GitHub Actions
Nhánh thứ hai, được gọi là Megalodon, hoạt động song song. Vào ngày 18/05, một tác nhân tự động đã đẩy 5.718 commit độc hại vào 5.561 kho lưu trữ GitHub công khai trong vòng 6 giờ.
Các GitHub Actions workflows bị chèn vào đã thu thập CI/CD secrets, cloud credentials, SSH keys và OIDC tokens, sau đó gửi về máy chủ command-and-control. Đây là mô hình điển hình của tấn công mạng nhằm vào pipeline thay vì chỉ nhắm vào máy trạm cá nhân.
Đối tượng tấn công cũng dùng tài khoản GitHub dùng một lần với danh tính giả như build-bot và auto-ci. Các workflow có tên SysDiag và Optimize-Build được ngụy trang như tác vụ bảo trì thông thường để che giấu thay đổi.
Ảnh hưởng hệ thống
Các hệ thống bị ảnh hưởng chủ yếu là máy phát triển, kho mã nguồn, và chuỗi CI/CD. Khi pipeline bị chiếm, kẻ tấn công có thể đọc secrets, sử dụng token để truy cập repository khác, hoặc mở rộng sang môi trường cloud.
Trong một trường hợp, thiết bị của nhân viên GitHub bị ảnh hưởng, dẫn tới việc truy cập trái phép và trích xuất khoảng 3.800 source code repositories nội bộ. Với nhánh Megalodon, một gói npm là @tiledesk/tiledesk-server từ phiên bản 2.18.6 đến 2.18.12 đã mang biến thể mục tiêu và được phát hành từ repository đã bị xâm nhập mà người bảo trì không hay biết.
Phát hiện xâm nhập và chỉ dấu cần kiểm tra
CISA khuyến nghị rà soát toàn bộ workflow files để tìm các commit đáng ngờ sau ngày 18/05/2026, đặc biệt là thay đổi do tài khoản tự động tạo ra. Bất kỳ tổ chức nào đã chạy Nx Console bị nhiễm hoặc phát hiện workflow bị sửa trái phép đều cần thực hiện điều tra forensic đầy đủ trên CI/CD logs và cloud audit trails.
Danh sách IOC được mô tả trong tài liệu công bố mang tính defang. Khi phân tích trong môi trường kiểm soát như MISP, VirusTotal hoặc SIEM, cần re-fang có kiểm soát. Nội dung IOC chi tiết không được liệt kê rõ trong nguồn gốc, vì vậy chỉ có thể trích xuất các dấu hiệu kỹ thuật chính sau:
- Tiện ích Nx Console VS Code 18.95.0 bị cấy độc.
- CVE-2026-48027 liên quan tới extension độc hại.
- Workflow có tên SysDiag và Optimize-Build.
- Tài khoản tác nhân giả mạo dạng build-bot và auto-ci.
- Commit bất thường trong khoảng thời gian sau 18/05/2026.
Giảm thiểu rủi ro bảo mật trong chuỗi phát triển
Đây là dạng lỗ hổng CVE và rủi ro bảo mật mở rộng từ supply chain, nên phản ứng cần tập trung vào thu hồi quyền và làm sạch tài nguyên đã bị sử dụng. Tất cả credentials mà pipeline có thể truy cập phải được rotate, gồm:
- API keys
- Cloud provider tokens cho AWS, GCP và Azure
- SSH keys
- Docker tokens
- Kubernetes tokens
- Developer secrets
CISA cũng khuyến nghị chờ ít nhất 3 giờ trước khi kéo package mới, ghim dependency về phiên bản đáng tin cậy và chỉ lấy package từ kho xác thực. Đây là biện pháp quan trọng để giảm nguy cơ từ cảnh báo CVE liên quan đến phần mềm phát triển.
Ngoài ra, với máy đã cài extension bị xâm nhập, cần đối chiếu log để xác định dấu hiệu truy cập tới GitHub Search API, hoạt động lạ liên quan tới secrets, hoặc outbound traffic tới máy chủ điều khiển. Việc này giúp phát hiện xâm nhập sớm hơn trong các môi trường có an toàn thông tin và bảo mật mạng nghiêm ngặt.
Kiểm tra nhanh trên máy phát triển
# Liệt kê extension liên quan đến Nx Console
code --list-extensions | grep -i nx
# Kiểm tra lịch sử cài đặt và cập nhật extension
code --status
# Rà soát workflow thay đổi gần đây trong repository
git log --name-only --since="2026-05-18"
# Tìm workflow file đáng ngờ
find .github/workflows -type f -name "*.yml" -o -name "*.yaml"
Rà soát pipeline và cloud audit trail
# Tìm các commit có author bất thường
git log --format="%H %an %ae %ad" --since="2026-05-18"
# Kiểm tra thay đổi workflow qua pull request
git diff -- .github/workflows/
# Ví dụ rà log CI/CD theo mốc thời gian
journalctl -u github-actions-runner --since "2026-05-18"
Khuyến nghị kiểm soát truy cập và update vá lỗi
Trong bối cảnh tin bảo mật mới nhất này, ưu tiên là cô lập máy đã chạy extension độc hại, thu hồi toàn bộ token liên quan và xác minh lại các workflow trong repository. Các tổ chức cần triển khai update vá lỗi cho công cụ phát triển, đồng thời hạn chế quyền của runner và secrets trong pipeline.
Với các môi trường dùng package manager, cần kiểm tra lại nguồn phát hành, pin phiên bản, và chỉ cho phép install từ repository đã xác thực. Điều này giúp giảm nguy cơ từ các mối đe dọa khai thác trust chain giữa nhà phát triển, extension marketplace và hệ thống CI/CD.










