DoS 공격은 시스템이나 네트워크의 구조적인 취약점을 공격해서
정상적인 서비스를 할 수 없도록 방해하는 것으로
보통 과도한 부하를 발생시켜 데이터나 자원을 잠식합니다
Ping을 이용한 ICMP 패킷을 정상적인 크기보다 아주 크게 만들어 보내는 공격방법으로
ICMP Flooding의 일종입니다
크게 만들어진 패킷은 네트워크를 통해 라우팅되어 공격 대상이 되는 네트워크에 도달하는 동안에
Fragment로 쪼개어 지고,
공격 대상이 되는 시스템은 작게 조각화된 패킷을 모두 처리해야하기 때문에 정상적인 ping보다
훨씬 많은 부하가 걸리게 되어 정상적인 서비스를 할 수 없게 만듭니디
UDP 패킷을 대량 발생시켜 특정 시스템의 서비스를 방해하는 공격입니다
소스 주소가 Spoofing된 시스템에서 UDP 패킷을 공격 대상이 되는 시스템에 대량 전송해서
네트워크 대역폭 (Bandwidth)을 소모하는 형태로 공격이 이루어집니다
네트워크 서비스들이 동시에 접속하는 사용자 수의 제한이 있다는 점을 악용한 공격입니다
특히 TCP의 3-way handShaking과 관계가 있습니다
공격자가 특정 시스템의 서비스 방해를 목적으로 짧은 시간에 대량의 SYN 패킷을 보내서
접속 가능한 공간을 소진함으로서 다른 사용자의 접속을 막는 기법입니다
TCP 기반으로 운영되는 서버 시스템은 클라이언트로부터 SYN 패킷을 받으면,
클라이언트에게 접속 가능하다는 의미로 SYN + ACK 패킷 전송을
클라이언트로부터 ACK 패킷이 도착하기까지 일정시간 대기하게 됩니다
SYN Flooding 공격은 서버에 설정된 대기 시간 안에 서버가 수용할 수 있는 동시 접속자 수 이상의
SYN 패킷을 보내고, ACK 패킷을 보내지 않는 형태로 공격이 이루어집니다
SYN Flooding 공격의 확인은 netstat 명령으로 확인할 수 있는데,
결과의 State 항ㅁ고에 SYN_RECV가 과도하게 발생하면 이 공격을 의심할 수 있습니다
데이터를 전송하기 위해서는 패킷을 분할하고 시퀀스 넘버를 생성하는데,
이러한 시퀀스 넘버를 조작하거나 중첩시켜서 패킷화된 데이터를 재조립할 때 혼란을 일으켜
내부에 과부하를 발생시키는 공격방법입니다
유사한 공격으로 Boink, Bonk등이 있습니다
공격자가 임의로 자신의 IP주소 및 포트를 대상 서버의 IP주소 및 포트와 동일하게 하여
서버를 공격합니다
이러한 패킷을 공격 시스템에 보내면 해당 시스템은 SYN 패킷의 출발지 주소를 참조하여
응답 패킷의 목적지 주소를 SYN 패킷의 출발지 주소로 설정해서 보내는데,
이때 패킷은 외부로 나가지 않고 자신에게 돌아옵니다
이 공격법은 SYN Flooding처럼 동시 사용자 수를 증가시키므로 CPU 부하까지 발생시킵니다
공격자는 IP 주소를 공격 서버의 IP주소로 위장하고, ICMP Request 패킷을 브로드캐스트를 통해
다수의 시스템에 전송합니다
이때 브로드캐스트를 수신한 다수의 시스템은 ICMP Echo Reply 패킷을 공격자가 아닌
공격 대상의 서버로 전송하게 되면서 부하를 발생시킵니다
스펨 메일 형태의 공격으로 다량의 메일을 발송해서 메일 서버의 디스크 공간을 가득 채움으로서
더이상 메일 수신이 불가능하게 만드는 공격입니다
여러 대의 공격자를 분산 배치해서 동시에 DoS 공격을 함으로서
공격 대상이 되는 시스템이 정상적인 서비스를 할 수 없도록 방해하는 공격입니다
다수의 호스트로부터 통합된 UDP Flooding 공격을 시행합니다
Trinoo와 거의 유사한 공격 도구로 UDP Flooding 뿐만 아니라 TCP SYN Flooding,
ICMP 브로드캐스트 공격도 가능합니다
그러나 공격자 시스템과 마스터 시스템간 연결이 평문으로 되어있어 공격자가 노출될 가능성이 높습니다
TFN의 발전된 형태로 통신에 특정 포트를 사용하지 않고 암호화를 사용합니다
프로그램에 의해 UDP, TCP, ICMP가 복합적으로 사용되고, 포트도 임의로 결정합니다
UDP, TCP SYN Flooding, ICMP Flooding, Smurf 공격을 사용합니다
독일어로 철조망이라는 뜻으로 Trinoo, TFN을 참고해서 만들어졌습니다
암호화 기능과 접속한 시도가 올바른 공격인지 확인하기 위해 패스워드 입력을 요구합니다
특히 마스터와 에이전트들이 자동으로 갱신되는 특징이 있습니다
UDP Flooding, TCP SYN Flooding, ICMP Flooding, Smurf 공격을 사용합니다
SSH를 기반으로 로그인 시에 무차별적으로 인증정보를 대입해서 접근을 시도하는 공격입니다
특히 레드햇 계열 리눅스는 기본 설정이 root 접속을 허가하도록 되어있어
아이디를 root로 고정하고, 사전파일(Dictionary File)에 있는 단어들을 패스워드로 대입하는
형태의 공격이 보편화되어 있습니다