Các nhà nghiên cứu của Microsoft tiết lộ rằng trước đây, Anthropic's Claude Code GitHub Action đã tồn tại một lỗ hổng đã được vá. Kẻ tấn công có thể ẩn các lệnh độc hại trong issue, pull request hoặc bình luận trên GitHub, lừa AI coding agent đọc thông tin nhạy cảm và đánh cắp chứng chỉ trong quy trình CI/CD.
Cuộc tấn công sử dụng nội dung GitHub để kích hoạt
Microsoft cho biết trong bài đăng blog rằng, các rủi ro này xuất phát từ việc các đại lý AI sẽ trực tiếp xử lý nội dung văn bản bên ngoài trong quy trình phát triển, trong khi các luồng công việc liên quan thường có quyền truy cập vào các dữ liệu nhạy cảm như khóa API và thông tin xác thực dịch vụ đám mây. Một khi đại lý coi đầu vào không đáng tin cậy là lệnh có thể thực thi, rủi ro sẽ nhanh chóng gia tăng.
Theo cách kiểm tra của Microsoft, các nhà nghiên cứu đã thiết lập một luồng làm việc GitHub và ẩn các lệnh độc hại trong nội dung được trả về bởi miền mà họ kiểm soát, nhằm vượt qua một phần các biện pháp bảo mật của Claude. Sau đó, Claude Code bị lừa đọc các tệp chứa thông tin xác thực nhạy cảm và sửa đổi nội dung thông tin đó để tránh các công cụ quét khóa của chính nó và GitHub.
Chứng từ có thể bị rò rỉ qua nhiều kênh khác nhau
Microsoft cho biết, kẻ tấn công về mặt lý thuyết có thể lấy lại những thông tin này qua nhiều cách, bao gồm bình luận issue, nhật ký quy trình, yêu cầu web hoặc lệnh shell. Các nhà nghiên cứu còn chủ động cho phép người dùng không có quyền ghi có thể kích hoạt quy trình để xác minh rằng, ngay cả khi các biện pháp làm sạch biến môi trường được kích hoạt, cuộc tấn công vẫn có thể thành công.
Microsoft cho biết họ tiến hành nghiên cứu này vì trước đó đã quan sát thấy các nỗ lực tiêm prompt tương tự trong nhiều kho công khai liên quan đến nhà cung cấp. Điểm chung của các cuộc tấn công này là nội dung issue hoặc pull request do kẻ tấn công kiểm soát sẽ được đại diện AI đọc và từ đó ảnh hưởng đến hành vi gọi công cụ của nó.
Anthropic đã sửa vào tháng 5
Claude Code là đại lý mã hóa AI do Anthropic ra mắt vào tháng 10 năm ngoái. Công cụ này từng thu hút sự chú ý vào tháng 3 năm nay do rò rỉ nguồn mã, khi hơn 500.000 dòng mã bị rò rỉ, khiến các nhà nghiên cứu và nhà phát triển tiến hành phân tích rộng rãi về kiến trúc bên trong của nó.
Microsoft cho biết đã báo cáo vấn đề này cho Anthropic qua HackerOne vào ngày 29 tháng 4. Anthropic sau đó đã khắc phục vấn đề bằng cách phát hành phiên bản Claude Code 2.1.128 vào ngày 5 tháng 5.
Microsoft cho rằng, trường hợp này cho thấy khi các đại lý AI được tích hợp vào quy trình phát triển phần mềm, đầu vào bằng ngôn ngữ tự nhiên đang ngày càng tiến gần đến “mã có thể thực thi”. Trong bối cảnh này, các nội dung bên ngoài như GitHub issue, bình luận cần được mặc định coi là đầu vào không đáng tin cậy, nếu không, chỉ một thông điệp được xây dựng tinh vi cũng có thể trở thành lối vào để lấy được thông tin xác thực trong môi trường sản xuất.
