HTTP Strict Transport Security
PassHSTS has a max-age of at least one year and includes subdomains.
Review pasted HTTP response headers for common security controls and actionable configuration gaps.
Runs locally in your browser
Paste a status line and response headers in Name: Value form.
Parsed response
HTTP/2 200 OK
Needs review
0
Pass
14
Context
0
Configuration signals
HSTS has a max-age of at least one year and includes subdomains.
1 enforcing CSP policy was found.
Next step: Review the effective policy in a browser because multiple CSP headers are enforced together.
No unsafe-inline or unsafe-eval tokens were found in the effective CSP directives.
object-src is explicitly set to 'none'.
frame-ancestors places an explicit restriction on embedding.
X-Content-Type-Options is set to nosniff.
The selected policy is strict-origin-when-cross-origin.
3 explicit feature policies were found.
Next step: Confirm every enabled capability and origin is required by the application.
An enforcing CSP frame-ancestors restriction was found.
COOP is set to same-origin.
CORP is set to same-site.
Every pasted Set-Cookie value includes Secure.
Every pasted Set-Cookie value includes HttpOnly.
Every pasted Set-Cookie value has a recognized SameSite setting.
| Header | Value | Line |
|---|---|---|
| Content-Type | text/html; charset=utf-8 | 2 |
| Strict-Transport-Security | max-age=63072000; includeSubDomains | 3 |
| Content-Security-Policy | default-src 'self'; script-src 'self'; object-src 'none'; frame-ancestors 'none' | 4 |
| X-Content-Type-Options | nosniff | 5 |
| Referrer-Policy | strict-origin-when-cross-origin | 6 |
| Permissions-Policy | camera=(), microphone=(), geolocation=() | 7 |
| Cross-Origin-Opener-Policy | same-origin | 8 |
| Cross-Origin-Resource-Policy | same-site | 9 |
| Set-Cookie | [masked sensitive value] | 10 |
{
"statusLine": "HTTP/2 200 OK",
"parsedHeaderCount": 9,
"ignoredLines": {
"count": 0,
"lineNumbers": []
},
"summary": {
"pass": 14,
"warning": 0,
"info": 0
},
"checks": [
{
"id": "hsts",
"title": "HTTP Strict Transport Security",
"status": "pass",
"summary": "HSTS has a max-age of at least one year and includes subdomains."
},
{
"id": "csp",
"title": "Content Security Policy",
"status": "pass",
"summary": "1 enforcing CSP policy was found.",
"recommendation": "Review the effective policy in a browser because multiple CSP headers are enforced together."
},
{
"id": "csp-unsafe-directives",
"title": "CSP unsafe directives",
"status": "pass",
"summary": "No unsafe-inline or unsafe-eval tokens were found in the effective CSP directives."
},
{
"id": "csp-object-src",
"title": "CSP object sources",
"status": "pass",
"summary": "object-src is explicitly set to 'none'.",
"evidence": [
"Policy 1: object-src 'none'"
]
},
{
"id": "csp-frame-ancestors",
"title": "CSP frame ancestors",
"status": "pass",
"summary": "frame-ancestors places an explicit restriction on embedding.",
"evidence": [
"Policy 1: frame-ancestors 'none'"
]
},
{
"id": "content-type-options",
"title": "MIME sniffing protection",
"status": "pass",
"summary": "X-Content-Type-Options is set to nosniff."
},
{
"id": "referrer-policy",
"title": "Referrer policy",
"status": "pass",
"summary": "The selected policy is strict-origin-when-cross-origin.",
"evidence": [
"strict-origin-when-cross-origin"
]
},
{
"id": "permissions-policy",
"title": "Permissions policy",
"status": "pass",
"summary": "3 explicit feature policies were found.",
"recommendation": "Confirm every enabled capability and origin is required by the application.",
"evidence": [
"camera=()",
"microphone=()",
"geolocation=()"
]
},
{
"id": "clickjacking",
"title": "Clickjacking protection",
"status": "pass",
"summary": "An enforcing CSP frame-ancestors restriction was found.",
"evidence": [
"Policy 1: frame-ancestors 'none'"
]
},
{
"id": "coop",
"title": "Cross-Origin-Opener-Policy",
"status": "pass",
"summary": "COOP is set to same-origin.",
"evidence": [
"same-origin"
]
},
{
"id": "corp",
"title": "Cross-Origin-Resource-Policy",
"status": "pass",
"summary": "CORP is set to same-site.",
"evidence": [
"same-site"
]
},
{
"id": "cookie-secure",
"title": "Cookie Secure attribute",
"status": "pass",
"summary": "Every pasted Set-Cookie value includes Secure.",
"evidence": [
"session"
]
},
{
"id": "cookie-httponly",
"title": "Cookie HttpOnly attribute",
"status": "pass",
"summary": "Every pasted Set-Cookie value includes HttpOnly.",
"evidence": [
"session"
]
},
{
"id": "cookie-samesite",
"title": "Cookie SameSite attribute",
"status": "pass",
"summary": "Every pasted Set-Cookie value has a recognized SameSite setting.",
"evidence": [
"session: lax"
]
}
]
}Complete tool guide
This analyzer reviews raw HTTP response headers that you paste and highlights common defensive configuration signals.
Analysis runs in the current browser tab. The page does not request a URL, contact a server, or submit the pasted headers.
Copy the raw response status line and headers from a source you trust.
Paste them into the raw headers field.
Review warnings first, then read informational checks in application context.
Test any proposed policy changes before deployment to avoid breaking legitimate behavior.
Checks cover HSTS, CSP, MIME sniffing, referrer and permissions policy, framing controls, cross-origin isolation signals, and Set-Cookie attributes when present.
Some headers are not appropriate for every response. A warning is a review prompt, and a passing check only means the pasted value matched this analyzer’s rule.
The analyzer deliberately has no URL-fetch feature. It cannot verify redirects, browser behavior, HTTPS coverage, caching layers, or headers on other routes.
No. It only analyzes the text in the input field and never contacts or resolves a pasted host.
No. This is a focused heuristic review of one pasted response. It is not a penetration test, browser verification, or compliance assessment.
Keep working
Continue with another focused tool from the same collection.