Các nhà nghiên cứu bảo mật vừa tiết lộ chi tiết về một chiến dịch tự động mới mang tên Megalodon. Chiến dịch này đã đẩy thành công 5.718 commit độc hại lên .561 kho lưu trữ (repository) trên GitHub chỉ trong vòng 6 giờ đồng hồ.
"Sử dụng các tài khoản dùng một lần và danh tính tác giả giả mạo (build-bot, auto-ci, ci-bot, pipeline-bot), kẻ tấn công đã chèn các workflow GitHub Actions chứa payload bash mã hóa base64. Những payload này có khả năng đánh cắp các bí mật CI, thông tin xác thực đám mây, SSH keys, token OIDC và các bí mật mã nguồn để gửi về máy chủ C2 tại địa chỉ 216.126.225[.]129:8443," SafeDep cho biết trong một báo cáo.
Danh sách dữ liệu bị thu thập
Toàn bộ danh sách dữ liệu mà mã độc này thu thập bao gồm:
- Biến môi trường CI, /proc/*/environ và môi trường PID 1.
- Thông tin xác thực Amazon Web Services (AWS).
- Access token của Google Cloud.
- Thông tin xác thực vai trò thực thể (Instance role) từ các endpoint AWS IMDSv2, Google Cloud metadata và Microsoft Azure Instance Metadata Service (IMDS).
- SSH private keys.
- Cấu hình Docker và Kubernetes.
- Vault tokens.
- Thông tin xác thực Terraform.
- Lịch sử Shell.
- API keys, chuỗi kết nối cơ sở dữ liệu, JWTs, PEM private keys và các token đám mây khớp với hơn 30 mẫu biểu thức chính quy (regular expression).
- URL yêu cầu và token OIDC của GitHub Actions.
- GITHUB_TOKEN, token GitLab CI/CD và token Bitbucket.
- Các tệp .env, credentials.json, service-account.json và các tệp cấu hình khác.
Một trong những gói bị ảnh hưởng là @tiledesk/tiledesk-server, vốn chứa một payload bash mã hóa base64 bên trong tệp workflow của GitHub Actions. Tổng cộng, 5.718 commit đã được đẩy lên 5.561 kho lưu trữ riêng biệt vào ngày 18 tháng 5 năm 2026, từ 11:36 sáng đến 5:48 chiều UTC.
"Kẻ tấn công đã xoay vòng qua bốn tên tác giả (build-bot, auto-ci, ci-bot, pipeline-bot) và bảy thông điệp commit, tất cả đều bắt chước các hoạt động bảo trì CI định kỳ," SafeDep cho biết. "Kẻ tấn công sử dụng các tài khoản GitHub dùng một lần với tên người dùng 8 ký tự ngẫu nhiên, thiết lập cấu hình git để giả mạo danh tính tác giả và đẩy mã qua các PATs hoặc deploy keys bị chiếm quyền điều khiển."
Các biến thể Payload
Hai biến thể payload đã được quan sát thấy trong chiến dịch quy mô lớn này:
- SysDiag: Một biến thể hàng loạt, tự động thêm một workflow mới được kích hoạt trên mỗi lần push và pull request.
- Optimize-Build: Một biến thể có mục tiêu, chỉ kích hoạt thông qua workflow_dispatch – một trình kích hoạt của GitHub Actions cho phép người dùng chạy workflow thủ công theo yêu cầu.
Trong trường hợp của Tiledesk, cách tiếp cận có mục tiêu được sử dụng để nhắm vào các CI/CD runners, chứ không phải khi gói npm được cài đặt.
Kết quả là một khi chủ sở hữu kho lưu trữ chấp nhận (merge) commit, mã độc sẽ thực thi bên trong đường ống CI/CD của họ và lây lan xa hơn, cho phép đánh cắp thông tin xác thực và bí mật trên quy mô lớn.
"Chúng ta đã bước vào một kỷ nguyên tấn công chuỗi cung ứng mới, và việc TeamPCP xâm nhập GitHub chỉ là sự khởi đầu," Moshe Siman Tov Bustan từ OX Security nhận định. "Điều sắp tới sẽ là một làn sóng bất tận, một cơn sóng thần các cuộc tấn công mạng nhắm vào các nhà phát triển trên toàn thế giới."
Sự trỗi dậy của TeamPCP và các mã độc dạng sâu (Worm)
Diễn biến này xảy ra khi nhóm TeamPCP đã vũ khí hóa chuỗi cung ứng phần mềm để làm hỏng hàng trăm công cụ mã nguồn mở, len lỏi qua nhiều hệ sinh thái và tống tiền nạn nhân trong một số trường hợp. GitHub đã trở thành cái tên mới nhất trong danh sách nạn nhân dài dằng dặc của nhóm này, bao gồm cả TanStack, Grafana Labs, OpenAI và Mistral AI.
Các cuộc tấn công của TeamPCP đã thúc đẩy một chu kỳ khai thác các dự án mã nguồn mở phổ biến, trong đó một lỗ hổng bị xâm nhập sẽ tiếp tay cho lỗ hổng tiếp theo, cho phép mã độc lây lan như cháy rừng theo kiểu sâu máy tính (worm). Nhóm này cũng dường như có động cơ tài chính và đã thiết lập quan hệ đối tác với BreachForums cùng các nhóm tống tiền khác như LAPSUS$ và VECT.
Hệ quả từ chuỗi tấn công của TeamPCP và sâu Mini Shai-Hulud đã khiến npm phải vô hiệu hóa các access token có quyền ghi (write access) vốn cho phép bỏ qua xác thực hai yếu tố (2FA). NPM cũng đang thúc giục người dùng chuyển sang Trusted Publishing để giảm sự phụ thuộc vào các token này.
Trong khi các nhóm như Megalodon và TeamPCP xâm nhập các gói phần mềm hợp lệ, thì một tài khoản khác mang tên "polymarketdev" đã bị phát hiện phát hành 9 gói npm độc hại giả mạo các công cụ giao dịch của Polymarket để đánh cắp private key Ethereum/Polygon của nạn nhân thông qua một postinstall hook.
Cập nhật: Nguồn gốc từ Infostealer
Trong một phân tích tiếp theo được công bố vào ngày 23 tháng 5 năm 2026, Hudson Rock tiết lộ rằng cuộc tấn công chuỗi cung ứng Megalodon bắt nguồn từ các trường hợp nhiễm mã độc đánh cắp thông tin (Infostealer). Điều này đã cho phép kẻ tấn công lấy trộm thông tin xác thực GitHub và đẩy các payload độc hại lên.
Cụ thể, hơn 33% số tên người dùng duy nhất liên quan đến các kho lưu trữ bị ảnh hưởng (331 trên 978) được tìm thấy là "trùng khớp trực tiếp với các máy tính bị nhiễm Infostealer".
"Điều này dẫn chúng tôi đến một kết luận chắc chắn: Các tài khoản bị ảnh hưởng tạo điều kiện cho cuộc tấn công chuỗi cung ứng Megalodon được thu thập độc quyền từ dữ liệu Infostealer," Hudson Rock cho biết. "Chiến dịch Megalodon là một lời nhắc nhở đanh thép rằng nếu các nhà phát triển và nhân viên bị nhiễm Infostealer, các nền tảng như GitHub sẽ trở thành bệ phóng cho các sự kiện tàn phá hàng loạt."