网络安全&DOS攻击✍

目录

    • 1.1DOS攻击解释及原理
    • 1.2 DDoS攻击
      • 1.3 DOS攻击和DDOS攻击的表现方式
    • 1.4 攻击流程
      • 1.4.1 攻击工具
      • 1.4.2 TCP的三次握手及相关概念:
        • (1)攻击流程 基于TCP的三次握手
        • (2)涉及到的相关概念
    • 1.5 常见的几种DOS攻击
      • 1.5.1 SYN Flood 攻击
        • 原理
        • 现象
      • 1.5.2 死亡之ping (ping of death )
        • 原理
        • 现象
      • 1.5.3 泪滴攻击
      • 1.5.4 UDP泛洪
        • 原理
        • 现象
      • 1.5.5 Land 攻击
        • 原理
        • 现象
      • 1.5.6 IP欺骗
        • 原理
        • 现象

1.1DOS攻击解释及原理

DOS攻击 是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。最常见的DoS攻击有计算机网络带宽攻击和连通性攻击。

DoS攻击是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务或资源访问,使目标系统服务系统停止响应甚至崩溃,而在此攻击中并不包括侵入目标服务器或目标网络设备。

这些服务资源包括网络带宽,文件系统空间容量,开放的进程或者允许的连接。这种攻击会导致资源的匮乏,无论计算机的处理速度多快、内存容量多大、网络带宽的速度多快都无法避免这种攻击带来的后果。

1.2 DDoS攻击

Distributed Denial of Service, 分布式拒绝服务攻击

传统上,攻击者所面临的主要问题是网络带宽,由于较小的网络规模和较慢的网络速度的限制,攻击者无法发出过多的请求。
虽然类似“the ping of death”的攻击类型只需要较少量的包就可以摧毁一个没有打过补丁的UNIX系统,但大多数的DoS攻击还是需要相当大的带宽的,而以个人为单位的黑客们很难使用高带宽的资源。

为了克服这个缺点,DoS攻击者开发了分布式的攻击。攻击者简单利用工具集合许多的网络带宽来同时对同一个目标发动大量的攻击请求,这就是DDoS(Distributed Denial of Service)攻击。

1.3 DOS攻击和DDOS攻击的表现方式

其具体表现方式有以下几种
1.制造大流量无用数据,造成通往被攻击主机的网络拥塞,使被攻击主机无法正常和外界通信。 [1]
2.利用被攻击主机提供服务或传输协议上处理重复连接的缺陷,反复高频的发出攻击性的重复服务请求,使被攻击主机无法及时处理其它正常的请求。
3.利用被攻击主机所提供服务程序或传输协议的本身实现缺陷,反复发送畸形的攻击数据引发系统错误的分配大量系统资源,使主机处于挂起状态甚至死机。

1.4 攻击流程

1.4.1 攻击工具

攻击工具:僵尸电脑
僵尸电脑(Zombie computer),简称“僵尸(zombie)”,有些人称之为“肉鸡”,接入互联网的电脑被病毒感染后,受控于黑客,可以随时按照黑客的指令展开拒绝服务(DoS)攻击或发送垃圾信息。通常,一部被侵占的电脑只是僵尸网络里面众多中的一环,而且会被用来去运行一连串的或远端控制的恶意程序。很多“僵尸电脑的拥有者”都没有察觉到自己的系统已经被“僵尸化”,就仿佛是没有自主意识的僵尸一般

1.4.2 TCP的三次握手及相关概念:

(1)攻击流程 基于TCP的三次握手

第一次握手:建立连接时,客户端发送SYN包((SYN=i)到服务器,并进入SYN SEND状态,等待服务器确认;

第二次握手:服务器收到SYN包,必须确认客户的SYN (ACK=i+1 ),同时自己也发送一个SYN包((SYN=j)}即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=j+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手,客户端与服务器开始传送数据。

(2)涉及到的相关概念

半连接:收到SYN包而还未收到ACK包时的连接状态称为半连接,即尚未完全完成三次握手的TCP连接。

半连接队列:在三次握手协议中,服务器维护一个半连接队列,该队列为每个客户端的SYN包(SYN=i )开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于SYN_ RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。

Backlog参数:表示半连接队列的最大容纳数目

SYN-ACK重传次数:服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信
息、从半连接队列中删除。注意,每次重传等待的时间不一定相同

==半连接存活时间:==是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时也称半连接存活时间为Timeout时间、SYN_RECV存活时间

1.5 常见的几种DOS攻击

1.5.1 SYN Flood 攻击

原理

TCP的三次握手

现象

首先是请求服务方发送一个SYN(SynchronizeSequenceNumber)消息,服务方收到SYN后,会向请求方回送一个SYN-ACK表示确认,当请求方收到SYN-ACK后,再次向服务方发送一个ACK消息,这样一次TCP连接建立成功。

“SYNFlooding”则专门针对TCP协议栈在两台主机间初始化连接握手的过程进行DoS攻击,
其在实现过程:
当服务方收到请求方的SYN-ACK确认消息后,请求方由于采用源地址欺骗等手段使得服务方收不到ACK回应,于是服务方会在一定时间处于等待接收请求方ACK消息的状态。
而对于某台服务器来说,可用的TCP连接是有限的,因为它们只有有限的内存缓冲区用于创建连接,如果这一缓冲区充满了虚假连接的初始信息,该服务器就会对接下来的连接停止响应,直至缓冲区里的连接企图超时。如果恶意攻击方快速连续地发送此类连接请求,该服务器可用的TCP连接队列将很快被阻塞,系统可用资源急剧减少,网络可用带宽迅速缩小,长此下去,除了少数幸运用户的请求可以插在大量虚假请求间得到应答外,服务器将无法向用户提供正常的合法服务。

1.5.2 死亡之ping (ping of death )

ICMP(InternetControlMessageProtocol,Internet控制信息协议)在Internet上用于错误处理和传递控制信息。

原理

最普通的ping程序就是这个功能。而在TCP/IP的RFC文档中对包的最大尺寸都有严格限制规定,许多操作系统的TCP/IP协议栈都规定ICMP包大小为64KB,且在对包的标题头进行读取之后,要根据该标题头里包含的信息来为有效载荷生成缓冲区。

现象

"PingofDeath"就是故意产生畸形的测试Ping(PacketInternetGroper)包,声称自己的尺寸超过ICMP上限,也就是加载的尺寸超过64KB上限,使未采取保护措施的网络系统出现内存分配错误,导致TCP/IP协议栈崩溃,最终接收方宕机。

1.5.3 泪滴攻击

泪滴攻击是拒绝服务攻击的一种。

泪滴是一个特殊构造的应用程序,通过发送伪造的相互重叠的IP分组数据包,使其难以被接收主机重新组合。他们通常会导致目标主机内核失措。 泪滴攻击利用IP分组数据包重叠造成TCP/ IP分片重组代码不能恰当处理IP包。 泪滴攻击不被认为是一个严重的DOS攻击,不会对主机系统造成重大损失。 在大多数情况下,一次简单的重新启动是最好的解决办法,但重新启动操作系统可能导致正在运行的应用程序中未保存的数据丢失。

1.5.4 UDP泛洪

UDPflood攻击:如今在Internet上UDP(用户数据包协议)的应用比较广泛,很多提供WWW和Mail等服务设备通常是使用Unix的服务器,它们默认打开一些被黑客恶意利用的UDP服务。

原理

如echo服务会显示接收到的每一个数据包,而原本作为测试功能的chargen服务会在收到每一个数据包时随机反馈一些字符。

现象

UDPflood假冒攻击就是利用这两个简单的TCP/IP服务的漏洞进行恶意攻击,通过伪造与某一主机的Chargen服务之间的一次的UDP连接,回复地址指向开着Echo服务的一台主机,通过将Chargen和Echo服务互指,来回传送毫无用处且占满带宽的垃圾数据,在两台主机之间生成足够多的无用数据流,这一拒绝服务攻击飞快地导致网络可用带宽耗尽

1.5.5 Land 攻击

原理

在Land攻击中,黑客利用一个特别打造的SYN包–它的原地址和目标地址都被设置成某一个服务
器地址
进行攻击。

现象

此举将导致接受服务器向它自己的地址发送SYN-ACK消息,结果这个地址又发回ACK消息并创建一个空连接,每一个这样的连接都将保留直到超时,在Land攻击下,许多UNIX将崩溃,NT变得极其缓慢(大约持续五分钟)。

1.5.6 IP欺骗

原理

这种攻击利用TCP协议栈的RST位来实现,使用IP欺骗,迫使服务器把合法用户的连接复位,影响合法用户的连接。

现象

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

你可能感兴趣的:(网络安全&✍✍)