拒绝服务攻击 Denial Of Service
典型的拒绝服务攻击
Ping of Death
1.早期操作系统处理ICMP分组时,只开辟64KB缓冲区。 2.攻击者在Ping包后放很多冗余信息,使数据包尺寸超过65535个字节。 3.接收方处理此数据包时出现内存分配错误,导致TCP/IP堆栈溢出,系统崩溃。
Teardrop
1.MTU(最大传送单位)限制传输数据包大小,大数据需分段,Teardrop利用分割重组间的漏洞进行攻击。 2.向目标机器发送损坏的ip包,如重叠的包或过大的包载荷,通过攻击TCP/IP协议栈中分片重组代码中的Bug来攻击不同操作系统。 3.接收方重组数据包时,数据包长度过大(如负值),导致溢出。(假设第二片ip包的偏移量小于第一片结束,加上数据长度也没有超过第一片尾部,这就是重叠)
Land攻击
1.SYN包源地址和目标地址都是某服务器地址。 2.接收服务器向它自己的地址发送SYN一ACK消息,结果这个地址又发回ACK消息并创建一个空连接。 3.被攻击的服务器每接收一个这样的连接都将保留,直到超时。
SYN洪水
1.每个机器都需要为半开连接分配一定的资源,半开连接的数量是有限制。 2.攻击方利用TCP连接三次握手过程,打开大量的半开TCP连接。目标机器不能进一步接受TCP连接。机器就不再接受进来的连接请求。 (源IP伪造且不可达;攻击者发送SYN包速度快于目标机器清楚半连接速度;攻击范围广且难追踪)
Smurf
1.攻击者向一个广播地址发送ICMP Echo请求,并且用受害者的IP地址作为源地址。 2.广播地址网络上的每台机器响应这些Echo请求,同时向受害者主机发送ICMP Echo-Reply应答。 3.受害者主机会被这些大量的应答包淹没。
HTTP洪水
1.这类攻击会占用大量的HTTP进程,从而耗费大量的系统资源。最终,会导致系统因不堪重负而崩溃掉。 2.HTTP GET FLOOD针对应用服务器上的某个文件,对其进行快速的反复的重复读取操作;或针对数据库服务器产生大量数据库查询操作。
传统DoS的简单变化
CC攻击(ChallengeCollapsar)是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃。
HTTP Post慢速DoS攻击:对HTTP服务器,先建立了一个连接,指定一个比较大的content-length,然后以非常低的速度发包,比如1-10s发一个字节,然后维持住这个连接不断开。
DoS检测
按检测模式分类的检测方法
基于误用的DDoS检测
事先收集已有DDoS攻击的各种特征,然后将当前网络中数据包的特征和各种攻击特征相互比较,如果特征匹配则发现DDoS攻击。
依赖于攻击特征的选取
利用了特征匹配、模型推理、状态转换和专家系统的方法。
基于异常的DDoS攻击检测
通过监视系统审计记录上系统使用的异常情况,可以检测出违反安全的事件。 目前,大多数的DDoS攻击检测都属于异常检测。
取决于检测模型的建立
不同的模型对应着不同的检测方式,主要包括统计检测、模式预测、人工 智能检测、机器学习检测四种方法
混合模式DDoS攻击检测
将误用DDoS攻击检测和异常DDoS攻击检测两种方式混合使用。
按算法部署位置分类的检测方法
源端检测
中间网络检测
目的端检测(应用广泛)