Content-Security-Policy 빌더
네트워크
디렉티브별 입력 폼으로 Content-Security-Policy 헤더 구성. 각 디렉티브는 공백 구분 소스 리스트('self'·'none'·'unsafe-inline' 같은 키워드, 스킴/호스트 소스) 받음. unsafe-inline·unsafe-eval·와일드카드 포함 정책 플래그, 빈 디렉티브 출력에서 제외, 응답 헤더 형식과 동등한 <meta> 태그 둘 다 생성. 새 정책 프로덕션 롤아웃 중엔 report-only 모드로 전환.
Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; connect-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; connect-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none'">
빈 디렉티브는 default-src로 폴백. default-src 'self' 먼저 설정 후 개별 소스 좁히기.
사용법
- 프리셋에서 시작(Strict는 모두 'self', Relaxed는 인라인·와일드카드 허용, API only는 내비게이션 차단).
- 각 디렉티브 편집 — 비우면 제외.
- 새 정책 출시 시 report-only 켜기: 위반은 보고되지만 차단되지 않음.
자주 묻는 질문
- 헤더 vs <meta> — 뭐 써?
- HTTP 헤더 우선. <meta>는 응답 헤더 편집 불가일 때(정적 호스트 등) 편리하지만 frame-ancestors·report-uri/report-to 정의 불가 → 항상 덜 강력.
- 와일드카드가 왜 경고?
- 소스 리스트의 *는 임의 URL 매치 → 정책 무력화. 특정 오리진에 핀하거나 'self' 사용 — 진짜 서드파티 스크립트 필요하면 명시적으로 나열.
관련 도구
URL 쿼리 빌더
base URL + 편집 가능한 key-value 쿼리 파라미터로 URL 조립 — 각 쌍 토글, 자동 percent 인코딩.
IP 주소 분석
IPv4 또는 IPv6 입력 → 클래스·범위(사설·공인·loopback·link-local)·10진수·2진수·reverse DNS·/32 CIDR 표시.
포트 번호 참조
약 60개 표준 TCP / UDP 포트 번호 검색 가능한 치트시트 — 22(SSH)·80(HTTP)·6379(Redis)·27017(MongoDB) 등.
DNS 레코드 참조
DNS 레코드 타입 검색 가능한 치트시트 — A·AAAA·CNAME·MX·TXT·NS·SOA·PTR·SRV·CAA·DNSSEC·SVCB / HTTPS — 예시 포함.
서브넷 계산기 (IPv4 / CIDR)
IPv4 CIDR을 네트워크 주소·브로드캐스트·넷마스크·와일드카드·호스트 범위·클래스로 파싱. 이진 분석과 사설/공인 상태 표시.
User Agent 파서
User-Agent 문자열을 브라우저·엔진·OS·디바이스·CPU로 파싱. GPTBot·ClaudeBot·PerplexityBot 포함 20+ 봇 감지.