GuardFall: Lỗ hổng ‘Shell Injection’ cũ kỹ đe dọa các AI Coding Agent phổ biến
Nghiên cứu mới từ Adversa AI cảnh báo về GuardFall, một kỹ thuật bypass cho phép kẻ tấn công thực thi lệnh độc hại trên các AI coding agent bằng cách lợi dụng cơ chế xử lý shell của hệ điều...
Các công cụ hỗ trợ lập trình bằng AI (AI coding agent) đang đối mặt với một rủi ro bảo mật nghiêm trọng mang tên GuardFall. Đây là một kỹ thuật tấn công cho phép vượt qua các lớp kiểm soát an ninh, vốn được thiết kế để ngăn chặn AI thực thi những lệnh nguy hiểm trên hệ thống của người dùng.
Table Of Content
Cơ chế tấn công GuardFall
Theo các nhà nghiên cứu tại Adversa AI, GuardFall khai thác sự khác biệt trong cách các bộ lọc bảo mật (thường là blocklist) và trình thông dịch lệnh (bash) xử lý văn bản. Trong khi các AI agent kiểm tra lệnh dưới dạng chuỗi văn bản thuần túy để tìm các từ khóa cấm, thì bash lại thực hiện các thao tác tiền xử lý như loại bỏ dấu ngoặc kép hoặc mở rộng các phím tắt trước khi thực thi thực tế.
Ví dụ, một bộ lọc có thể chặn lệnh rm, nhưng lại không nhận diện được r''m. Trình thông dịch bash sẽ tự động loại bỏ các dấu ngoặc kép trống và thực thi lệnh xóa file như bình thường. Kỹ thuật này không phải là một lỗi phần mềm đơn lẻ (CVE) mà là một vấn đề hệ thống trong cách các agent tương tác với shell.
Phạm vi ảnh hưởng
Nghiên cứu đã thử nghiệm trên 11 AI coding agent phổ biến và phát hiện 10 trong số đó dễ bị tấn công, bao gồm: opencode, Goose, Cline, Roo-Code, Aider, Plandex, Open Interpreter, OpenHands, SWE-agent và Hermes. Chỉ duy nhất công cụ Continue được thiết kế với cơ chế phòng thủ hiệu quả bằng cách phân tích cú pháp lệnh tương tự như cách bash thực hiện trước khi quyết định cho phép thực thi.
Khi bị khai thác, kẻ tấn công có thể lợi dụng quyền hạn của AI để đánh cắp các thông tin nhạy cảm như SSH keys, cloud credentials hoặc xóa sạch dữ liệu trên máy tính của người dùng.
Khuyến nghị bảo mật
Để giảm thiểu rủi ro trong khi chờ đợi các bản cập nhật từ nhà phát triển, người dùng nên áp dụng các biện pháp sau:
- Sử dụng môi trường cô lập: Chạy các AI agent trong các thư mục tạm thời hoặc container, tách biệt với các thư mục chứa thông tin nhạy cảm như
~/.sshhay~/.aws. - Tắt tính năng tự động thực thi: Vô hiệu hóa các flag như
--auto-exec,--auto-runhoặc--auto-testđể kiểm soát thủ công mọi lệnh mà AI dự định chạy. - Thận trọng với các file cấu hình: Không nên tin tưởng tuyệt đối vào các file cấu hình đi kèm trong repository (ví dụ:
.aider.conf.yml) vì chúng có thể chứa các chỉ dẫn độc hại. - Kiểm soát nguồn đầu vào: Tránh để AI agent xử lý các pull request từ các nguồn không xác định hoặc các fork lạ.
GuardFall là lời cảnh báo về việc các AI agent hiện nay đang được cấp quyền truy cập quá sâu vào hệ thống mà thiếu đi các lớp bảo mật đủ thông minh để hiểu được bối cảnh thực thi của các lệnh shell.
Nguồn tham khảo: The Hacker News



No Comment! Be the first one.