Checklist bảo mật AI Agent: Cần kiểm tra gì trước khi giao việc
Checklist thực tế để kiểm tra tool, prompt, ranh giới dữ liệu, quyền, log và phê duyệt trước khi AI agent hành động.
Cập nhật lần cuối vào

AI agent đang đi từ chat sang công việc thật. Nó có thể đọc file, mở trang web, gọi tool, tạo pull request, cập nhật record và ra quyết định qua nhiều bước. Vì vậy câu hỏi bảo mật không còn chỉ là “model trả lời sai không?”, mà là “nếu hệ thống tin nhầm input, nó có thể làm gì?”
Checklist bảo mật AI agent là bước review trước khi giao việc thật. Nó kiểm tra prompt, tool, nguồn dữ liệu, quyền, bộ nhớ, log và điểm phê duyệt của con người.
Điều gì đã thay đổi
Rủi ro ban đầu của sản phẩm AI thường xoay quanh văn bản được sinh ra. Model có thể hallucinate, lộ context hoặc làm theo chỉ dẫn độc hại. Agent mở rộng bề mặt rủi ro vì nó nối reasoning của model với hệ thống bên ngoài.
Workflow agent có thể gồm file local, repository, ticket, database, tool qua API hoặc MCP, hành động trình duyệt, memory, credential và kế hoạch nhiều bước.
Vì vậy “prompt tốt hơn” là chưa đủ. Agent đáng tin cần ranh giới rõ: dữ liệu nào đáng tin, tool nào được gọi, hành động nào cần xác nhận và log nào dùng để audit.
Ba lớp rủi ro
| Lớp | Rủi ro | Câu hỏi review |
|---|---|---|
| Instructions | Trang web, email, ticket hoặc tài liệu cố ghi đè luật | Agent có phân biệt instruction của user và content không đáng tin không? |
| Tools | Tool quá quyền, metadata độc hại hoặc kết hợp nguy hiểm | Agent chỉ thấy tool cần cho task này không? |
| Data | Dữ liệu không đáng tin bị coi là metadata, nguồn file hoặc execution context | Hệ thống có tách trusted data khỏi external data không? |
Vấn đề mới là agent không chỉ đọc text độc hại. Nó có thể dùng text đó để chọn tool, click, viết code hoặc sửa dữ liệu.
Prompt injection, tool poisoning và data injection
| Rủi ro | Nghĩa đơn giản | Ví dụ |
|---|---|---|
| Prompt injection | Content không đáng tin cố thay instruction | Web page yêu cầu tiết lộ hidden instruction |
| Tool poisoning | Mô tả hoặc metadata tool làm model chọn sai tool | Tool giả nói nó nên xử lý mọi dữ liệu tài chính |
| Agent data injection | Dữ liệu độc hại giả làm context đáng tin | Repository hoặc tool response thao túng file path, origin hoặc execution context |
Content nguy hiểm có thể trông như link, label, tên tool, nguồn file, patch hoặc response có cấu trúc.
Checklist trước khi giao việc
| Kiểm tra | Mặc định tốt | Tín hiệu rủi ro |
|---|---|---|
| Scope task | Một việc rõ và một điều kiện thành công | Agent được bảo xử lý mọi thứ |
| Ranh giới dữ liệu | Trusted input tách khỏi external content | Web, email, ticket và output tool trộn lẫn |
| Tool inventory | Mỗi tool có owner, mục đích và permission | Toolbox lớn và mơ hồ |
| Permission | Read-only mặc định; write cần approval | Agent tự edit, delete, deploy, pay hoặc email |
| Credential | Token có scope và rotation | Token rộng hoặc dùng lại giữa service |
| Human approval | Hành động external hoặc destructive cần review | Aksi irreversible trong một lần chạy |
| Logging | Lưu prompt, tool call, output, approval và final action | Chỉ thấy câu trả lời cuối |
| Test set | Có case bình thường, rối và adversarial | Chỉ demo happy path |
Nguyên tắc đơn giản: nếu hành động khó hoàn tác, agent không nên tự làm khi chưa có người duyệt.
Review riêng cho MCP
Trước khi dùng MCP server, hãy hỏi:
- Ai sở hữu server và implementation có đáng tin không?
- Nó expose dữ liệu và hành động nào?
- Tên và mô tả tool có đủ rõ không?
- Scope có thể thu hẹp theo task hoặc user không?
- Authorization có consent theo client và redirect URI chính xác không?
- Token được cấp cho MCP server hay bị pass-through quá rộng?
- Client có chặn request tới internal hoặc metadata endpoint không?
- Tool call có log đủ chi tiết không?
Setup MCP an toàn không phải setup có nhiều tool nhất, mà là setup chỉ mở đúng tool cần thiết.
Checklist cho coding agent
| Trước khi cho phép | Kiểm tra |
|---|---|
| Sửa file | Giới hạn working directory và review patch |
| Command | Tách read-only khỏi install, delete, deploy hoặc mutate state |
| Dependency | Kiểm tra package name, registry, lockfile và postinstall |
| Secrets | Không để token vào prompt, log, file hoặc shell history |
| Pull request | Cần test, diff review và provenance rõ |
| External input | Coi issue, README, comment và web snippet là untrusted data |
Coding agent có thể tăng năng suất, nhưng đường review phải còn nhìn thấy được.
Team nhỏ có thể làm gì tuần này
- Chọn một workflow lặp lại, như tóm tắt ticket hoặc draft PR.
- Chạy với quyền read-only trước.
- Ghi lại mọi tool agent có thể gọi.
- Xóa tool không cần thiết.
- Thêm approval cho write action, message bên ngoài, purchase, deploy và delete.
- Lưu raw prompt, tool call, output và final action.
- Test một case adversarial, ví dụ ticket yêu cầu bỏ qua luật.
Nếu agent không giải thích được nó tin dữ liệu nào, dùng tool nào và đã làm gì, workflow chưa sẵn sàng tự động.
Nhật ký cập nhật
Jul 09 2026: Xuất bản bản tiếng Việt với checklist bảo mật agent, review MCP, rủi ro coding agent, FAQ và nguồn tham khảo.