死亡之ping(Ping of Death)

xiaoxiao2021-03-01  216

在因特网上,ping of death是一种拒绝服务攻击,方法是由攻击者故意发送大于65536比特的ip数据包给对方。  TCP/IP的特征之一是碎裂;它允许单一IP包被分为几个更小的数据包。在1996年,攻击者开始利用那一个功能,当他们发现一个进入使用碎片包可以将整个IP包的大小增加到ip协议允许的65536比特以上的时候。当许多操作系统收到一个特大号的ip包时候,它们不知道该做什么,因此,服务器会被冻结、当机或重新启动。

打开CMD输入

ping 192.168.1.1

显示

正在 Ping 192.168.1.1 具有 32 字节的数据: 来自 192.168.1.1 的回复: 字节=32 时间=1ms TTL=64 来自 192.168.1.1 的回复: 字节=32 时间=1ms TTL=64 来自 192.168.1.1 的回复: 字节=32 时间=1ms TTL=64 来自 192.168.1.1 的回复: 字节=32 时间=5ms TTL=64 192.168.1.1 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 1ms,最长 = 5ms,平均 = 2ms

 ping 默认发送32字节的数据发送4次

我们加上两个参数 

ping -l 65500 192.168.1.1 -t

 

-t 是一直ping到别人IP地址,-l是控制数据包大小

如果返回请求超时说明对方电脑开了防火墙或者没开机

电脑越多效果越好,所以有很多人组织起来ping别人网站

常见攻防

SYN Flood攻击:   问题就出在TCP连接的三次握手中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法完成),这 种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒 -2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源----数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP进行SYN+ACK的重试。实际上如果服务器的TCP/IP栈不够强大,最 后的结果往往是堆栈溢出崩溃---即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从 正常客户的角度看来,服务器失去响应,这种情况我们称作:服务器端受到了SYN Flood攻击(SYN洪水攻击)。   防范:   第一种是缩短SYN Timeout时间   第二种方法是设置SYN Cookie,就是给每一个请求连接的IP地址分配一个Cookie,如果短时间内连续受到某个IP的重复SYN报文,就认定是受到了攻击,以后从这个IP地址来的包会被一概丢弃。   >netstat -n -p tcp >result.txt

IP欺骗: 这种攻击利用TCP协议栈的RST位来实现,使用IP欺骗,迫使服务器把合法用户的连接复位,影响合法用户的连接。假设有一个合法用户(100.100.100.100)已经同服务器建了正常的连接,攻击者构造攻击的TCP数据,伪装自己的IP为100.100.100.100,并向服务器发送一个带有RST位的TCP数据段。服务器接收到这样的数据后,认为从100.100.100.100发送的连接有错误,就会清空缓冲区中已建立好的连接。这时,合法用户100.100.100.100再发送合法数据,服务器就已经没有这样的连接了,该用户就被拒绝服务而只能重新开始建立新的连接。

 

转载请注明原文地址: https://www.6miu.com/read-3579626.html

最新回复(0)