오늘은 네트워크 공격 중 서비스의 가용성을 떨어트리는 공격인 DoS(Denial of Service)와 공격방법에 대해 정리하고자 함
Denial of Service
의 줄임말로 공격 대상 시스템(Target)이 정상적인 서비스를 할 수 없도록 서비스를 마비시키는 형태의 공격
파괴 공격
디스크, 데이터, 시스템을 손상시키는 공격
시스템 자원 소진 공격
CPU, 메모리 등의 자원을 과도하게 사용해 시스템의 처리 능력을 소진시키는 방식
네트워크 자원 소진 공격
과도한 트래픽을 발생시켜 네트워크 대역폭을 소진시킴으로써 네트워크 성능을 저하시킴
Ping 패킷의 데이터크기를 매우 크게하여 소수의 패킷만 보내도 수십개로 분할 하여 목적지로 송신되는 공격 방법
ping
명령을 통해 ICMP(또는 ICMP Echo Request) 패킷을 정상적인 크기보다 아주 크게 만들어 전송하면 MTU(Maximum Transmission Unit)에 의해 다수의 IP 단편화가 발생하게 됨
MTU : 물리적인 네트워크 프로토콜 프레임의 데이터부 최대 크기
수신 측에서는 단편화된 패킷을 재조합하는 과정에서 부하가 발생하거나, 재조합 버퍼의 오버플로우가 발생하게 됨
공격자가 출발지와 목적이 IP가 같은 패킷을 전송하여 수신자가 무한 루프(Infinite Loop) 상태에 빠지도록하여 시스템 자원을 소모시키는 공격 방법
출발지와 목적지의 IP주소가 같을 경우 수신자가 자기 자신에게 응답을 보내는 무한 루프 상태가 발생함
대응책
대부분의 운영체제는 보안패치가 적용되어 있음
패치 적용 시 출발지와 목적지IP 주소가 동일한 패킷은 모두 폐기하게 됨
침입차단시스템(방화벽), 라우터 등의 패킷 필터링 장리를 통해 출발지와 목적지 IP 주소가 같으면 차단 하도록 설정
출발지 IP를 희생자 IP로 위조한 후 증폭 네트워크로 ICMP Ehco Request를 브로드캐스트함으로써, 다수의 ICMP Echo Reply 가 희생자에게 전달되는 공격 방법
Directed Broadcast
Amplifier(Bounce) Network (증폭네트워크)
대응책
다량의 ICMP Echo Reply 패킷이 발생한다면 해당 패킷을 모두 차단
증폭 네트워크로 사용되는 것을 막기 위해 다른 네트워크로부터 자신의 네트워크로 들어오는 Directed Broadcast 패킷을 허용하지 않도록 라우터 설정
명령어 : (config-if)# no ip directed-broadcast
브로드캐스트 주소로 전송된 ICMP Echo Request 메시지에 대해 응답하지 않도록 설정
IP 패킷의 재조합 과정에서 조작된 단편의 오프셋 정보로 인해 수신시스템에 오류나 부하가 발생하도록 하는 공격 방법
유사 한 공격으로 Bonk, Boink가 있음
패킷 필터링 장비를 우회하기 위한 공격
- TearDrop 공격처럼 오프셋을 조작하는 공격이지만 DoS가 아닌 침입차단시스템(방화벽) 등을 우회하기 위한 공격 방법
TCP/UDP 헤더가 2개의 IP단편에 나누어질 정도로 최초의 단편을 아주 작게 만드는 공격기법
공격 원리
TCP/UDP 헤더가 2개의 IP 단편에 나누어질 정도로 작게 쪼개서 첫 번째 단편에는 목적지 포트가 포함되지 않고 두 번째 단편에 포함되도록 함
목적지에서 단편의 재조합을 통해 공격자가 원하는 목적지 포트로 연결됨
IP 단편의 오프셋을 조작하여 첫 번째 단편의 일부분을 두 번째 단편이 덮어쓰도록 하는 공격 방법
공격 원리
두 개의 IP 단편을 생성한 후 첫 번째 단편에는 패킷 필터링 장비에서 허용하는 목적지 포트가 포함되도록하고 두 번째 단편에는 공격자가 연결하기원하는 목적지 포트가 포함되도록 함
두 번째 IP 단편이 첫 번째 단편을 덮어쓸 수 있도록 오프셋을 조작
목적지에서 단편의 재조합을 통해 공격자가 원하는 목적지 포트로 연결됨