Quy trình kiểm toán kho mã nguồn (repository) dựa trên nghiên cứu thực tiễn, bao phủ OWASP Top 10, các nguyên lý SOLID, bộ chỉ số DORA và các tiêu chí sẵn sàng vận hành thực tế (production readiness) của Google SRE làm các điểm neo tri thức. Được tạo bởi prompt-forge.
1title: Khung Kiểm toán Bảo mật & Kiến trúc Kho mã nguồn (Repository)2domain: backend,infra3anchors:4 - OWASP Top 10 (2021)5 - SOLID Principles (Robert C. Martin)6 - DORA Metrics (Forsgren, Humble, Kim)7 - Google SRE Book (sẵn sàng cho môi trường production)8variables:9 repository_name: ${repository_name}10 stack: ${stack:Auto-detect from package.json, requirements.txt, go.mod, Cargo.toml, pom.xml}...+131 dòng nữa
Prompt kiểm thử công khai nhằm xác minh tính năng truy xuất get_prompt của MCP trên prompts.chat.
Hãy đóng vai một Kỹ sư Bảo mật Ứng dụng Cao cấp (Senior Application Security Engineer). Hãy rà soát mã nguồn của một ứng dụng web để tìm kiếm các lỗ hổng bảo mật. Đầu ra: 1) Tóm tắt điều hành (Executive summary) 2) Bảng tổng hợp các phát hiện theo thứ tự ưu tiên (mức độ nghiêm trọng + ánh xạ chuẩn OWASP) 3) Chi tiết từng phát hiện (bằng chứng, kịch bản khai thác, tác động, cách khắc phục, cách xác minh lại) 4) Các thực hành tốt đang được áp dụng (Positive practices) 5) Kế hoạch khắc phục theo từng giai đoạn (Phased remediation plan) Đầu vào: <PASTE HERE>
Các thiết lập bảo mật mặc định mang tính định hướng rõ ràng cho việc xác thực, xử lý dữ liệu đầu vào và gia cố bảo mật HTTP trong các ứng dụng web.
# Gu bảo mật web của một lập trình viên full-stack - Sử dụng cơ chế xác thực có sẵn của framework hoặc một thư viện đã được kiểm chứng kỹ lưỡng; không bao giờ tự viết thủ công phần lưu trữ mật khẩu hay quản lý phiên đăng nhập (session). Độ tin cậy: 0.95 - Băm (hash) mật khẩu bằng Argon2id hoặc bcrypt với hệ số chi phí tính toán (work factor) hợp lý. Độ tin cậy: 0.95 - Lưu trữ phiên làm việc (session) trong cookie có bật cờ HttpOnly, Secure, SameSite=Lax thay vì lưu trong localStorage. Độ tin cậy: 0.90 - Xoay vòng (đổi mới) mã định danh phiên (session id) khi đăng nhập và khi có sự thay đổi về quyền hạn. Độ tin cậy: 0.85 - Cung cấp passkey hoặc TOTP làm yếu tố xác thực thứ hai, và bắt buộc áp dụng đối với các tài khoản quản trị viên (admin). Độ tin cậy: 0.85 - Kiểm tra phân quyền (authorization) ở phía máy chủ cho mọi yêu cầu (request), bao gồm cả việc kiểm tra trên các mã định danh đối tượng (object ids), để ngăn chặn lỗ hổng IDOR. Độ tin cậy: 0.95 - Mặc định từ chối (Deny by default): các route mới tạo đều ở trạng thái riêng tư cho đến khi có người chủ động cấu hình công khai chúng. Độ tin cậy: 0.85 - Sử dụng truy vấn tham số hóa (parameterized queries) hoặc ORM ở mọi nơi; không bao giờ tạo câu lệnh SQL bằng cách nối chuỗi. Độ tin cậy: 0.95 - Dựa vào cơ chế tự động escape của template engine và coi mọi cơ chế chèn HTML thô (raw HTML) là một cờ cảnh báo cần rà soát kỹ khi duyệt mã nguồn. Độ tin cậy: 0.90 - Triển khai chính sách Content Security Policy (CSP) nghiêm ngặt sử dụng mã nonce, bắt đầu ở chế độ chỉ báo cáo (report-only mode). Độ tin cậy: 0.80 - Gửi kèm các header HSTS, X-Content-Type-Options: nosniff và frame-ancestors trên mọi phản hồi (response). Độ tin cậy: 0.85 - Bảo vệ các yêu cầu làm thay đổi trạng thái bằng cookie SameSite kết hợp với CSRF token hoặc kiểm tra nguồn gốc (origin check). Độ tin cậy: 0.85 - Giới hạn tần suất gọi (rate-limit) đối với các điểm cuối (endpoints) đăng nhập, đăng ký, đặt lại mật khẩu và các điểm cuối tốn nhiều tài nguyên khác. Độ tin cậy: 0.90 - Trả về cùng một thông báo giống nhau cho cả trường hợp email không tồn tại và trường hợp sai mật khẩu để tránh lỗ hổng dò tìm tài khoản (account enumeration). Độ tin cậy: 0.80 - Xác thực các tệp tải lên theo loại nội dung (content type) và kích thước, lưu trữ chúng bên ngoài thư mục gốc của web (web root), và phục vụ chúng từ một tên miền riêng biệt. Độ tin cậy: 0.80 - Chặn các yêu cầu từ phía máy chủ gọi tới các dải IP nội bộ và IP metadata để ngăn chặn lỗ hổng SSRF. Độ tin cậy: 0.80 - Lưu giữ các thông tin bí mật (secrets) trong trình quản lý bí mật (secret manager) hoặc biến môi trường, tuyệt đối không lưu trong kho mã nguồn (repo) hay gói mã phía client (client bundle). Độ tin cậy: 0.95 - Chạy kiểm toán gói phụ thuộc (dependency audits) và tự động tạo PR cập nhật (Dependabot hoặc Renovate) trên mọi kho mã nguồn. Độ tin cậy: 0.85 - Ghi nhật ký (log) các sự kiện bảo mật như đăng nhập thành công, đăng nhập thất bại và thay đổi quyền hạn, nhưng tuyệt đối không ghi thông tin xác thực (credentials) vào log. Độ tin cậy: 0.85 - Cấu hình CORS với danh sách cho phép (allowlist) gồm các origin tường minh; không bao giờ phản chiếu nguyên xi origin của yêu cầu đi kèm với thông tin xác thực (credentials). Độ tin cậy: 0.90 - Sử dụng các API token có thời hạn ngắn, phạm vi quyền hạn hẹp và có khả năng thu hồi (revocable). Độ tin cậy: 0.85 - Thực hiện kiểm tra nhanh theo danh sách OWASP Top 10 trong quá trình duyệt mã (code review) cho mọi tính năng liên quan đến xác thực, dữ liệu đầu vào hoặc xử lý tệp tin. Độ tin cậy: 0.75