용어와 정의
영문 또는 원어: CSP
영문 정식명칭: Content Security Policy
한글명: 콘텐츠 보안 정책
CSP는 웹 페이지가 불러오거나 실행할 수 있는 자원 등을 브라우저에 정책으로 전달하는 콘텐츠 보안 정책입니다.
정확한 의미와 원리
스크립트와 프레임 등의 출처 및 실행 조건을 제한할 수 있습니다. 정책을 적용하는 헤더와 보고 전용 헤더는 실제 차단 여부가 다릅니다.
쉽게 이해하는 사용 예시
허용한 스크립트 출처와 요청별 nonce를 사용하는 정책으로 의도하지 않은 코드 실행 경로를 줄이는 구성이 있습니다.
종류와 관련 개념의 차이
출처 허용 목록, nonce와 해시 기반 허용은 관리 방식이 다릅니다. CSP Level 3의 기능은 브라우저 지원과 각 지시어의 동작 조건을 확인해야 합니다.
적용 조건과 오해하기 쉬운 점
느슨한 예외를 추가하면 정책 효과가 크게 줄어들 수 있습니다. CSP만으로 XSS가 고쳐졌다고 보지 말고 정상 자원 로딩, 우회 가능성과 보고 내용을 함께 검토합니다.
CSP nonce CSP 실행 허용 난수
이 절의 용어: CSP nonce / CSP 실행 허용 난수
CSP nonce는 정책과 승인한 스크립트 등의 요소에 연결해 실행을 허용하는 예측하기 어려운 값입니다. 일반적으로 응답마다 새 값을 사용하고 신뢰하지 않는 내용에 복사하지 않도록 해야 합니다. 고정 문자열을 nonce처럼 재사용하는 설계는 목적에 맞지 않습니다.
관련 용어와 글
함께 이해할 기준 개념
함께 비교할 용어
- SQL injection SQL 삽입 공격
- CSRF 사이트 간 요청 위조
- SSRF 서버 측 요청 위조
- CORS 교차 출처 리소스 공유
- Clickjacking 클릭재킹
- Session cookie 세션 쿠키
- Reflected XSS 반사형 XSS
- Stored XSS 저장형 XSS
- DOM-based XSS DOM 기반 XSS
- CSRF token 요청 위조 방지 토큰
- CSP nonce CSP 실행 허용 난수
- HttpOnly 스크립트 접근을 제한하는 쿠키 속성
- Secure cookie attribute 보호 연결 전송 쿠키 속성
- SameSite 사이트 간 쿠키 전송 조건