~/VibeHandbook
PDF miễn phí

Chương 18 · 09

Tóm tắt và Luyện tập

Những điểm chính cần nhớ

  • Mã do AI tạo ra mặc định là không an toàn; hãy giả định một lỗ hổng tồn tại và đi tìm nó thay vì tin tưởng vào ấn tượng ban đầu có vẻ sạch sẽ.
  • Các nhóm lớn lặp đi lặp lại: injection, bị lộ, thiếu phân quyền, tải file lên không an toàn, và các bị bịa ra.
  • Phân quyền diễn ra theo từng yêu cầu, không phải theo từng lần đăng nhập — mọi phải kiểm tra rằng người dùng này được phép thực hiện hành động này, không chỉ rằng họ đã đăng nhập.
  • Chạy một bộ quét secret như gitleaks trước mỗi lần push, và xoay vòng bất kỳ key nào từng bị rò rỉ; gắn việc quét vào để bạn không thể bỏ qua nó.
  • Ngày thứ chín mươi nguy hiểm hơn ngày đầu tiên — hãy làm cho cổng soát bảo mật đủ rẻ để không bỏ qua và đủ tự động để không thể bỏ qua.

Thử làm

Hãy lấy bất kỳ tính năng nào của bạn chạm vào xác thực, dữ liệu người dùng, hoặc tải file lên và chạy kiểm tra đối kháng bên dưới với nó. Với mỗi lỗ hổng mà AI báo cáo, hãy yêu cầu yêu cầu (request) chính xác khai thác nó và cách sửa tối thiểu, sau đó áp dụng cách sửa và chạy lại prompt. Kết thúc bằng cách chạy gitleaks (hoặc công cụ quét secret của nền tảng bạn) trên repo và lịch sử của nó.

Prompt của chương

Here is the code for a feature that handles [auth / user data / uploads]:
[paste the code].
Act as an attacker reviewing this for security holes. Specifically check:
  - broken authorization (can a user act on another user's data?)
  - injection via input (SQL injection, XSS, command injection)
  - exposed secrets or keys in code or responses
  - unsafe file handling (type, size, path, generated names)
  - missing validation or rate limits
For EACH issue, show the exact request that exploits it, then the fix.
Do NOT reassure me — assume there IS a vulnerability and find it.

Muốn bản ngoại tuyến?

Tải trọn cuốn sách dưới dạng PDF hoặc EPUB — miễn phí.