SYN 플러드
SYN 플러드는 서비스 거부(DoS) 공격의 한 유형으로, 웹 서버와 같은 컴퓨터에 일련의 "SYN" 메시지를 보냅니다. SYN은 "synchronize"의 줄임말이며, TCP/IP 프로토콜을 통해 두 시스템 간 통신을 설정하는 첫 단계입니다.
서버가 SYN 요청을 받으면 SYN-ACK(synchronize acknowledge) 메시지로 응답합니다. 그러면 컴퓨터가 ACK(acknowledge) 메시지로 응답하여 두 시스템 간 연결을 설정합니다. SYN 플러드 공격에서는 컴퓨터가 많은 수의 SYN 요청을 보내지만 ACK 메시지는 돌려보내지 않습니다. 따라서 서버는 여러 응답을 기다리게 되고, 시스템 리소스가 묶이게 됩니다. 응답 요청이 쌓인 대기열이 충분히 커지면 서버가 정상적인 요청에 응답하지 못할 수 있습니다. 이로 인해 서버가 느려지거나 응답하지 않게 됩니다.
SYN 플러딩은 흔한 DoS 공격 유형이므로 대부분의 서버 소프트웨어에는 SYN 플러드가 서버에 눈에 띄는 영향을 주기 전에 이를 감지하고 중지하는 기능이 있습니다. 예를 들어 서버가 짧은 시간에 동일한 IP 주소에서 많은 수의 SYN 요청을 받으면 해당 위치에서 오는 모든 요청을 일시적으로 차단할 수 있습니다.
분산 서비스 거부(DDoS) 공격은 여러 IP 주소에서 서버를 플러드하기 때문에 처리하기가 더 어렵습니다. 그러나 SYN 캐싱을 사용하거나 SYN 쿠키를 구현하면 이러한 공격을 제한할 수 있습니다. 두 방법 모두 플러드 공격에 사용된 IP 주소를 기록합니다. 그런 다음 시스템은 해당 위치에서 오는 요청에 응답하는 데 컴퓨터가 사용할 리소스를 제한합니다. 이러한 유형의 SYN 플러드 방어는 서버에서 직접 구성하거나 네트워크 방화벽에서 구성할 수 있습니다.
지식 테스트하기