Lỗ hổng 0-click trên các AI coding agent: Kẻ tấn công có thể chiếm toàn quyền kiểm soát

Phần mềm17 tháng 9, 2026·5 phút đọc

Các nhà nghiên cứu bảo mật phát hiện lỗ hổng Plugin4Shell cho phép thực thi mã từ xa (RCE) không cần tương tác, ảnh hưởng đến mọi AI coding agent lớn như Claude Code, Codex, Gemini CLI và Copilot. Lỗ hổng khai thác cơ chế SHA-pinning của các marketplace plugin, có thể mở đường cho kẻ tấn công chiếm đoạt toàn bộ tài nguyên mà agent truy cập được.

Lỗ hổng 0-click trên các AI coding agent: Kẻ tấn công có thể chiếm toàn quyền kiểm soát

Các nhà nghiên cứu bảo mật vừa công bố một lỗ hổng nghiêm trọng có thể khiến hàng triệu lập trình viên sử dụng AI coding agent gặp rủi ro. Lỗ hổng này mang tên Plugin4Shell, cho phép thực thi mã từ xa (RCE) mà không cần bất kỳ tương tác nào từ người dùng — hay còn gọi là zero-click.

Theo nhóm săn lùng mối đe dọa tại Air, một startup bảo mật chuyên bảo vệ AI agent cho doanh nghiệp, đây là "cuộc tấn công chuỗi cung ứng AI đầu tiên thuộc dạng này". Điều đáng lo ngại là lỗ hổng ảnh hưởng đến tất cả các AI coding agent lớn hiện nay: Claude Code của Anthropic, Codex của OpenAI, Gemini CLI của Google, Copilot của Microsoft và GitHub Copilot thuộc sở hữu Microsoft.

Lỗ hổng nằm ở đâu?

Điểm mấu chốt của vấn đề nằm ở cách các agent thực thi cơ chế SHA-pinning của marketplace. Cơ chế này được thiết kế để khóa plugin và skill của agent vào một commit hash cố định, bất biến — thay vì tham chiếu đến một nhánh hay tag có thể thay đổi.

Mục đích ban đầu rất hợp lý: nếu một kho skill công khai bị xâm phạm, agent của bạn vẫn tiếp tục chạy đúng đoạn mã đã được kiểm duyệt thay vì tự động kéo về payload độc hại mới. Tuy nhiên, nhóm nghiên cứu phát hiện ra rằng agent thực hiện checkout đúng commit mà marketplace ghim, nhưng không bao giờ xác minh rằng mã đó thực sự nằm ở đó.

"Kẻ tấn công kiểm soát repo của plugin có thể khiến quá trình checkout trả về mã độc trong khi phần ghim vẫn trông như được tuân thủ. Kết quả là thực thi mã từ xa không cần tương tác."

Chính tính năng tự động cập nhật plugin của các agent biến lỗ hổng này thành cuộc tấn công zero-click. Khi một commit được ghim bị thay thế ở phía nguồn, plugin của agent lập tức bị hoán đổi bằng phiên bản độc hại. Cả Claude và Codex đều tự động cập nhật plugin đã cài đặt theo mặc định.

Hai kịch bản tấn công

Nhóm nghiên cứu mô tả hai cách khai thác lỗ hổng này:

  • Kịch bản thứ nhất: Kẻ tấn công gửi một plugin vô hại lên marketplace uy tín, plugin vượt qua kiểm duyệt, sau đó kẻ tấn công thay thế nội dung vô hại bằng mã độc.
  • Kịch bản thứ hai: Chiếm đoạt (hijack) repository của một tác giả hợp pháp, rồi đẩy phiên bản độc hại đến mọi agent đã cài đặt plugin đó — về cơ bản là vô hiệu hóa cơ chế SHA-pinning vốn được tạo ra để ngăn chặn chính kiểu tấn công chuỗi cung ứng này.

Đội ngũ Air đã chứng minh kịch bản chiếm đoạt trong các bằng chứng khái niệm trước đó mang tên SkillJackingRepoJacking. Họ khẳng định chuỗi tấn công đã được chứng minh từ đầu đến cuối: các cuộc chiếm đoạt xảy ra ở quy mô lớn, và Plugin4Shell đánh bại cơ chế được xây dựng để ngăn chặn chúng.

Tình trạng vá lỗi: chia rẽ giữa các nhà cung cấp

Air đã báo cáo vấn đề này cho cả bốn nhà cung cấp từ tháng 6. Kết quả đến nay khá trái chiều:

  • Anthropic đã vá trong Claude Code phiên bản 2.1.179
  • OpenAI đã vá trong Codex phiên bản 0.146.0
  • Google đã ngừng phát triển Gemini CLI và tuyên bố sẽ không vá, nghĩa là mọi bản cài đặt vẫn dễ bị tổn thương. Google khuyến nghị người dùng chuyển sang môi trường phát triển agent mới hơn là Antigravity, vốn được bảo vệ trước cuộc tấn công này.
  • Microsoft không sửa lỗi trong Copilot

Đáng chú ý, theo Microsoft, gần 90% công ty trong Fortune 500 đang sử dụng Copilot. Đây là một trong hai nhà cung cấp không phát hành bản vá cho lỗ hổng.

Phía GitHub cho biết các cuộc tấn công Plugin4Shell không ảnh hưởng đến nền tảng của họ:

"Để ngăn chặn việc lạm dụng SHA, GitHub không cho phép người dùng tạo tên nhánh hoặc tag giống với commit SHA."

Tuy nhiên, nhóm nghiên cứu Air phản bác rằng biện pháp giảm thiểu này không đủ để đánh bại Plugin4Shell, bởi vì marketplace cũng có thể được lưu trữ trên các nền tảng khác như Bitbucket. Microsoft Copilot vẫn dễ bị tổn thương vì nó hỗ trợ cả marketplace từ những nền tảng như vậy. Air cho biết họ cũng đã báo cáo vấn đề cho Microsoft từ tháng 6 nhưng chưa nhận được phản hồi do khối lượng báo cáo mà hãng đang phải xử lý.

Microsoft chưa trả lời ngay yêu cầu bình luận từ phía báo chí.

Ý nghĩa với người dùng Việt Nam

Với các lập trình viên Việt Nam đang ngày càng phổ biến sử dụng AI coding agent để tăng tốc công việc, lỗ hổng này là lời cảnh tỉnh rõ ràng. Khi một agent bị chiếm quyền, kẻ tấn công có thể truy cập toàn bộ tài nguyên và dữ liệu mà agent đó chạm tới — từ mã nguồn, khóa API, cho đến quyền truy cập vào hệ thống production.

Các chuyên gia khuyến nghị:

  • Cập nhật ngay Claude Code và Codex lên phiên bản mới nhất
  • Cân nhắc chuyển đổi khỏi Gemini CLI nếu đang sử dụng
  • Hạn chế cài đặt plugin từ marketplace không cần thiết, đặc biệt với các agent dùng trong môi trường doanh nghiệp
  • Giám sát quyền truy cập mà agent được cấp, áp dụng nguyên tắc đặc quyền tối thiểu

Câu chuyện Plugin4Shell cũng cho thấy một thực tế đáng suy ngẫm: khi AI agent trở thành một phần thiết yếu trong quy trình phát triển phần mềm, chuỗi cung ứng plugin của chúng cũng trở thành mục tiêu tấn công hấp dẫn — và các cơ chế bảo mật tưởng chừng vững chắc vẫn có thể bị vượt qua nếu không được kiểm tra kỹ lưỡng.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗