DOS/DDOS 공격 방식 중 Flooding 공격 기법에 대해 알아보는 포스팅입니다.
SYN Flooding 공격을 이해하기 위해서는 [3-way-handshake]를 먼저 이해해야 SYN Flooding 공격을 이해할 수 있습니다.
1. 3-way-handshake 란?
그림처럼 TCP 는 세 번의 패킷을 주고받는 과정을 거쳐야 연결이 성립됩니다.
먼저, 클라이언트는 SYN 패킷을 생성하여 서버에 전달하고 서버는 전달받은 SYN 패킷의 대답으로 ACK을 포함하여 Client에 전달합니다. 이때 Server는 Client의 접속을 받아들이기 위해 서버의 RAM에 일정 공간을 확보하게 됩니다.
2번 과정까지 마친 후 Client는 SYN+ACK 패킷에 대해 ACK 패킷을 포함하여 Server에 전달하게 됩니다.
이 모든 과정이 이루어지면 Client와 Server의 연결이 성립되게 됩니다.
이를 3-way-handshake라고 칭하고 있습니다.
2. SYN Flooding이란?
위에 적힌 3-way-handshake 방식을 자세히 본다면, Server는 Client의 접속을 받아들이기 위해 서버의 RAM에 일정 공간을 확보합니다.
이때, Client가 Server에 SYN 패킷만을 지속적으로 보내고, ACK패킷을 보내지 않는다면 Server는 계속해서 Client접속을 위해 RAM을 확보하게 됩니다.
이처럼 Client에서 SYN 패킷만 보내고 ACK를 보내지 않는 상태에서 Server는 계속해서 RAM을 확보하게 된다면,
Server의 RAM이 어느 수준부터는 더 이상 확보를 하지 못하고 서비스를 정상적으로 할 수 없는 상태가 될 것입니다.
이러한 공격 방식을 SYN Flooding(DOS/DDOS 공격 기법)이라고 합니다.
'IT > 보안' 카테고리의 다른 글
MS 지원진단도구(MSDT) 원격코드실행 취약점 Follina(CVE-2022-30190) (0) | 2022.06.22 |
---|---|
[리버싱]NOX_Android IDA 원격 디버깅 (0) | 2022.04.30 |
[웹] 쿠키란 무엇인가? (0) | 2021.07.21 |
[웹해킹]Webhacking.kr old 1번 문제풀이 (0) | 2021.07.20 |
[보안] 암호학 용어 정리-1 (0) | 2020.10.10 |