본문 바로가기
system_fundamentals/security_cryptography

SameSite Cookie

by 죄니안죄니 2026. 5. 19.
반응형
 
SameSite CookieSameSite CookieSameSite Cookie
 
 

SameSite Cookie(HTTP cookie 속성)는 한 줄로 말하면:

"다른 사이트에서 온 요청에는
쿠키를 얼마나 보낼지 제한하는 보안 옵션"
 

이다.

핵심 목적은:

CSRF 방어
 

다.


먼저 왜 필요하냐?

브라우저는 기본적으로:

해당 도메인 요청이면
쿠키를 자동 전송
 

한다.

예시

사용자가: bank.com

로그인했다고 하자.

브라우저 저장

Cookie: SESSION=ABCD
 

문제 상황

사용자가 악성 사이트 접속.

공격 페이지가:

<img src="https://bank.com/transfer?money=1000000">
 

요청 보내면?

브라우저는 자동으로

Cookie: SESSION=ABCD
 

를 bank.com에 같이 보낸다.

결과

로그인된 사용자 요청처럼 보임
 

→ CSRF 가능.

SameSite 등장

브라우저에게:

"다른 사이트 요청에는
쿠키 제한해라"
 

지시.

설정 방식

Set-Cookie:
SESSION=abc;
SameSite=Lax
 

SameSite 종류

옵션 의미
Strict 완전 차단
Lax 일부 허용
None 모두 허용


1. SameSite=Strict

가장 강력.

Set-Cookie:
SESSION=abc;
SameSite=Strict
 

의미

다른 사이트에서 온 요청에는
절대 쿠키 안 보냄
 

장점

CSRF 방어 매우 강함.

단점

UX 문제 있음.

예시

사용자가:

Google 검색 결과 클릭
 

으로 들어와도:

쿠키 안 붙을 수 있음
 

그래서 너무 빡셈.


2. SameSite=Lax

현재 브라우저 기본값에 가까움.

Set-Cookie:
SESSION=abc;
SameSite=Lax
 

의미

일반 링크 이동(GET)은 허용,
위험한 POST는 제한
 

요청 쿠키
링크 클릭(GET) O
form POST 제한
iframe/img 제한

그래서 현실적으로 많이 사용.


3. SameSite=None

Set-Cookie:
SESSION=abc;
SameSite=None
 

의미

모든 Cross-Site 요청 허용
 

단 조건

반드시:

Secure
 

와 같이 사용해야 함.

즉 HTTPS 필수.

예시

Set-Cookie:
SESSION=abc;
SameSite=None;
Secure
 

언제 필요하냐?

예:

  • OAuth 로그인
  • SSO
  • iframe 인증
  • 서드파티 서비스

왜냐면 Cross-Site 요청 필요하기 때문.


Site vs Origin 헷갈림

 

SameSite는 "Site" 기준

예:

URL SameSite 기준
a.example.com ↔ b.example.com 같은 Site
example.com ↔ google.com 다른 Site

즉 서브도메인은 보통 같은 Site 취급.

 

현재 브라우저 정책

현대 Chrome/Firefox는:

SameSite=Lax 기본 적용
 

한다.

 

즉 SameSite 미설정 시에도

일부 CSRF 방어 자동 적용.


OAuth에서 SameSite 문제 자주 발생

Google 로그인은 Cross-Site Redirect 발생

그래서:

SameSite=Strict
 

쓰면 로그인 깨질 수 있음.

 

실무에서는 보통


쿠키 추천
Session Lax
OAuth/SSO None + Secure

JWT와도 관련 있음

JWT를:

HttpOnly Cookie
 

에 저장하면:

CSRF 고려 필요
 

하다.

그래서 SameSite 중요.


CSRF Token과 관계

SameSite가 생기면서:

CSRF 위험 많이 감소
 

했지만,

민감 서비스는 여전히:

  • CSRF Token
  • Origin 검사

같이 사용.


실무 추천 설정

보통:

Set-Cookie:
SESSION=abc;
HttpOnly;
Secure;
SameSite=Lax
 

많이 사용.


각 옵션 의미

옵션 의미
HttpOnly JS 접근 금지
Secure HTTPS만
SameSite CSRF 완화

핵심 한 줄

SameSite Cookie는:

브라우저가 다른 사이트(Cross-Site)에서 발생한 요청에
쿠키를 자동 전송하는 범위를 제한해서,
CSRF 공격을 줄이기 위한 쿠키 보안 옵션
 

이다.

반응형

'system_fundamentals > security_cryptography' 카테고리의 다른 글

SSRF  (0) 2026.05.19
CORS  (0) 2026.05.19
CSP  (0) 2026.05.19
SQL Injection  (0) 2026.05.19
CSRF  (0) 2026.05.19

댓글