쿠키 설정에서, 다음의 공격에 대한 방어를 해야 한다.
Secure
- 일반 http 통신의 경우 세션 탈취에 매우 취약하므로, https 에서만 쿠키를 저장하도록 강제 (Secure=true)
XSS
- 악성 자바스크립트에서 세션을 탈취할 수 있으므로, HttpOnly = true 설정을 통해 자바스크립트에서는 쿠키 접근을 차단
CSRF
- 쿠키가 브라우저에 저장되는 점을 악용하여 이용자가 의도하지 않은 공격을 할 수 있는 상황을 막는다.
- 상황 : 이용자가 A 사이트 방문 -> 세션 및 쿠키 저장 -> 이용자가 B 사이트 저장 -> B 사이트의 html 페이지 내 악의적인 코드를 통해 A 사이트의 쿠키를 탈취 및 이용하여 B 사이트에서 A 사이트에 불법 접근 및 공격
- SameSite 설정을 통해 방어
- Strict : 가장 강력. 동일 사이트에서 보낸 요청에만 쿠키 전송.
- Lax : 몰래 보내는 요청은 차단하고, 이용자가 직접 클릭한 경우에는 허용 (일반적으로 많이 사용)
- None : 안막는 방법
- CSRF 토큰을 통해 방어
- 서버에서 x-csrf-token 값을 클라이언트에게 세션아이디 쿠키와 별개로 전달. 해당 토큰은 유추가 불가능한 값.(로그인시)
- CSRF 토큰 값은 http 헤더나 body 에 클라이언트가 수동으로 직접 담아서 서버에 전달
- 서버는 해당 토큰과 세션아이디 둘다 비교하여 검증
'Backend > 공통' 카테고리의 다른 글
| Github Action을 통한 AWS CI/CD (3) (0) | 2025.11.11 |
|---|---|
| Github Action을 통한 AWS CI/CD (2) (0) | 2025.11.11 |
| Github Action을 통한 AWS CI/CD (1) (0) | 2025.11.11 |
| EC2, RDS 등 컴퓨팅 설정 및 ECS 설명 (0) | 2025.11.07 |
| REST API, RESTful API (0) | 2025.09.19 |