Cài MCP và skill “cho vui”? Hiểu prompt injection trước khi agent làm điều bạn không muốn
Tóm tắt
Prompt injection là khi nội dung agent đọc (trang web, file, kết quả tool) chứa chỉ thị nhằm điều khiển agent. Rủi ro tăng khi agent vừa đọc dữ liệu không tin cậy, vừa có quyền truy cập dữ liệu nhạy cảm, vừa có kênh gửi ra ngoài. Cắt một trong ba yếu tố đó là cách phòng thủ hiệu quả nhất.
Bộ ba nguy hiểm
| Yếu tố | Ví dụ |
|---|---|
| Đọc nội dung không tin cậy | Web, email, issue/PR của người lạ, tài liệu tải về |
| Truy cập dữ liệu riêng | Mã nguồn nội bộ, .env, database, hộp thư |
| Có kênh gửi ra ngoài | HTTP request, gửi email, tạo issue công khai, push code |
Nguyên tắc phòng thủ
- Chỉ cài MCP/skill từ nguồn bạn đã đọc: đọc SKILL.md, script đi kèm, xem tool nào được khai báo.
- Quyền tối thiểu: token GitHub chỉ đọc khi chỉ cần đọc; bật chế độ read-only của MCP nếu có.
- Giữ permission prompt: tránh
--dangerously-skip-permissionsngoài sandbox. - Deny rule + hook: chặn đọc file bí mật, chặn lệnh mạng tới domain lạ.
- Tách phiên: phiên nghiên cứu web không cầm credential production.
- Review trước khi gửi: email, PR, bình luận do agent soạn phải qua mắt người.
Tham khảo: Claude Code security · MCP security best practices