본문 바로가기

웹 모의해킹 스터디/과제

서비스 거부 공격 (Denial of Service, DoS) 공격 종류

 

DoS 공격이란?

: 시스템을 악의적으로 공격해서 해당 시스템의 자원을 부족하게 하여 원래 의도된 용도로 사용하지 못하게 하는 공격

 

 

 

DoS 공격의 종류

DoS 공격의 종류는 자원 고갈 공격취약점 공격으로 나뉜다.

 

자원 고갈 공격은 내트워크 대역폭이나 시스템의 자원을 소모시키는 형태고, 죽음의 핑, SYN 플러딩, 스머프 공격 등이 있다.

 

취약점 공격은 특정 형태의 오류가 있는 네트워크 패킷 처리 로직에 문제가 있을 때 공격 대상이 그 문제점을 이용하여 오작동을 유발하는 형태이다. 랜드어택, 봉크/보잉크, 티어드롭 등이 여기에 해당한다.

 

 

1. SYN 플러딩 공격

TCP 프로토콜의  3 Way Handshake 연결방식의 문제를 이용한 공격이다.

 

클라이언트가 SYN만 보내고 아무런 동작을 하지 않는다면 해당 연결 요청은 TCP Connection Timeout 시간동안 계속 SYN Backlog Queue에 남아있게 된다. 

 

공격자가 대량의 SYN을 보낸다면 SYN Backlog Queue가 가득 차서 더 이상의 연결 요청을 받을 수 없게 된다.

 

 

 

2. Ping of Death (PoD)

ICMP 패킷을 정상적인 크기보다 아주 크게 만들어서 전송하면 다수의 IP 단편화가 발생하고, 수신 측에서는 단편화된 패킷을 재조합하는 과정에서 부하가 발생하거나, 재조합 버퍼의 오버플로우가 발생하여 정상적인 서비스를 하지 못하도록 하는 공격이다.

 

 

 

3. 스머프

공격자가 출발지 주소를 공격 대상의 IP로 설정하여 네트워크 상에 모든 호스트에게 ICMP Echo 패킷을 브로드캐스팅하여 마비시키는 공격이다.

 

Ping 메시지를 수신한 네트워크 내의 모든 호스트가 Ping 응답 메시지를 출발지 주소로 동시에 전송함으로써 공격 대상 서버를 마비시킨다.

 

 

 

4. 랜드어택

패킷을 전송할 때 출발지 주소와 목적지 주소를 공격 대상의 IP로 똑같이 만들어서 보내는 공격이다.

 

공격 대상이 끊임없이 자기 사진에게 응답을 보내게 하여 서비스 장애가 발생한다.

 

 

 

5. 티어드롭 

IP 패킷의 재조합 과정에서 잘못된 Fragment Offset 정보로 인해 공격 대상이 문제를 발생하도록 만드는 공격이다.

 

공격자는 IP Fragment Offset 값이 중첩되도록 조작하여 전송하면, 수신한 시스템이 이를 재조합하는 과정에서 오류가 발생하여 서비스 장애가 발생한다.

 

 

 

6. 봉크 / 보잉크

두 공격 모두 프로토콜의 오류 제어를 이용한다.

 

봉크는 패킷을 분할하여 보낼 때 같은 시퀀스 번호를 보내 오류를 일으킨다.

보잉크는 패킷을 보낼 때 중간에 시퀀스 번호를 비정상적인 상태로 보내서 부하를 일으키게 하는 공격이다.