
Ngày 10/10/2026, các nhà nghiên cứu an ninh mạng công bố chi tiết về sự tái bùng phát của chiến dịch GhostAction, ghi nhận hơn 500 tài khoản nhà bảo trì (maintainers) trên GitHub bị chiếm quyền để cài cắm luồng công việc CI/CD độc hại. Bằng việc vũ khí hóa cơ chế kích hoạt workflow tự động và quét sâu lịch sử Git, chiến dịch đã trích xuất hàng ngàn khóa bí mật nhạy cảm của các dịch vụ đám mây, container registry và nền tảng AI.
Vector tấn công và cơ chế chiếm quyền kiểm soát tài khoản bảo trì
Chiến dịch GhostAction khai thác điểm yếu căn bản trong quản trị danh tính người dùng: rò rỉ mã token truy cập cá nhân (Personal Access Token – PAT) thông qua các phần mềm đánh cắp thông tin (infostealers) hoặc các vụ rò rỉ cơ sở dữ liệu xác thực trước đó.
Kẻ tấn công không cần khai thác lỗ hổng zero-day trong hạ tầng của GitHub. Thay vào đó, chúng sử dụng các thông tin định danh hợp lệ của những nhà bảo trì có uy tín cao – tiêu biểu như tài khoản của Takashi Kitao (dự án game engine pyxel) và Henry Wu (uber/athenadriver) – để thực thi quyền ghi trực tiếp (direct write) lên nhánh mặc định của hàng trăm kho mã nguồn mà không qua quy trình phê duyệt Pull Request (PR) hay rào cản kiểm duyệt đa bên.

Kỹ thuật thu hoạch bí mật đa tầng qua quy trình CI/CD
Tệp cấu hình độc hại (thường đặt tên là security-audit.yml hoặc github_actions_security.yml) được thiết kế để ngụy trang dưới dạng một tiến trình kiểm tra bảo mật định kỳ. Cơ chế hoạt động của payload bao gồm các bước giải cấu trúc sâu:
- 1. Trích xuất môi trường thực thi (Environment Dump): Kích hoạt khi có sự kiện đẩy mã (push event) trên mọi nhánh và thẻ tag, khởi tạo môi trường runner với tham số checkout sâu toàn diện (fetch-depth: 0).
- 2. Quét biểu thức chính quy (Regex Pattern Matching): Thuật toán quét đối soát 13 mẫu cấu trúc định danh đặc thù, bao gồm khóa truy cập AWS IAM, khóa API của các mô hình ngôn ngữ lớn (OpenAI, Anthropic, OpenRouter), token xác thực kho gói phần mềm (npm, PyPI, DockerHub) và token bot dịch vụ (Slack, Discord, Telegram).
- 3. Rà soát ngược lịch sử Commit (Git History Traversal): Mã độc phân tích toàn bộ cây lịch sử commit trong quá khứ nhằm thu thập các khóa bí mật từng bị vô tình đưa lên kho mã nguồn nhưng đã bị xóa bỏ ở các bản vá sau đó.
- 4. Kênh truyền dữ liệu ngoại vi (Exfiltration Channel): Đóng gói toàn bộ bí mật và định danh kho lưu trữ, truyền tải trực tiếp về địa chỉ IP điều khiển 193.32.204[.]199 qua lệnh curl mà không cần mã hóa phức tạp.
Rủi ro nhân bản qua mạng lưới phân nhánh (Fork Cascade Vulnerability)
Báo cáo từ Socket và StepSecurity chỉ ra nguy cơ tiềm tàng nằm ở cơ chế kế thừa phân nhánh. Khi một kho lưu trữ chính bị nhiễm mã độc workflow, hàng trăm nhánh rẽ (forks) liên kết cũng tự động mang theo tệp cấu hình độc hại này.
Nếu các nhánh rẽ tư nhân (private forks) bật tính năng GitHub Actions, mỗi lần lập trình viên thực hiện thao tác đẩy mã mới sẽ vô tình kích hoạt chu trình trích xuất bí mật nội bộ của chính tổ chức đó, mở rộng phạm vi xâm nhập sang các môi trường phát triển đóng kín mà tin tặc vốn không thể tiếp cận trực tiếp từ Internet công cộng.
Khuyến nghị củng cố phòng thủ đường ống CI/CD doanh nghiệp
Sự cố GhostAction là minh chứng rõ nét cho thấy đường ống CI/CD đang trở thành mục tiêu hàng đầu của các tác nhân đe dọa chuỗi cung ứng. Để ngăn chặn các rủi ro tương tự, đội ngũ bảo mật DevSecOps cần triển khai các biện pháp kiểm soát nghiêm ngặt:
- Áp dụng nguyên tắc đặc quyền tối thiểu (Least Privilege) cho token GITHUB_TOKEN, mặc định cấu hình permissions: read-all cho mọi workflow.
- Sử dụng giải pháp OpenID Connect (OIDC) thay thế hoàn toàn cho các khóa bí mật tĩnh có tuổi thọ dài (long-lived secrets).
- Kích hoạt cơ chế chặn đẩy mã trực tiếp lên nhánh chính (Branch Protection Rules), bắt buộc phải có chữ ký số xác thực (commit signing) và quy trình bình duyệt mã độc lập trước khi tích hợp vào nhánh sản phẩm.






















