HTTPS, XSS, CSRF는 서로 다른 신뢰 경계를 지킨다

HTTPS를 적용해도 브라우저 안의 악성 코드나 위조된 사용자 의도는 남는다. 공격이 악용하는 경계를 먼저 찾고 그 경계에 맞는 방어를 둔다.

전송 경로

클라이언트 ↔ 서버 사이의 기밀성과 무결성

렌더링 경계

신뢰하지 않은 데이터 ↔ 실행 가능한 DOM

사용자 의도

브라우저가 보낸 요청 ↔ 사용자가 승인한 동작

HTTPS전송
위협

네트워크 구간의 도청·변조

보호

TLS로 서버 신원과 전송 내용을 보호

한계

신뢰한 사이트 내부의 XSS·CSRF는 별도 방어

XSS실행
공격 흐름

외부 입력 → 위험한 HTML·DOM sink

악용 신뢰

브라우저가 사이트 코드로 믿고 스크립트 실행

핵심 방어

문맥별 출력 인코딩·검증된 sanitizing

CSRF의도
공격 흐름

악성 사이트 → 인증 쿠키가 붙는 변경 요청

악용 신뢰

서버가 쿠키만 보고 사용자 의도로 오인

핵심 방어

CSRF token 또는 요청 출처 검증

다층 방어: CSP는 XSS 피해를 줄이는 보조선이고, SameSite 쿠키는 CSRF 방어를 보강한다. 어느 쪽도 서버의 인증·인가·입력 검증을 대신하지 않는다.