Plugin security-guidance: Claude tự rà lỗi bảo mật ngay khi viết code
Tóm tắt
Plugin security-guidance cho Claude tự rà lỗi bảo mật ở ba điểm: khi sửa file, cuối lượt và khi commit, rồi sửa ngay trong phiên. Thêm threat model riêng bằng file guidance; nó chỉ nhắc chứ không chặn, nên vẫn cần Code Review và CI.
AI viết code nhanh, nhưng cũng có thể viết nhanh các lỗi bảo mật kinh điển: SQL injection, eval trên dữ liệu người dùng, innerHTML chưa lọc. Đợi tới lúc review PR mới bắt thì muộn và tốn công. Plugin security-guidance của Anthropic cho Claude tự rà soát code mình vừa viết ngay trong phiên và sửa luôn, trước khi code tới pull request. Cài một lần, chạy tự động, không cần nhớ lệnh nào.
Cài đặt
/plugin install security-guidance@claude-plugins-official
// Bật cho cả team: .claude/settings.json
{ "enabledPlugins": { "security-guidance@claude-plugins-official": true } }
Cần Python 3.7+ (rà soát agentic khi commit cần 3.10+) và thư mục là git repo. Lần chạy đầu, plugin tạo môi trường ảo dưới ~/.claude/security/.
Ba lớp kiểm tra
| Thời điểm | Cách kiểm tra | Bắt được | Chi phí |
|---|---|---|---|
| Mỗi lần sửa file | So khớp mẫu, không gọi model | eval(, os.system, pickle, innerHTML =, sửa file workflow GitHub | Miễn phí |
| Cuối mỗi lượt | Model riêng review git diff, chạy nền | Vượt quyền, IDOR, injection, SSRF, mã hoá yếu | Một lần gọi model mỗi lượt có sửa file |
| Khi Claude commit/push | Review agentic, đọc cả code xung quanh | Lỗi cần ngữ cảnh rộng, ít báo nhầm | Có thể nhiều lượt model mỗi commit |
Review cuối lượt xem tối đa 30 file thay đổi và không chạy quá ba lần liên tiếp; review commit giới hạn 20 lần mỗi giờ. Người review là một lời gọi Claude riêng với context mới, không phải model vừa viết code tự chấm mình.
Thêm quy tắc riêng
.claude/claude-security-guidance.md: mô tả threat model bằng lời, ví dụ "mọi route/adminphải gọirequire_role("admin")trước khi đọc database"..claude/security-patterns.yaml(hoặc.json): thêm mẫu regex hay chuỗi cho lớp kiểm tra khi sửa file, ví dụ cảnh báo khi thấy tiền tố API keysk_live_.
Cả hai chỉ bổ sung: không thể tắt kiểm tra có sẵn bằng file này.
Đặt trong bức tranh chung
| Giai đoạn | Công cụ |
|---|---|
| Trong phiên | Plugin security-guidance |
| Khi bạn yêu cầu | /security-review trên nhánh hiện tại |
| Pull request | Code Review (gói Team/Enterprise) |
| CI | Static analysis, quét dependency hiện có |
Rủi ro và lưu ý
- Không chặn, chỉ nhắc: không lớp nào chặn ghi file hay commit; Claude nhận phát hiện như chỉ dẫn để sửa. Cần chặn cứng thì dùng hook hoặc CI.
- Model có thể bỏ sót: coi đây là một lớp phòng thủ, không phải đảm bảo.
- Chỉ xem commit do Claude tạo: commit bạn chạy từ shell (kể cả lệnh
!trong phiên) không được review. - Tốn thêm usage: review mặc định chạy trên Opus; đổi bằng
SECURITY_REVIEW_MODELvàSG_AGENTIC_MODEL.
Áp dụng thế nào?
- Dev: Cài ở scope user để mọi dự án đều có; xem log tại
~/.claude/security/log.txtnếu không thấy review. - Tech Lead: Viết
claude-security-guidance.mdtừ các lỗi bảo mật đã gặp thật, commit vào repo. - PM/Security: Đo số phát hiện được sửa ngay trong phiên; đó là lỗi không bao giờ tới PR.
Nguồn & tham khảo
- Catch security issues as Claude writes code — Claude Code Docs