Trình phân tích Security Headers
Dán header phản hồi HTTP thô từ curl -I hoặc tab Network của DevTools và nhận đánh giá bảo mật theo điểm — một trình phân tích cú pháp Content-Security-Policy thực thụ cùng với HSTS, X-Frame-Options, cờ cookie và hơn thế nữa, hoàn toàn ngoại tuyến.
🔒 Được xử lý hoàn toàn trong trình duyệt của bạn — không có nội dung nào bạn nhập ở đây được tải lên.
Kết quả
Header phản hồi chứa hầu hết chính sách bảo mật thực thi trên trình duyệt của một trang web, nhưng việc đọc chúng bằng mắt thường rất dễ sai: một Content-Security-Policy thoạt nhìn có vẻ nghiêm ngặt nhưng lại âm thầm cho phép script 'unsafe-inline', và một header Strict-Transport-Security có thể xuất hiện với max-age quá ngắn đến mức gần như vô dụng. Công cụ này lấy khối header thô bạn dán vào — được sao chép trực tiếp từ curl -I, Postman hoặc một yêu cầu trong tab Network của DevTools trên trình duyệt — và chạy nó qua cùng loại kiểm tra được sử dụng bởi các trình chấm điểm header trực tuyến nổi tiếng, hoàn toàn bên trong trình duyệt của bạn. Không có gì bị truy vấn: bất cứ thứ gì bạn dán là tất cả những gì được phân tích, có nghĩa là nó hoạt động giống hệt nhau cho một trang web sản xuất công khai, một máy chủ staging nội bộ hoặc một điểm cuối nằm sau tường lửa mà không trình quét bên ngoài nào có thể tiếp cận.
Trọng tâm là một trình phân tích cú pháp Content-Security-Policy thực thụ, không phải một danh sách kiểm tra. Giá trị của header được chia theo dấu chấm phẩy thành các chỉ thị, và danh sách nguồn của mỗi chỉ thị được chia nhỏ và kiểm tra theo các điều khoản riêng: các chỉ thị liên quan đến script và style bị gắn cờ nếu chúng cho phép 'unsafe-inline' hoặc 'unsafe-eval', bất kỳ chỉ thị nào cũng bị gắn cờ vì nguồn ký tự đại diện '*' thuần túy (với mức độ nghiêm trọng cao hơn khi ký tự đại diện đó nằm trên script-src, object-src, base-uri hoặc default-src), các nguồn giản lược rộng như 'https:' trên một chỉ thị script được coi là gần như dễ dãi như một ký tự đại diện, và toàn bộ chính sách được kiểm tra xem có thiếu default-src dự phòng và các chỉ thị đã lỗi thời (block-all-mixed-content, plugin-types, referrer, reflected-xss) mà các trình duyệt hiện đại đơn giản là bỏ qua hay không. Một CSP chỉ được gửi dưới dạng Content-Security-Policy-Report-Only được nhận diện và gắn cờ là chưa thực sự được thực thi, khác với một chính sách hoàn toàn bị thiếu.
Ngoài CSP, công cụ còn kiểm tra Strict-Transport-Security bằng cách phân tích chỉ thị max-age của chính nó và gắn cờ các giá trị dưới khoảng sáu tháng là quá ngắn để có hiệu quả đáng kể, cộng với việc includeSubDomains và preload có được đặt hay không. X-Content-Type-Options phải là chuỗi chính xác 'nosniff' nếu không sẽ bị gắn cờ là bị trình duyệt bỏ qua. X-Frame-Options được kiểm tra DENY hoặc SAMEORIGIN, nhưng công cụ cũng nhận biết rằng chỉ thị CSP frame-ancestors là sự thay thế hiện đại cho khả năng bảo vệ chống clickjacking — nếu chỉ thị đó tồn tại, X-Frame-Options được coi là đã được che phủ ngay cả khi bản thân header cũ bị thiếu. Referrer-Policy được kiểm tra dựa trên danh sách thực tế các từ khóa hợp lệ và bị gắn cờ nếu được đặt thành giá trị 'unsafe-url' làm rò rỉ URL, Permissions-Policy được kiểm tra sự hiện diện và mọi dòng Set-Cookie tìm thấy đều được phân tích các thuộc tính Secure, HttpOnly và SameSite của chính nó, bao gồm quy tắc cụ thể rằng cookie SameSite=None không có Secure sẽ bị trình duyệt âm thầm từ chối.
Mỗi lần kiểm tra đều tạo ra một trong ba trạng thái trung thực — tốt, cần chú ý hoặc bị thiếu — kèm theo lời giải thích bằng ngôn ngữ dễ hiểu về lý do tại sao header đó quan trọng đối với các cuộc tấn công thực tế (XSS, clickjacking, đánh cắp cookie, hạ cấp giao thức) và điểm A-F tổng thể là tổng điểm minh bạch của từng header thay vì một điểm số hộp đen. Báo cáo đầy đủ có thể được sao chép dưới dạng văn bản thuần túy chỉ bằng một cú nhấp chuột để dán vào pull request, ticket hoặc đánh giá bảo mật, và bởi vì việc phân tích diễn ra hoàn toàn từ văn bản đã dán, công cụ này hữu ích như nhau cho việc kiểm tra header của chính trang web của bạn, xem xét phản hồi của nhà cung cấp trước khi tích hợp hoặc kiểm tra lại một thay đổi cấu hình trước khi nó được triển khai.