13 DoS와 DDoS 공격.

Slides:



Advertisements
Similar presentations
1)RACK 2)UPS 3)P D U 장치 4)Server Group 5)KVM Switch 7)UPS 를 위한 HUB 6) RACK Monitor.
Advertisements

아이튠즈 계정 생성. 1. 인터넷을 통해 설치한 아이튠즈를 실행 한 후 그림의 순서대로 선택을 합니다. 1 2.
7 장. 원격지에서 리눅스서버를 관리하자. 텔넷서버를 설치 / 운영한다. SSH 서버를 운영한다. VNC 서버를 설치 / 운영한다.
HTTPS Packet Capture Tutorial
컴퓨터와 인터넷.

정보 보안 개론과 실습 네트워크 해킹과 보안 3부 해킹 전 정보 획득 Chapter 10. 목록화.
DDoS 3조 권영락.
뇌를 자극하는 Windows Server 2012 R2
소리가 작으면 이어폰 사용 권장!.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
김태원 심재일 김상래 강신택. 김태원 심재일 김상래 강신택 인터넷 통신망의 정보를 제공하는 서비스 인터넷의 자원 및 정보는 NIC가 관리 IP주소 또는 도메인으로 정보 검색 이용자 및 통신망 관한 정보를 제공.
Chapter 6. 리눅스 백도어 황 선 환.
DoS와 DDoS 공격 이창진 양성호 임수미.
Chapter 11 DoS와 DDoS 공격.
18장. 방화벽 컴퓨터를 만들자.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
Hping을 이용한 공격기법과 패킷분석 중부대학교 정보보호학과 심 규 열, 정 성 윤.
5 IP 주소 추적.
6 풋프린팅과 스캐닝.
Chapter 04 IP 주소 추적.
11. 해킹기술 (2) - hacking & security -
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
네트워킹 CHAPTER 13 Section 1 네트워킹의 개요와 java.net 패키지 Section 2 인터넷 주소와 URL
8장. 원격지 시스템 관리하기.
Chapter 21 Network Layer: ARP, ICMP (IGMP).
소리가 작으면 이어폰 사용 권장!.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
10 장 데이터 링크 제어(Data Link Control)
DoS와 DDoS 공격 DOS와 DDOS 공격의 이해 DOS 공격의 이해 DDOS 공격의 이해 한빛미디어(주)
DoS/DDoS의 공격유형과 유형별 방어 경북대학교 통신프로토콜 연구실 윤성식.
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
P2P시스템에 대해서 (peer to peer)
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
WOL(Wake-On Lan) 컴퓨터공학과 4학년 박기웅.
Network Security WireShark를 활용한 프로토콜 분석 I.
Chapter 03 Whois와 DNS 조사.
㈜시스원이 제공하는 시스템 관리 통합 솔루션 SysmanagerOne Agent설치 안내서
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
5 IP 주소 추적.
ACL(Access Control List)
Wi-Fi 취약점 분석 본 프로젝트는 Wi-Fi 환경에서의 취약점 분석을 위한 프로젝트로 다양한 공격방법을 테스트
Adobe 제품 다운로드 및 설치 방법 안내 Adobe Creative Cloud Adobe License 권한을 받으신 분
뇌를 자극하는 Windows Server 장. 원격 접속 서버.
Nessus 4 설치 정보보호응용 조용준.
PC에 설치된 엔드포인트 클라이언트 프로그램을 클릭하여 프로그램 상자를 엽니다
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
16 장 네트워크 보안 : 방화벽과 VPN 16.1 개요 16.2 기밀성 16.3 전자 서명 16.4 인터넷 보안
Network 네트워크 이론 및 실습 TCP / IP 4장.
(DDOS & Massive SQL Injection)
10 장 데이터 링크 제어(Data Link Control)
10 장 데이터 링크 제어(Data Link Control)
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
STS 에서 웹 서버 설치 방법.
Ping Test.
클러스터 시스템에서 효과적인 미디어 트랜스코딩 부하분산 정책
Chapter 27 Mobile IP.
Introduction to JSP & Servlet
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
5.2.3 교환방식의 비교 학습내용 교환방식의 비교.
4. IP 데이터그램과 라우팅 (6장. 인터넷과 IP) IP 데이터그램 : 특정 물리망에 종속되지 않은 가상의 패킷 형식.
CCIT 네트워크 발표 정보보호학과 평문 사이트와 SSL 사이트, SSL strip과 데이터 변조를 이용한 로그인 취약점
방승욱 여은수 민세훈 해킹.
숙제 작성 및 제출 과정 김진하 2008/03/14.
ARP.
Presentation transcript:

13 DoS와 DDoS 공격

학습목표 내용 DoS, DDoS 공격의 패턴을 이해한다. DoS, DDoS 공격을 실행할 수 있다.

DoS와 DDoS 공격의 이해 DoS(Denial of Service, 서비스 거부) 공격 대상이 수용할 수 있는 능력 이상의 정보를 제공하거나, 사용자 또는 네트워크의 용량을 초과시켜 정상적으로 작동하지 못하게 하는 공격 파괴 공격 : 디스크, 데이터, 시스템 파괴 시스템 자원 고갈 공격 : CPU, 메모리, 디스크의 사용에 과다한 부하 가중 네트워크 자원 고갈 공격 : 쓰레기 데이터로 네트워크의 대역폭 고갈 DDoS(Distributed Denial of Service) DoS 공격의 업그레이드판 1999년 8월 17일에 미네소타 대학에서 대대적으로 DDoS 공격이 일어나 CNN, Yahoo, NBC 같은 대규모 사이트를 마비시킴

DoS 공격 Ping of Death ping을 이용하여 ICMP 패킷을 정상 크기보다 아주 크게 만드는 것 크게 만들어진 패킷은 네트워크를 통해 라우팅(routing)되어 공격 네트워크에 도달하는 동안 아주 작은 조각(fragment)으로 쪼개지고 공격 대상은 조각화된 패킷을 모두 처리 해야 하므로 정상적인 ping보다 부하가 훨씬 많이 걸림

DoS 공격 라우팅은 출발지 주소와 목적지 주소를 확인하고 최적의 거리를 찾아 패킷을 전달해주 는 것 전달 과정에서 패킷은 항상 특성이 똑같은 네트워크를 지나지는 않음. 프레임 릴레이 ATM, 토큰 링, 이더넷 등 다양한 네트워크를 지나 목적지에 도달 네트워크마다 최대 전송 가능 패킷 길이가 달라 최대 전송 가능 패킷 길이가 더 작은 네 트워크를 지날 때 데이터는 작게 분할됨 한 번 분할된 패킷은 더 긴 패킷 길이를 허용하는 네트워크를 지나도 다시 커지지 않음

DoS 공격 Ping of Death 보안 대책 현재 대부분의 시스템은 Ping of Death 공격을 받을 때 반복적으로 들어오는 일정 수 이상의 ICMP 패킷을 무시하게 설정되어 있음 관리하는 시스템이 Ping of Death 공격에 취약하다면 가장 일반적으로 할 수 있는 방법 은 패치 운영체제별 패치는 각 벤더의 홈페이지에서 구할 수 있음

실습 13-1 Ping of Death 공격하기   실습환경 hping3 설치 1-1 hping3 설치 ➊ yum list hping ➋ yum install hping3.i686 1-2 man hping3 실행 man hping3 • 공격자 시스템 : 리눅스 페도라 12 • 공격 대상 시스템 : 리눅스 페도라 12 • 필요 프로그램 : hping3 실습환경 1  

실습 13-1 Ping of Death 공격하기 Ping of Death 공격 수행 hping3 --icmp --rand-source 192.168.0.100 -d 65000 –flood ⓐ --icmp : 패킷 종류를 ICMP로 선택한다. ⓑ --rand-source : 공격자의 IP 주소를 랜덤하게 생성한다. ⓒ 192.168.0.100 : 공격 대상 시스템의 IP 주소다. ⓓ -d 65000 : 전송하는 패킷의 길이는 65,000바이트로 한다. 참고로 최대 전송 가능 길이는 65,535 바이트다. ⓔ --flood : 시스템이 생성 가능한 만큼 빠른 속도로 패킷을 보낸다. 2

실습 13-1 Ping of Death 공격하기 Ping of Death 공격의 패킷 분석 3-1 Ping of Death 공격 시 공격자 시스템에서의 TCP Dump 3-2 Ping of Death 공격 시 공격 대상 시스템에서의 TCP Dump ⓐ 16:11:27.484297 : 패킷을 읽어 들인 시각이다. ⓑ 24.100.77.232 > 192.168.0.100 : 패킷의 송신/수신 시스템의 IP 주소다. ⓒ ICMP echo request : 프로토콜의 종류다. ⓓ id 11533 : 패킷의 IP 헤더의 Identification 값이다. 이 값이 같으면 한 패킷이 단편화된 것이다. ⓔ length 1480 : IP 헤더 길이를 포함한 패킷의 전체 길이다. 3

DoS 공격 SYN Flooding 네트워크에서 서비스를 제공하는 시스템은 동시 사용자 수가 제한되어 있음

DoS 공격 공격자는 쓰리웨이 핸드셰이킹 과정에서 서버를 다운시키기 위해 짧은 시간 안에 많은 양의 SYN만 보냄 SYN Flooding 공격을 성공하려면 서버에 설정된 대기 시간 안에 서버가 수용할 수 있는 동시 사 용자 수의 한계를 넘는 연결을 시도해야 함 서버가‘SYN Received’상태로 ACK 패킷을 기다리는 상태를‘백로그(backlog)에 빠졌 다’고 표현하며,‘ SYN Received’상태로 ACK 패킷을 기다리는 시간은 설정 사항으로 변경할 수 있음

DoS 공격 SYN Flooding 보안 대책 일차 예방법은 시스템에 패치를 하는 것이며, 다음으로는 침입 탐지 시스템(IDS) 또는 침입 차단 시스템(IPS)을 설치하는 것 SYN Flooding 공격은 일정 시간 안에 동시 접속자 수를 점유해야 하므로 아주 짧은 시간 안에 똑 같은 형태의 패킷을 보내게 됨. 이는 매우 정형화된 형태로, 네트워크에서 쉽게 인지가 가능 해당 ISP 업체에 연락하여 그에 해당하는 IP 주소 대역을 접속 금지시키거나 확인한 후 방화벽 또 는 라우터에서 해당 접속을 금지시킴으로써 시스템 서비스 중지를 막을 수 있음 또 다른 대응 방법은 Syn_Cookie Syn_Cookie는 서버에서 클라이언트로 보내는 SYN+ACK 패킷에 임의로 생성되는 시퀀스넘버 대 신 서버에서 암호화 기술을 이용해서 인증 정보가 담긴 시퀀스 넘버를 생성하여 클라이언트에 보 내는 것

DoS 공격 TCP 쓰리웨이 핸드셰이킹 시 SYN Flooding 공격에 대한 Syn_Cookie 대응 방법 ① 클라이언트로부터 SYN 패킷을 받으면, 간단한 인증 정보가 담긴 Syn_Cookie를 시퀀스 넘버 값 에 넣는다. SYN으로 인해 원래는 TCP SYN Received 상태가 되어야 하지만 세션을 닫는다. ② 클라이언트가 Syn_Cookie가 포함된 값으로 ACK를 보내면, 서버는 그제서야 세션을 다시 열고 통신을 시작한다.

실습 13-2 SYN Flooding 공격하기 실습환경 웹 서비스 시작 service httpd start SYN Flooding 공격 수행 hping3 --rand-source 192.168.0.100 -p 80 -S –flood -p 80 : 80번 포트에 대해 패킷을 전송한다. -S : TCP 패킷 중SYN만 전송한다. • 공격자 시스템 : 리눅스 페도라 12 • 공격 대상 시스템 : 리눅스 페도라 12 • 필요 프로그램 : hping3 실습환경 1 2

실습 13-2 SYN Flooding 공격하기 SYN Flooding 공격의 패킷 분석 3 ⓐ id 28001 : Ping of Death와는 달리 id가 모두 다른데, 이는 패킷이 모두 단편화된 것이 아니기 때문 이다. ⓑ offset 0 : 단편화될 만한 패킷이 없기 때문에 모두 0이다. ⓒ proto TCP (6) : IP 헤더를 통해 전송되는 패킷이TCP(6)임을 나타낸다. ⓓ length 40 : IP 헤더와 TCP 헤더가 각각 20바이트씩, 총 40바이트가 패킷 길이가 된다. 따라서 데이 터 부분은 0바이트가 된다. ⓔ 95.166.9.130.21526 > 192.168.0.100.http : 패킷 송신/수신 시스템의 IP와 포트 번호다. ⓕ S : SYN 패킷임을 나타낸다. 3

실습 13-2 SYN Flooding 공격하기 공격의 확인 netstat -an 4

DoS 공격 Boink, Bonk, Teardrop 프로토콜은 목적에 따라 정도의 차이는 있지만 신뢰성 있는 연결을 제공하려 함 신뢰성 있는 연결은 패킷의 순서가 올바른가, 중간에 손실된 패킷은 없는가를 확인하는 기능을 기본으로 제공 프로토콜은 신뢰도를 확보하고자 반복적으로 재요구하고 수정을 하게 됨 Boink, Bonk, Teardrop은 이런 반복적인 재요구와 수정을 계속하게 함으로써 시스템 자원을 고갈시키는 공격

DoS 공격 TCP를 통해 데이터를 전송할 경우 각 데이터 패킷은 순번, 즉 시퀀스 넘버를 가짐 Bonk는 처음 패킷을 1번으로 보낸 후 두 번째, 세 번째 패킷 모두 시퀀스 넘버를 1번으 로 조작해서 보냄 Boink는 처음 패킷을 1번으로 보낸 후 두 번째 패킷은 101번, 세 번째 패킷은 201번으 로 정상적으로 보내다가 중간에서 일정한 시퀀스 넘버로 보냄 Teardrop은 UDP를 이용. 단순히 시퀀스 넘버를 일정하게 바꾸는 것을 넘어 중첩과 빈 공간을 만들며, 시퀀스 넘버를 좀 더 복잡하게 섞음

DoS 공격 Teardrop 공격 시 패킷의 시퀀스 넘버와 패킷의 배치

DoS 공격 Boink, Bonk, Teardrop 보안 대책 최근에 나온 시스템을 파괴할 수 있는 경우는 거의 없지만 일부 응용 프로그램에서는 이 러한 공격이 동작하는 경우를 가끔 발견할 수 있음 SYN Flooding이나 Ping of Death 공격에 대한 대응책과 같음

실습 13-3 Bonk, Boink 공격하기 실습환경 Bonk, Boink 공격 수행 hping3 -a 200.200.200.200 192.168.0.10 --id 3200 -O 12345 -M 34343 -p 21 –d 320 --flood 1-2 Bonk, Boink 공격 실행 2/2 hping3 -a 200.200.200.200 192.168.0.10 --id 3200 -O 12343 -M 34343 -p 21 –d 320 --flood • 공격자 시스템 : 리눅스 페도라 12 • 공격 대상 시스템 : 리눅스 페도라 12 • 필요 프로그램 : hping3 실습환경 1

실습 13-3 Bonk, Boink 공격하기 Bonk, Boink 공격의 패킷 분석 2 ⓐ id 3200 : id는 필자가 정하여 보낸 값으로 3200이다. 이 값이 같으면 패킷을 수신하는 시스템은 모 두 한 패킷이라고 생각하게 된다. 필자는 3200과 3201로 패킷을 순차적인 패킷이라고 생각하게끔 전송 했다. ⓑ length 360 : 패킷 길이다. 두 종류의 패킷은 각각 IP 헤더와 TCP 헤더를 포함하여 360바이트와 512바이트로 전송되었다. ⓒ 34343:34647 : 시퀀스 넘버다. 다음 패킷의 번호와 중첩되는 구간이 있게 보냈다. 2

DoS 공격 Land Land를 사전에서 찾아보면‘땅’또는‘착륙하다’외에‘(나쁜 상태에) 빠지게 하다’라는 의미 패킷을 전송할 때 출발지 IP 주소와 목적지 IP 주소 값을 똑같이 만들어서 공격 대상에 보내는 것. 이때 조작된 IP 주소 값은 당연히 공격 대상의 IP 주소여야 함 SYN Flooding처럼 동시 사용자 수를 점유해버리며, CPU 부하까지 올림

DoS 공격 Land 보안 대책 Land 공격도 현재의 시스템에서는 대부분 효과가 없음 현재의 시스템은 출발지 주소와 목적지 주소를 확인하여 동일한 패킷은 인식하고 버림 라우터나 방화벽에서 출발지 IP 주소가 내부 IP 주소와 동일한 패킷은 처음부터 차단하 는 것이 좋음

실습 13-4 Land 공격하기 Land 공격 수행 hping3 192.168.0.10 -a 192.168.0.10 --icmp –flood • 공격자 시스템 : 리눅스 페도라 12 • 공격 대상 시스템 : 리눅스 페도라 12 • 필요 프로그램 : hping3 실습환경 1

실습 13-4 Land 공격하기 Land 공격의 패킷 분석 2

DoS 공격 Smurf, Fraggle 웜이 네트워크를 공격하는 데 아직도 많이 쓰는데, Ping of Death처럼 ICMP 패킷을 이 용 출발지 주소가 공격 대상으로 바뀐 ICMP Request 패킷을 시스템이 매우 많은 네트워크 로 브로드캐스트함 브드캐스트란 확성기를 들고 청중 모두에게 얘기하는 것 기본적인 브로드캐스트는 목적지 IP 주소255.255.255.255를 가지고 네트워크의 임의의 시스템에 패킷을 보내는 것

DoS 공격 다이렉트 브로드캐스트(Direct Broadcast) 172.16.0.0 네트워크에 IP 주소가10.10.10.24인 공격자가 브로드캐스트하려면 목적지 IP 주소를 172.16.0.255와 같이 설정하여 패킷을 보내야 함 공격자가 172.16.0.255로 다이렉트 브로드캐스트하면 [그림 13-27]과 같이 패킷이 전달됨 ICMP Request를 받게 된 172.16.0.0 네트워크는 ICMP Request 패킷의 위조된 시작 IP 주소로 ICMP Reply를 [그림13-28]과 같이 다시 보냄

DoS 공격 Smurf, Fraggle 보안 대책 Smurf는 DDoS 공격의 한 방편으로 이용되기도 함 이 공격을 막는 방법은 다이렉트 브로드캐스트를 막는 것

실습 13-5 Smurf, Fraggle 공격하기 실습환경 Smurf 공격 수행 hping 192.168.0.255 -a 10.10.10.5 --icmp --flood • 공격자 시스템 : 리눅스 페도라 12 • 공격 대상 시스템 : 리눅스 페도라 12 • 필요 프로그램 : hping3 실습환경 1

실습 13-5 Smurf, Fraggle 공격하기 Smurf 공격의 패킷 분석 2

DoS 공격 Mail Bomb Mail Bomb 보안 대책 흔히 폭탄 메일이라 하고 스팸 메일도 같은 종류 메일 서버는 각 사용자에게 일정한 디스크 공간을 할당하는데, 메일이 폭주하여 디스크 공간을 가득 채우면 정작 받아야 하는 메일을 받을 수 없음 Mail Bomb 보안 대책 /etc/mail/access 파일을 이용해 IP 주소, 이메일 주소, 도메인별로 제한하거나 Relay를 허용

DoS 공격 설정된 /etc/mail/access 파일 Sendmail에 적용 ➊ ➋ makemap hash /etc/mail/access < /etc/mail/access를 실행하면 같은 폴더의 access.db에 vi 에디터로 입력한 값이 적용되었는지 strings 명령으로 확인 가능 ➊ makemap hash /etc/mail/access < /etc/mail/access ➋ strings /etc/mail/access.db ➊ ➋

실습 13-6 Mail Bomb 공격하기 실습환경 Sendmail을 통한 메일 전송 telnet 127.0.0.1 25 ⓐ Sendmail은 텔넷을 이용한다. 텔넷으로 로컬 IP 주소(127.0.0.1)를 쓰고 있으며, SMTP 포트 번호인 25번을 뒤에 써주 면 Sendmail에 접속할 수 있다. ⓑ Sendmail에 접속한 후‘mail from :’뒤에 보내는 사람의 주소를 쓴다. 이메일은 어떤 주소를 써도 무방하다. ⓒ‘rcpt to’: 다음에 받는 사람의 주소를 쓴다. ⓓ‘DATA’라고 입력하면 메일의 본문을 입력할 수 있다. ⓔ 보내는 내용을 적은 다음‘.’을 누르고 키를 입력하면 메일이 보내진다. 필자는 ‘ Hello. I’m wishfree’라고 간단하게 보냈 다. • 공격자 시스템 : 리눅스 페도라 12 • 필요 프로그램 : Sendmail 실습환경 1

실습 13-6 Mail Bomb 공격하기 Sendmail에서 전송한 메일 확인 2

DoS 공격 시스템 자원 고갈 공격 시스템 자원 고갈 공격 보안 대책 가용 디스크 자원 고갈 가용 메모리 자원 고갈 가용 프로세스 자원 고갈 시스템 자원 고갈 공격 보안 대책 Tripwire 무결성 체크 쿼타(quota) 설정 디스크 자원 고갈과 앞 절에서 다룬 스팸 메일 공격으로부터 시스템의 파괴를 막을 수 있는 방법은 쿼타(quota)를 설정

실습 13-7 자원 고갈 공격하기 실습환경 가용 디스크 자원 고갈 공격 1-1 디스크 자원 고갈을 위한 소스 vi disk.c 1-2 디스크 자원 공격 전 상태 확인 df • 공격자 시스템 : 리눅스 페도라 12 • 필요 프로그램 : disk.c, memory.c, process.c 실습환경 1

실습 13-7 자원 고갈 공격하기   1-3 disk.c 파일 컴파일 ➊ gcc -o disk disk.c ➋ ./disk 1-4 디스크 자원 공격 전, 실시, 공격 후 상태 확인 df  

실습 13-7 자원 고갈 공격하기 1-5 디스크 자원 고갈 공격의 프로세스 확인 및 제거 ➊ ps –ef ➋ kill -9 2628 가용 디스크 자원 고갈 공격 소스  2

DDoS 공격 DDoS 공격에 대한 이해 공격자(Attacker) : 공격을 주도하는 해커의 컴퓨터다. 마스터(Master) : 공격자에게서 직접 명령을 받는 시스템으로, 여러 대의 에이전트(Agent)를 관리한다. 핸들러(Handler) 프로그램 : 마스터 시스템의 역할을 수행하는 프로그램이다. 에이전트(Agent) : 공격 대상에 직접 공격을 가하는 시스템이다. 데몬(Daemon) 프로그램 : 에이전트 시스템 역할을 수행하는 프로그램이다.

DDoS 공격

DDoS 공격 공격자가 마스터와 에이전트를 획득하여 실제적으로 DDoS 공격을 하는 순서 ① 많은 사용자가 사용하며, 대역폭이 넓다. 관리자가 모든 시스템을 세세하게 관리할 수 없는 곳의 계정을 획득하여 스니핑이나 버퍼 오버플로우 등의 공격으로 설치 권한이나 루트 권한을 획득한 다. ② 잠재적인 공격 대상을 파악하기 위해 네트워크 블록별로 스캐닝을 실시한다. 그리고 원격지에서 버퍼 오버플로우를 일으킬 수 있는 취약한 서비스를 제공하는 서버를 파악한다. ③ 취약한 시스템 목록을 확인한 후 실제 공격을 위한 Exploit을 작성한다. ④ 권한을 획득한 시스템에 침투하여 Exploit을 컴파일하여 설치한다. ⑤ 설치한 Exploit으로 공격을 시작한다

DDoS 공격 Trinoo 1999년 6월 말부터 7월 사이에 퍼지기 시작했으며, 미네소타 대학 사고의 주범. 원래 이 름은 Trin00 처음 솔라리스 2.x 시스템에서 발견되었으며, 최소 227개 시스템이 공격에 쓰인 것으로 알려져 있음 UDP를 기본으로 하는 공격을 시행하며‘statd, cmsd, ttdbserverd’데몬이 주 공격 대상 Trinoo는 기본적으로 [표 13-3]과 같은 포트 번호를 사용하지만 소스 코드에서 임의로 변경 가능

DDoS 공격 Trinoo

DDoS 공격 TFN(TribedFlood Network) 1999년 8월 사고를 일으켰던 Trinoo의 약간 발전된 형태로 믹스터 (Mixter)라는 사람 이 개발 Teletubby Flood Network라고 부르기도 함 TFN도Trinoo처럼 statd, cmsd, ttdb 데몬의 취약점을 공격 클라이언트를 구동하면 패스워드를 사용하지 않고, 클라이언트와 데몬 간에는 ICMP Echo Request 패킷을 사용 클라이언트의 각 명령은 ICMP Echo Request 패킷에 16비트 이진수로 데몬에 전송 TFN은 공격자 시스템과 마스터 시스템 간 연결이 암호문이 아닌 평문으로 전달되는 약 점이 있음. 이는 데이터가 다른 해커나 관리자에게 스니핑되거나 세션 하이재킹될 수 있으며, 공격자를 노출시키는 등 치명적일 수 있음

DDoS 공격 TFN 2K TFN의 발전된 형태로, 역시 믹스터가 개발 특징 통신에 특정 포트를 사용하지 않고 암호화되어 있으며, 프로그램을 통해 UDP, TCP, ICMP를 복합 적으로 사용하며 포트도 임의로 결정한다. TCP SYN Flooding, UDP Flooding, ICMP Flooding, Smurf 공격을 쓰고 있다. 모든 명령은 CAST-256 알고리즘으로 암호화된다. 지정된TCP 포트에 백도어를 실행할 수 있다. 데몬은 설치 시 자신의 프로세스 이름을 변경함으로써 프로세스 모니터링을 회피한다. UDP 패킷의 헤더가 실제UDP 패킷보다 3바이트만큼 더 크다. TCP 패킷의 헤더의 길이는 항상 0이다. 정상 패킷이라면 절대로 0일 수 없다.

DDoS 공격

DDoS 공격 Stacheldraht 독일어로‘철조망’이라는 뜻 1999년 10월에 처음 출현한 것으로 알려져 있으며, TFN을 발전시킨 형태 Stacheldraht(슈타첼드라트) 역시 TFN 2K처럼 공격자와 마스터, 에이전트, 데몬과의 통신에 암호화 기능이 추가됨 공격자가 마스터에 접속하면 마스터는 현재 접속을 시도한 이가 올바른 공격자인지 확 인하기 위해 패스워드 입력을 요구 입력된 패스워드는 최초 설치되기 전에‘Authentication’의‘Passphrase’를 사용하여 암 호화된 상태로 공격자에게서 핸들러로 보내짐

DDoS 공격 Stacheldraht

실습 13-8 Trinoo를 이용해 DDoS 공격하기 1-1 Trinoo 소스 압축 풀기 tar -xvf trinoo.tar • 공격자 시스템과 마스터 시스템 : 리눅스 페도라 12 • 에이전트 시스템 : 리눅스 페도라 12 • 공격 대상 시스템 : 윈도우 XP • 필요 프로그램 : Trinoo 소스, gcc 컴파일러 실습환경 1

실습 13-8 Trinoo를 이용해 DDoS 공격하기 1-2 Trinoo 에이전트 소스 수정 vi ns.c 1-3 Trinoo 에이전트 컴파일을 위한 Makefile 수정

실습 13-8 Trinoo를 이용해 DDoS 공격하기 에이전트 프로그램 실행 vi ns.c 마스터 프로그램 실행 3-1 Trinoo 마스터 실행 ➊ ./master ➋ g0rave 2  

실습 13-8 Trinoo를 이용해 DDoS 공격하기 3-2 Trinoo 마스터로 접속 ➊ telnet 192.168.0.100 27665 ➋ betaalmostdone ➌ bcast 3-3 help로 명령 사용법 확인 ➊ help ➋ help mdos     

실습 13-8 Trinoo를 이용해 DDoS 공격하기 3-4 mdos 명령의 실행 mdos 192.168.0.101 3-5 Trinoo Dos 공격 TCP Dump

DoS, DDoS 공격에 대한 대응책 방화벽 설치와 운영 방화벽을 설치하여 내부 네트워크의 진입 차단 다음과 같은 사항 차단 출발지 주소 목적지 주소 시도하고자 하는 서비스(포트 번호) 프로토콜 방화벽 룰셋 원칙 최소한의 서비스만 제공하고 사용하지 않는 서비스의 포트는 닫는다. 이는 DoS 공격뿐만 아니라 모든 해킹에 대한 기본 대응책이다. 서비스에 필요하지 않은데 열어놓은 포트는 해커에게 많은 공 격 가능성을 제공하는 것과 같다. 외부 네트워크에서 들어오는 패킷의 출발지 주소가 내부 네트워크에 존재하는 주소지와 일치할 경 우 차단한다. 침입 차단 시스템 내부 구성 요소 간 트러스트(Trust, 신뢰)를 금지한다. 내부/외부에 인증 없이 시스템에 접속할 수 있는 사용자를 허용하지 않는다. 명시적인 서비스 외의 모든 서비스를 금지한다.

DoS, DDoS 공격에 대한 대응책 침입 탐지 시스템 설치와 운영 안정적인 네트워크 설계 시스템 패치 스캐닝 IDS를 통해 공격의 탐지와 대응 안정적인 네트워크 설계 시스템 패치 시스템 패치 등을 통한 지속적인 관리 스캐닝 Zombie 툴을 사용한 내부 DDoS 툴의 탐색과 제거 서비스별 대역폭 제한 불필요한 서비스를 제거함으로써 공격 위험의 감소 서비스별 대역폭을 제한함으로써 공격에 따른 피해 최소

DoS, DDoS 공격에 대한 대응책 방화벽 설치와 운영 침입 탐지 시스템 설치와 운영 안정적인 네트워크 설계 시스템 패치 방화벽을 설치하여 내부 네트워크의 진입 차단 침입 탐지 시스템 설치와 운영 IDS를 통해 공격의 탐지와 대응 안정적인 네트워크 설계 시스템 패치 시스템 패치 등을 통한 지속적인 관리 스캐닝 Zombie 툴을 사용한 내부 DDoS 툴의 탐색과 제거 서비스별 대역폭 제한 불필요한 서비스를 제거함으로써 공격 위험의 감소 서비스별 대역폭을 제한함으로써 공격에 따른 피해 최소