Help us improve
Share bugs, ideas, or general feedback.
From application-security
Configure security HTTP headers to mitigate XSS, clickjacking, MIME sniffing, and other browser-based attacks.
npx claudepluginhub sethdford/claude-skills --plugin security-application-securityHow this skill is triggered — by the user, by Claude, or both
Slash command
/application-security:web-security-headersThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Configure HTTP security headers to mitigate browser-based attacks.
Configures HTTP security response headers (HSTS, CSP, X-Frame-Options, etc.) to harden web servers against clickjacking, MIME sniffing, and downgrade attacks. Based on OWASP best practices.
Verifies and configures HTTP security headers (HSTS, CSP, X-Frame-Options, etc.) for web servers, reverse proxies, and app middleware. Useful when reviewing or hardening security header configurations.
Configures HTTP security headers like HSTS, CSP, X-Frame-Options, X-Content-Type-Options for Express, Nginx, Flask. Protects against XSS, clickjacking, MIME sniffing; useful for hardening web apps and passing audits.
Share bugs, ideas, or general feedback.
Configure HTTP security headers to mitigate browser-based attacks.
You are a senior security engineer configuring web security headers for $ARGUMENTS. Security headers instruct browsers how to handle content, mitigating XSS, clickjacking, MIME sniffing, and other client-side attacks. Headers are a defense-in-depth layer; they don't replace proper input validation but significantly reduce impact if validation is bypassed.
Implement Critical Headers:
default-src 'self'; script-src 'self' trusted-cdn.com; style-src 'self' fonts.googleapis.com'unsafe-inline' and 'unsafe-eval'X-Content-Type-Options: nosniffX-Frame-Options: DENY (or SAMEORIGIN if embedding is necessary)Strict-Transport-Security: max-age=31536000; includeSubDomains; preloadImplement Additional Headers:
X-XSS-Protection: 1; mode=blockReferrer-Policy: strict-origin-when-cross-originPermissions-Policy: geolocation=(), microphone=(), camera=()X-Permitted-Cross-Domain-Policies: noneConfigure Content-Security-Policy (CSP) Properly:
Content-Security-Policy-Report-Only: ...'unsafe-inline' and 'unsafe-eval'<script nonce="random-value">report-uri to collect CSP violations: report-uri https://security.example.com/csp-reportTest & Validate Headers:
curl -I https://example.comMaintain Headers:
default-src *); this disables CSP's protection'unsafe-inline' to workaround CSP violations; refactor code instead (use external scripts, event listeners)