hping3 -S --flood --rand-source -p 80 localhost
先来解释一下这条命令
-S 表示发送的是SYN包。
这里涉及到TCP的三次握手,客户端与服务器要建立连接,首先要先由客户端向发服务器发送一个SYN包请求连接,服务器收到客户端发来的SYN包后会回复一个SYN+ACK包表示可以进行连接,之后客户端再发送一个SYN+ACK包,当这个包发送完成之后,客户端和服务器的连接就算成功了。因此,这个参数导致的结果时向服务器发送SYN包却不对返回的SYN+ACK包进行回应,使服务器保持在一种"半连接"在状态
–flood 表示以洪水的方式发送,就是拼了命地发
–rand-source 是指定随机来源,意思是假装有很多台主机要和服务器连接,实际上这些主机IP都是伪造的
-p 80 指定端口号为80
[hostname/ip] 当然就是目标服务器的主机名或是IP地址啦
由于设置了随机来源,所以我们并不会收到服务器的回应,因此我们看不到任何的回显。当然,如果没有使用-rand–source的话,就可以看到服务器的回应了不过,这样服务器当然也就知道发起攻击的是谁了
一旦对本机进行攻击,可以使用top命令看到内存一下子就使用爆满。