SYN Flooding Attack(SYN Flood Attack) 은 네트워크 상에서 발생하는 DoS(Denial of Service) 공격 기법 중 하나입니다. 오늘은 이 DoS 공격이 무엇인지 알아보도록 하겠습니다.
SYN Flooding Attack 이란?
SYN Flooding Attack은 서버의 리소스를 고갈시켜 정상적인 서비스가 불가하도록 만드는 목적을 갖고 있습니다. 쉽게 말하자면, 일반적인 통신인 척을 하며 과부하를 유발한다고 할 수 있습니다.
그 차이를 알기 위해, 우선 정상적인 통신 방법에 대해 알아보겠습니다.
정상적인 통신 과정: 3-way-handshake
TCP/IP 프로토콜로 통신하기 전, 정확한 정보 전송을 위해 상대방 컴퓨터와 세션을 수립하는 과정으로 TCP 연결 초기화라 할 수 있습니다.
클라이언트가 서버에게 접속을 요청하는 SYN
패킷을 보내면, 서버는 SYN+ACK
패킷을 클라이언트에 발송하고 대기합니다. 클라이언트는 이것을 수신한 후, 다시 ACK
를 서버에게 발송하면 연결이 이루어지고 데이터를 주고받을 수 있습니다.
그리고 이 원리를 사용해서 공격을 하는 것입니다.
SYN Flooding Attack의 원리
- 공격자가 서버에 SYN 패킷을 대량으로 보냅니다.
- 서버는 이 SYN 패킷에 대해 SYN-ACK 패킷으로 응답합니다.
- 그러나 공격자는 고의적으로 SYN-ACK 패킷에 대한 ACK 패킷을 보내지 않습니다.
- 이렇게 미완성된 연결 요청이 쌓이면 서버의 연결 요청 대기열이 가득차게 됩니다.
- 정상적인 사용자의 연결 요청은 처리되지 못하고 서버가 마비되는 공격 효과를 얻게 됩니다.
이 DoS공격은 서버의 자원을 고갈시켜 정상적인 서비스 제공을 방해합니다. 이로 인해 다른 사용자들은 서비스에 접근할 수 없게 되며 서비스 운영에 심각한 차질을 초래할 수 있습니다.
SYN Flooding 공격을 인지하고, 이에 대한 대응 방안을 마련하는 것은 중요하면서도 기본적인 사항이라 할 수 있습니다.
기초적인 대응 방안
- 방화벽 설정
- IPS(Intrusion Prevention System)
- 서버 리소스 증설 및 부하 분산(로드벨런싱)
- Client 연결 요청 처리 최적화
네트워크 관련 서적 추천
관련 글
※이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
답글 남기기