#About
J씨는 웹서핑을 하던 도중, 인터넷의 속도가 급작스럽게 저하되는 현상을 경험하였고, 이를 이상하게 여겨 평소에 보안을 공부하던 당신에게
분석을 의뢰하였다. J 씨의 PC를 공격한 해커의 IP Address와 공격 명칭을 적시오.
(공백은 생략하며 플래그 형식은 공격명칭_IP Address 이다.)
#Solution
[그림 1] - 문제 파일 확인
문제의 시나리오에서 제공받은 파일을 열었을 때, 총 20,824개의 패킷을 확인할 수 있었다
문제의 상황은 인터넷 속도의 급작스러운 저하이며, 이는 과도한 트래픽 또는 시스템 자원을 부족하게 하여 원래 의도된 용도로
사용하지 못하게 하는 서비스 거부 공격을 당했을 때 나타나는 특징과 같다. 따라서 DoS Attack의 공격 종류와 그 특징을 알아야 한다
[ + ] 서비스 거부 공격의 종류
Land Attack
공격자는 타겟의 IP로 변조하여 ICMP 패킷을 브로드캐스트로 다수의 시스템에 전송 하는 것이며, 결과적으로 다수의 시스템은
타겟의 IP로ICMP 응답 패킷을 전송하게 되면서, 타겟의 PC는 다수의 시스템으로부터의 패킷을 받음에 있어 성능이 저하된다
Ping of Death
공격자는 타겟에게 ICMP Echo Request 패킷의 크기를 정상보다 크게 만들어 전송하며, 타겟 네트워크에 도달하는 동안 패킷은
단편화되며 결과적으로 타겟의 PC에서 단편화된 패킷을 모두 처리해야하므로 정상적인 패킷보다 많은 부하가 걸리며, 성능이 저하된다
Smurf Attack
출발지 주소를 타겟의 IP로 설정 한뒤, ICMP 패킷을 네트워크 전체에 브로드캐스팅 하며 결과적으로 ICMP 응답을 처리하는 타겟의 PC는 성능이 저하된다
Tear Drop
정상적으로 패킷을 전송할 때, 데이터의 송신 한계를 넘으면 최대 전송 단위인 MTU(1500Byte)로 나누어 보내는 단편화가 발생한다. 해당 공격 기법은
IP 패킷에 있어 offset 중첩을 이용한 공격이며 단편화 된 패킷사이에 오프셋이 붙게 되면서 패킷 재조합 과정에서 기존의 패킷의 사이즈보다 커지는
오버플로우가 발생하게 되며 결과적으로 시스템에 오류가 생긴다
SYN Flooding
TCP 프로토콜의 3-Way Handshaking의 연결 과정의 취약점을 이용한 것으로 공격자는 IP Spoofing 과정을 진행 한 후, SYN 패킷을 타겟에게 전송한다.
타겟은 SYN/ACK 패킷을 전송한 뒤 대기하며 공격자는 세션 성립을 위한 ACK 패킷을 보내지 않고 계속 새로운 연결만 요청한다 타겟은 자원 할당을
해지하지 않고 자원만 소비하여 부하가 걸리며 결과적으로 속도가 저하된다
위 공격 기법이외에도 TCP Flag Flooding 또는 HTTP 데몬의 개수를 초과시키는 공격등 다양한 공격이 존재하며 서비스 거부에 해당하면 모두 DoS 공격이다
서비스 거부 공격의 흔적을 찾기 위해 패킷을 살펴보다 아래의 그림에서 포트 스캐닝 흔적에 해당하는 패킷을 확인할 수 있었다
[그림 2] - SYN 플래그를 이용한 포트 스캐닝 흔적 확인
IP주소 192.168.37.130에서 192.168.38.134로 SYN 플래그를 이용한 Half-Open 포트스캐닝을 지속적으로 진행했다
192.168.37.134의 서버는 닫혀있거나 스캐닝을 방지해두었는지 ACK+RST 패킷으로 응답패킷을 다시 192.168.37.130으로 보내고 있다
포트 스캐닝 자체에 있어서는 문제의 답과 거리가 멀 수도 있지만, 포트스캐닝이 지속적으로 이루어짐에 따라 의심이 생겼고
아래와 같이 Source IP가 192.168.37.130이며 Destination IP가 192.168.37.134인 패킷을 필터링해 보았다
[그림 3] - 필터링 식 적용
필터링 식을 적용한 패킷만 보았더니 192.168.37.130에서 192.168.37.134로 지속적이며 대량의 SYN 패킷을 보내고 있음을 확인했고
이를 통해, J씨(192.168.37.134)는 웹서핑 도중 192.168.37.130의 IP를 가진 해커에 의해 SYN Flooding 공격받은 증거를 확인할 수 있었다
Answer = SYNFLOOD_192.168.37.130
[ + ] 공부할 겸 작성
Tiny Fragment Attack
최초의 패킷 조각을 매우 작게 만들어 네트워크 침입 탐지/방지 시스템인 IDS와 IPS(이하 패킷 필터링 장비)를 우회하는 공격을 의미한다
패킷 필터링 장비는 최초 유입 패킷의 포트 번호를 확인한다. 하지만 포트번호가 포함되지 않을 정도로 단편화 된 패킷의 첫 번째 조각을
통과 시키게되면 실제 포트번호가 포함되어 있는 두 번째 패킷은 필터링을 거치지 않고 통과하게되며 결과적으로 목적지에서 재조립되면서
패킷이 정상적으로 전달된다.
Fragment overlap Attack
단편화 된 패킷의 첫 번째 조각에는 패킷 필터링 장비에서 허용하는 포트와 같은 포트를 전송하고 두 번째 조각에선 오프셋을 매우 작게
하여 전송한다. 패킷 필터링 장비에서 첫 번째 조각은 허용된 포트이므로 통과 시키고, 두 번째 조각은 이전에 이미 허용된 조각의 ID를
가지므로 역시 통과시킨다. 목적지에 도달한 두 개의 패킷 조각이 재조합 될 때 두 번째 조각의 포트번호가 첫 번째 조각의 포트번호로
overwrite 하게 되며, 이는 Tiny Fragment Attack 보다 정교한 공격 기법에 속한다
SYN FLOODING 공격 예방 => http://blog.pages.kr/460
Update : 2017-11-28 AM 03:12
[그림 3]의 간단한 필터식 이외에도 아래와 같이 조금 더 구체적으로 필터링을 적용 시켜줄 수 있음
[그림 4] - 구체적인 필터식 적용을 통한 SYN FLOODING 확인
'Wargame' 카테고리의 다른 글
[Cresendo] Web History Problem 01-1 (0) | 2017.11.12 |
---|---|
[Cresendo] IconCache Problem 01 (0) | 2017.11.12 |
[Cresendo] Network Problem 02 (0) | 2017.11.11 |
[Cresendo] Network Problem 01 (0) | 2017.11.10 |
[Cresendo] Memory Problem 03 (0) | 2017.11.10 |