5. SYN Cookie 동작 원리와 설정
2026. 1. 11. 20:28
정보보안기사

[정보보안기사] 네트워크 보안 — SYN Flood 방어: SYN Cookie 동작 원리와 설정

SYN Flood가 backlog를 고갈시키는 구조와, SYN Cookie가 이를 어떻게 회피하는지 정리합니다.

SYN Cookie가 ISN에 쿠키를 넣어 backlog 사용을 줄이는 방식

SYN Flooding 개념

공격자가 SYN만 대량으로 보내면 서버는 미완성 연결을 일정 시간 보관해야 하므로 대기 큐(backlog)가 고갈될 수 있습니다.

  • ACK가 오지 않으면 서버는 미완성 상태를 유지합니다.
  • 큐가 가득 차면 정상 SYN도 드롭/지연됩니다.

SYN Cookie 아이디어

서버가 상태를 쌓지 않고, 생성한 ‘쿠키’를 초기 시퀀스 번호(ISN)에 담아 SYN+ACK로 반환합니다.

  • ACK가 돌아오면 쿠키를 재계산/검증해 연결을 확정합니다.
  • 장점: backlog 고갈에 강함
  • 단점: 일부 TCP 옵션 처리 제약, 쿠키 계산에 따른 CPU 비용 가능

리눅스 설정

# 설정 확인
sysctl -a | grep tcp_syncookies

# 활성화
sysctl -w net.ipv4.tcp_syncookies=1
  • 영구 적용은 /etc/sysctl.conf 또는 /etc/sysctl.d/*.conf에 반영합니다.
  • SYN Cookie는 만능이 아니므로 rate-limit/방화벽/상위 DDoS 방어와 함께 운영합니다.

용어 · 레퍼런스(요약)

본문에서는 흐름 이해에 집중하고, 용어는 아래에서 짧게 정리해 드립니다.

용어 한 줄 정리 더 깊게 보기(참고)
SYN Flood SYN만 대량 전송해 미완성 연결 큐를 고갈시키는 DoS입니다. TCP handshake 자료
Backlog 연결 대기/미완성 연결을 보관하는 큐입니다. OS/커널 문서
SYN Cookie ISN에 쿠키를 담아 상태 저장을 줄이는 방어입니다. Linux tcp_syncookies
3-way handshake SYN→SYN+ACK→ACK로 연결 확정합니다. TCP 기본 문서

참고 레퍼런스