Security headers là các response header điều khiển hành vi browser để chặn tấn công — Helmet.js (app.use(helmet())) set sẵn bộ mặc định hợp lý.
- Strict-Transport-Security —
max-age=31536000; includeSubDomains: ép HTTPS, chặn SSL stripping. - X-Content-Type-Options: nosniff — chặn MIME sniffing, browser không tự đoán content type khác header — ngăn polyglot file attack.
- X-Frame-Options: DENY/SAMEORIGIN — chống clickjacking; CSP
frame-ancestorslà bản thay thế linh hoạt hơn. - Referrer-Policy — browser hiện đại mặc định
strict-origin-when-cross-origin(Chrome 85+); dùngno-referrercho trang nhạy cảm. - Permissions-Policy — tắt browser API không dùng:
geolocation=(), camera=(), microphone=(). - COOP/COEP —
Cross-Origin-Opener-Policy: same-origin+Cross-Origin-Embedder-Policy: require-corpbật process isolation, cần cho SharedArrayBuffer. - X-XSS-Protection — đã deprecated, không cần set.
Test site bằng securityheaders.com.