## syn flood 공격
- 악의적으로 SYN 패킷만 보냄으로써 SYN Backlog를 가득 채우는 공격.

## syn_cookies
- 이 옵션을 켜면 SYN Backlog가 가득 찼을 때 더 이상 SYN 패킷을 SYN Backlog에 저장하지 않는다.
- 서버는 SYN에 있는 정보들(ip, timestamp, [[mss]] 등)을 이용해 syncookies를 만들고 그 값을 SYN+ACK의 ISN(Initail Sequence Number)으로 만들어서 보낸다.
- 원래 ISN은 랜덤으로 생성한다.
- 클라이언트는 ISN + 1로 ACK를 만들어서 서버에 보내고, 서버는 해당 ACK가 자신이 만든 것인지 검증해서 Listen Backlog로 넘긴다.
- 연결을 맺을 때 syncookies를 사용하기 때문에 TCP Option 헤더를 무시하게 되는 단점이 있다.
- TCP Option 헤더에는 Windows scailing 옵션 같은 성능 향상을 위한 내용이 포함되어 있다.
#network #security #tcp