Skip to main content

header-analysis

Analyze HTTP security headers for misconfigurations and missing security controls using httpx. Use when security header assessment is needed, when checking for clickjacking or XSS protections, when validating OWASP compliance, or when identifying information disclosure.

소스 정보

저장소
zebbern/termstack
최근 소스 활동
2026년 4월 10일 22:53
감지된 SKILL.md 언어
영어
스타
4
포크
3

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
header-analysis
description
Analyze HTTP security headers for misconfigurations and missing security controls using httpx. Use when security header assessment is needed, when checking for clickjacking or XSS protections, when validating OWASP compliance, or when identifying information disclosure.
tags
["security","http-headers","csp","hsts","security-headers"]
triggers
["http headers","security headers","header analysis","csp check","hsts check","missing headers"]
# header-analysis ## When to Use - When security header assessment is needed on web targets - When checking for missing security headers (HSTS, CSP, X-Frame-Options) - When identifying information disclosure via Server/X-Powered-By headers - When validating compliance with OWASP Secure Headers recommendations - When analyzing CORS configuration for security issues - When reviewing Content Security Policy effectiveness - When assessing TLS/SSL security configuration - When bulk scanning targets for header security posture ## Quick Start Extract all response headers from a target: ```bash httpx -u https://example.com -include-response-header -json ``` ## Step-by-Step Process 1. **Install httpx** (if needed): ```bash go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest ``` 2. **Extract Headers** from target: ```bash httpx -u https://target.com -include-response-header -json -o headers.json ``` 3. **Parse Security Headers** using jq: ```bash cat headers.json | jq '.header' ``` 4. **Check for Missing Headers**: ```bash cat headers.json | jq 'select(.header["strict-transport-security"] == null)' ``` 5. **Generate Report** of findings: ```bash httpx -l targets.txt -include-response-header -json -o full-scan.json ``` ## Examples ### Example 1: Basic Header Extraction **Scenario:** Extract all HTTP response headers from a single target **Command:** ```bash httpx -u https://example.com -include-response-header -json -silent ``` **Output:** ```json { "url": "https://example.com", "status_code": 200, "header": { "content-type": ["text/html; charset=UTF-8"], "server": ["nginx/1.18.0"], "strict-transport-security": ["max-age=31536000; includeSubDomains"], "x-frame-options": ["SAMEORIGIN"], "x-content-type-options": ["nosniff"] } } ``` ### Example 2: Bulk Header Analysis **Scenario:** Scan multiple targets for security headers **Command:** ```bash httpx -l targets.txt -include-response-header -json -o bulk-headers.json -threads 50 ``` **Output:** ``` https://app1.example.com [200] https://app2.example.com [200] https://api.example.com [200] ``` ### Example 3: Check for Missing HSTS **Scenario:** Find targets missing Strict-Transport-Security header **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["strict-transport-security"] == null) | .url' ``` **Output:** ``` https://insecure-app.example.com https://legacy.example.com https://dev.example.com ``` ### Example 4: Check for Missing CSP **Scenario:** Identify targets without Content-Security-Policy **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["content-security-policy"] == null) | .url' ``` **Output:** ``` https://app-without-csp.example.com https://old-portal.example.com ``` ### Example 5: Check for Missing X-Frame-Options **Scenario:** Find targets vulnerable to clickjacking **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["x-frame-options"] == null and .header["content-security-policy"] == null) | .url' ``` **Output:** ``` https://vulnerable-to-clickjacking.example.com ``` ### Example 6: Server Version Disclosure **Scenario:** Find targets leaking server version information **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header.server[0] | test("/[0-9]")) | {url, server: .header.server[0]}' ``` **Output:** ```json {"url": "https://app1.example.com", "server": "nginx/1.18.0"} {"url": "https://app2.example.com", "server": "Apache/2.4.41"} {"url": "https://api.example.com", "server": "Microsoft-IIS/10.0"} ``` ### Example 7: X-Powered-By Detection **Scenario:** Find targets with X-Powered-By header revealing technology **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["x-powered-by"] != null) | {url, powered_by: .header["x-powered-by"][0]}' ``` **Output:** ```json {"url": "https://php-app.example.com", "powered_by": "PHP/7.4.3"} {"url": "https://express-app.example.com", "powered_by": "Express"} {"url": "https://aspnet-app.example.com", "powered_by": "ASP.NET"} ``` ### Example 8: CORS Misconfiguration Check **Scenario:** Find permissive CORS configurations **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["access-control-allow-origin"][0] == "*") | .url' ``` **Output:** ``` https://api-with-wildcard-cors.example.com https://public-api.example.com ``` ### Example 9: CSP Policy Extraction **Scenario:** Extract and review Content-Security-Policy values **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["content-security-policy"] != null) | {url, csp: .header["content-security-policy"][0]}' ``` **Output:** ```json { "url": "https://secure-app.example.com", "csp": "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'" } ``` ### Example 10: Weak CSP Detection **Scenario:** Find CSP policies with unsafe-inline or unsafe-eval **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["content-security-policy"][0] | test("unsafe-inline|unsafe-eval")) | {url, csp: .header["content-security-policy"][0]}' ``` **Output:** ```json { "url": "https://weak-csp-app.example.com", "csp": "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'" } ``` ### Example 11: HSTS Configuration Analysis **Scenario:** Extract and analyze HSTS header values **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["strict-transport-security"] != null) | {url, hsts: .header["strict-transport-security"][0]}' ``` **Output:** ```json {"url": "https://well-configured.example.com", "hsts": "max-age=31536000; includeSubDomains; preload"} {"url": "https://weak-hsts.example.com", "hsts": "max-age=86400"} {"url": "https://no-subdomains.example.com", "hsts": "max-age=31536000"} ``` ### Example 12: TLS Certificate Analysis **Scenario:** Extract TLS certificate and protocol information **Command:** ```bash httpx -u https://example.com -tls-grab -json -silent ``` **Output:** ```json { "url": "https://example.com", "tls": { "cipher": "TLS_AES_128_GCM_SHA256", "version": "tls1.3", "subject_dn": "CN=example.com", "issuer_dn": "CN=R3, O=Let's Encrypt, C=US", "not_before": "2024-01-01T00:00:00Z", "not_after": "2024-04-01T00:00:00Z" } } ``` ### Example 13: Referrer-Policy Check **Scenario:** Identify missing or weak Referrer-Policy headers **Command:** ```bash httpx -l targets.txt -include-response-header -json | \ jq -r 'select(.header["referrer-policy"] == null or .header["referrer-policy"][0] == "unsafe-url") | .url' ``` **Output:** ``` https://no-referrer-policy.example.com https://leaky-referrer.example.com ``` ### Example 14: Complete Security Header Audit **Scenario:** Comprehensive check for all OWASP-recommended headers **Command:** ```bash httpx -l targets.txt -include-response-header -json -o audit.json # Then analyze with script: cat audit.json | jq -r ' .url as $url | { url: $url, hsts: (.header["strict-transport-security"] != null), csp: (.header["content-security-policy"] != null), xfo: (.header["x-frame-options"] != null), xcto: (.header["x-content-type-options"] != null), referrer: (.header["referrer-policy"] != null), permissions: (.header["permissions-policy"] != null) }' ``` **Output:** ```json {"url": "https://secure.example.com", "hsts": true, "csp": true, "xfo": true, "xcto": true, "referrer": true, "permissions": true} {"url": "https://partial.example.com", "hsts": true, "csp": false, "xfo": true, "xcto": true, "referrer": false, "permissions": false}
GitHub에서 보기
이 SKILL.md는 매우 커서 SkillsMP가 여기에는 첫 섹션만 미리 보여줍니다. GitHub에서 보기