Security headers
HTTP response headers are the most effective protection layer against clickjacking, XSS, mixed content and tracking leaks — and they cost nothing. XICTRAQ checks the 9 most important headers (HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, COOP, CORP, COEP), additionally scans CSP for unsafe-inline/unsafe-eval/wildcards, scores the configuration and provides concrete code snippets for nginx, Apache, Caddy, IIS and Node/Express. Continuous monitoring: Free every 24 h, paid every 6 h.
# Header overview
The “Security” tab shows each of the 9 checked headers with status “Active” (green) or “Missing” (red) plus a brief explanation of what it protects against. Above, the overall Security Score (0–100) with its A+/A/B/C/D/F grade.
Security Score
9 HTTP headers + protocol checks
Security Headers
9 critical HTTP security headers
Strict-Transport-Security
Enforces HTTPS and prevents downgrade attacks
Content-Security-Policy
Controls which resources can be loaded (XSS protection)
X-Frame-Options
Prevents clickjacking via iframe embedding
X-Content-Type-Options
Prevents browser MIME type sniffing
Referrer-Policy
Controls what referrer information is sent
Permissions-Policy
Restricts browser APIs like camera, microphone, geolocation
Cross-Origin-Opener-Policy
Isolates the browsing context — protects against tab-napping / Spectre
Cross-Origin-Resource-Policy
Prevents unauthorized cross-origin resource loading
Cross-Origin-Embedder-Policy
Requires explicit CORP/CORS for embedded resources (Spectre protection)
# What XICTRAQ checks
HSTS — enforce HTTPS
Strict-Transport-Security: max-age, includeSubDomains, preload directive (detected from the header itself). The header counts as “preload-ready” at max-age ≥ 1 year plus includeSubDomains and preload. Recommendation: max-age=63072000 (2 years), includeSubDomains, preload.
CSP — control content origin
Content-Security-Policy is scanned for common weaknesses: 'unsafe-inline', 'unsafe-eval', overly permissive source lists ('* in script-src'), missing default-src. Concrete hardening example for every finding.
X-Frame-Options / frame-ancestors
Clickjacking protection. Recommendation: SAMEORIGIN, or CSP frame-ancestors 'self'. The Security tab scores X-Frame-Options on its own based on header presence and reports it as missing even when CSP frame-ancestors is set — so set both for a green result.
Referrer-Policy
Controls what is sent as referrer on outbound links. Recommendation: strict-origin-when-cross-origin (browser default); for privacy-sensitive sites: no-referrer.
Permissions-Policy
Restricts browser APIs (camera, microphone, geolocation, USB, MIDI, payment) for the site and 3rd-party iframes. XICTRAQ proposes a default policy for typical marketing sites (everything off that is not needed).
X-Content-Type-Options
nosniff prevents MIME sniffing — critical when user uploads are served. Should be set on every site, zero configuration effort.
Cross-Origin headers (COOP/COEP/CORP)
Strictly isolates your browsing context from other origins — required for SharedArrayBuffer and WebAssembly threading. Optional for classic marketing pages, recommended for web apps. XICTRAQ security-score weighting: COOP 7 pts, CORP 4 pts, COEP is only detected and listed (no score contribution).
Info-leak detection
On top of the 9 headers, XICTRAQ checks for version disclosure: a Server header carrying a version number (e.g. nginx/1.24.0) and any X-Powered-By header are reported as findings. If both are clean (no version, no X-Powered-By), the score earns a bonus.
# How the security score is calculated
The score (0–100) sums fixed points: HTTPS as the base, the points below per present header, plus two bonuses. From that XICTRAQ derives the A+ to F grade. Re-scan and continuous monitoring use the exact same calculation.
# Point allocation (capped at 100) HTTPS (Basis / base) +15 Content-Security-Policy +20 Strict-Transport-Security (HSTS) +12 X-Frame-Options + 8 X-Content-Type-Options + 8 Referrer-Policy + 8 Permissions-Policy + 8 Cross-Origin-Opener-Policy (COOP) + 7 Cross-Origin-Resource-Policy (CORP) + 4 Cross-Origin-Embedder-Policy (COEP) + 0 # Bonuses HSTS preload-ready + 5 no info leaks (server version + X-Powered-By) + 5 # Grade A+ from 95 A from 85 B from 70 C from 50 D from 25 F < 25
# Security Wizard (4 steps)
Instead of hand-crafting headers, the wizard guides you through four steps from scan to reports: 1) scan external sources (CspSourceScanner extracts every host used in scripts/frames/connections), 2) configure headers per directive (hash mode for inline scripts instead of unsafe-inline, token-based report-uri), 3) ready snippet per server (nginx/Apache/Caddy/IIS/Express) to copy, 4) review incoming CSP violation reports in the same panel — grouped by directive, blocked source and document URI.
# Insert into server block add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always; add_header X-Content-Type-Options "nosniff" always; add_header X-Frame-Options "SAMEORIGIN" always; add_header Referrer-Policy "strict-origin-when-cross-origin" always; add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always; add_header Cross-Origin-Opener-Policy "same-origin" always; add_header Cross-Origin-Embedder-Policy "require-corp" always; add_header Cross-Origin-Resource-Policy "same-site" always; add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; connect-src 'self'; frame-ancestors 'self'; base-uri 'self'; form-action 'self'" always;
# Weekly security posture in plain language
Once a week, XICTRAQ summarises each active website's security posture from the most recent security scan — the score plus the six core headers (HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy) — as a short plain-text paragraph in German and English. This text appears right on the Security Score card in the website detail. By default it is phrased rule-based (free); the AI phrasing is an optional operator toggle.