上篇文章雨笋教育小编给大家介绍了XSS攻击,今天给大家介绍的也是渗透测试中常遇到的一种攻击方法DOSS攻击,这种攻击近两年很多大型攻击事件都是通过这种手段来进行的。到底它的攻击原理是什么,我们又该如何去防范,请看下面这篇介绍。

什么是DDoS攻击

DDoS攻击,指借助于C/S技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DoS攻击,从而成倍地提高拒绝服务攻击的威力。

通常,攻击者将DDoS主控程序安装在其所拥有的计算机,或使用通过非法手段获取到的帐号,将DDoS主控程序安装在其他已沦陷的计算机上,并将DDoS代理程序安装在网络上的许多已沦陷的计算机上。当攻击者意图对被害业务系统发起DDoS攻击时,会通过DDoS主控程序与大量DDoS代理程序通讯。DDoS代理程序在收到DDoS主控程序的指令后就会立即发动DDoS攻击,从而造成被害业务系统网络几近瘫痪,甚至于出现宕机。利用客户/服务器技术,DDoS主控程序能在短短几秒钟内发动成千上万个DDoS代理程序进行DDoS攻击。

DDoS攻击的危害

首先从一个现实生活环境的比方来深入理解什么是DDoS攻击。

一家商铺试图让对面那家有着竞争关系的商铺无法正常营业,他们会采取什么手段呢?一般会有如下几步:

他们首先会雇佣一群马仔,并让这群马仔们扮作普通客户;

然后命令这群马仔们一直拥挤在对手的商铺,赖着不走,真正的购物者却无法进入;

让马仔们总是和营业员有一搭没一搭的东扯西扯,让商铺的工作人员不能正常服务客户;

也可以为商铺的经营者提供虚假信息,商铺的的工作人员上上下下忙成一团之后,却发现都是一场空,最终跑了真正的大客户,损失惨重。

此外马仔们完成这些坏事有时凭单干难以完成,需要叫上很多人一起。

网络空间安全领域中DoS和DDoS攻击也遵循着这些思路。

在网络空间安全的三要素——"保密性"、"完整性"和"可用性"中,DoS攻击,即拒绝服务攻击,针对的目标正是"可用性"。该攻击方式利用目标系统网络服务功能缺陷或者直接消耗其系统资源,使得该目标系统无法提供正常的服务。

常见的DDoS攻击种类

DDoS攻击的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。单一的DoS攻击一般是采用一对一方式的,当攻击目标存在有CPU速度低、内存小或者网络带宽小等等各项指标不高的性能时,它的效果是明显的。

随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了超大规模的网络,这使得DoS攻击的困难程度显著加大了——目标系统对恶意攻击包的"消化能力"加强了不少。这时候DDoS攻击就应运而生了。DDoS攻击就是利用更多的傀儡机(肉鸡)来发起进攻,以比从前更大的规模来进攻受害者的业务系统,从而造成被害业务系统网络几近瘫痪,甚至于出现宕机。

DDoS攻击通过大量合法的请求占用大量网络资源,以达到瘫痪网络的目的。这种攻击方式主要可分为以下几种:

1. IP Spoofing

2. LAND attack

3. Smurf攻击

4. Teardrop攻击

5. SYN Flood攻击

6. SYN+ACK Flood攻击

7. ACK Flood 攻击

8. TCP 全连接攻击

9. UDP Flood

10. CC 攻击

11. 以上攻击的混合攻击

01、IP Spoofing

IP Spoofing攻击是指创建的IP 数据包中具有伪造的源 IP 地址,目的是在发动攻击时隐藏攻击者的身份或冒充成另一个计算系统。当攻击者冒充网络上的另一个设备或用户以对网络主机发起攻击、窃取数据、传播恶意软件或绕过访问控制时,就会发生欺骗攻击。

防范IP 欺骗攻击的主要方法有以下几种:

1、针对于内网环境下,可以进行IP-MAC绑定。通过将接收到的IP数据包中的源IP与已有的IP-MAC表进行对比,若已有的IP-MAC表中的源IP对应的MAC地址和IP数据包中的其发送者的MAC地址不符,则将其发送的数据包进行丢弃。

2、针对于公网环境下,可以直接丢弃从公网方向接收到的IP数据包中源IP为内网IP段范围内(10.0.0.0/8,172.16.0.0/12,192.168.0.0/16)的IP数据包。

3、针对于公网环境下,还可以使用URPF,通过取出从公网方向接收到的IP数据包中的源IP地址,然后查看自身的路由表中是否有该数据包的路由信息。如果路由表中没有其用于数据返回的路由信息,那么极有可能是某人伪造了该数据包,于是便把它丢弃。

02、LAND attack

LAND Attack指的是攻击者向目标系统发送一个SYN的TCP包,包中的源地址被伪造为目标系统的地址。当目标系统收到包后,会向自己发送一个SYN+ACK的TCP包。然后,目标系统向自己发送一个ACK包,这样就自己和自己建立一个空连接。这个空连接会一直持续,直到超时。当目标系统被这样大量欺骗,建立大量空连接,消耗大量的系统资源,导致目标系统底层操作系统运行缓慢,甚至崩溃。该漏洞存在于很多早期操作系统,如Windows XP和Windows 2003。

防范着陆攻击的主要方法依赖于过滤并丢弃源地址和目标地址相同的SYN、SYN+ACK的TCP数据包。

03、Smurf攻击

Smurf攻击通过使用将回复地址设置成目标系统网络的广播地址的ICMP应答请求(ping)数据包,来淹没目标系统,最终导致目标系统网络的所有主机都对此ICMP应答请求做出答复,导致网络阻塞。

防范Smurf攻击的主要方法有以下几种:

1、针对于网络设备可以过滤并丢弃IP数据包中的源IP地址为广播地址的IP数据包。

2、针对于终端设备,可以禁止对IP数据包中的目标地址为广播地址的ICMP包进行响应。

3、针对于网络边界设备,可以对于从本网络向外部网络发送的IP数据包中源地址为其他网络的这部分IP数据包过滤并丢弃。

04、Teardrop攻击

Teardrop攻击通过向目标系统发送一些分片IP报文,并且故意将“13位分片偏移”字段设置成错误的值,此处既可以与上一分片数据重叠,也可以与上一分片数据错开,目标系统在组合这种含有重叠偏移的伪造分片报文时,会导致目标系统底层操作系统崩溃。

防范Teardrop攻击的主要方法依赖于把接收到的分片报文先放入缓存中,并根据源IP地址和目的IP地址对报文进行分组,源IP地址和目的IP地址均相同的报文归入同一组,然后对每组IP报文的相关分片信息进行检查,丢弃分片信息存在错误的报文。为了防止缓存溢出,当缓存快要存满时,直接丢弃后续分片报文。

05、SYN Flood 攻击

SYN Flood攻击指的是攻击者在短时间内使用大量的肉鸡或伪造大量不存在的IP地址,向目标系统不断地发送SYN数据包,迫使目标系统需要回复大量SYN+ACK确认包,并等待发送源的确认。由于源地址不对确认包进行响应或者源地址是根本就不存在的,目标系统需要不断的重发SYN+ACK确认包直至SYN包超时,这些一直得不到确认的SYN包将长时间占用SYN队列,正常的SYN请求被丢弃或被拒绝,导致目标系统运行缓慢,严重者会引起网络堵塞甚至目标系统底层操作系统瘫痪。

缓解SYN Flood攻击的主要方法有以下几种:

1、缩短SYN数据包超时(SYN Timeout)时间,减少SYN队列内无效SYN数据包积压数量。

2、增加最大半连接数,即增加SYN队列大小,使得系统可以容纳更多的SYN数据包。

3、开启SYN Cookies,就是给每一个请求连接的IP地址分配一个Cookie,当再次收到相同五元组的SYN数据包时,不再新分配ACK号,而是复用之前的ACK号,从而减小SYN队列长度。

4、进行首包丢弃,一般情况下正常访问者在首包超时后会再次发送SYN数据包,而攻击者一般情况下则不会重新发送SYN数据包,从而减少SYN队列内无效SYN数据包积压数量。

5、进行源地址验证,如果源地址是伪造的话直接丢弃该SYN数据包,从而减少SYN队列内无效SYN数据包积压数量。

06、SYN+ACK Flood 攻击

SYN_ACK Flood攻击指的是攻击者发送大量的SYN+ACK数据包到目标系统,目标系统将会为处理这些报文而消耗大量的资源,导致目标系统运行缓慢,严重者会引起网络堵塞甚至目标系统底层操作系统瘫痪。

缓解SYN+ACK Flood攻击的主要方法有以下几种:

1、如果不需要主动发起连接,可以将所有的SYN+ACK包丢弃。

2、进行源地址验证,如果源地址是伪造的话直接丢弃该SYN+ACK数据包。

07、ACK Flood 攻击

ACK Flood攻击是发生在TCP连接建立之后,由于所有的数据传输TCP报文都带有ACK标志位,所以目标系统在接收到一个带有ACK标志位的数据包的时候,需要检查该数据包所表示的连接四元组是否存在,如果存在则检查该数据包所表示的状态是否合法,然后再向应用层传递该数据包。如果在检查中发现该数据包不合法,例如该数据包所指向的目的端口在本机并未开放,则主机操作系统协议栈会回应RST包告诉对方此端口不存在。这里,服务器要做两个动作:查表、回应ACK/RST。由于攻击者发送大量的带有ACK标志位的数据包,导致目标系统需要进行大量的查询操作,导致目标系统运行缓慢,严重者会引起网络堵塞甚至目标系统底层操作系统瘫痪。

缓解ACK Flood攻击的主要方法有以下几种:

1、统计源地址各类型数据包分布,如果目标系统从该源地址收取数据包的数量异常大于目标系统发往该源地址的数据包的数量,则可以直接丢弃该源地址的ACK数据包。

2、进行源地址验证,如果源地址是伪造的话直接丢弃该ACK数据包。

08、TCP全连接攻击

TCP全连接攻击是通过消费目标系统进程数和连接数,只连接而不进行发送数据的一种攻击方式。当攻击者连接到目标系统,仅仅只是连接,此时目标系统会为每一个连接创建一个进程来处理攻击者发送的数据。但是攻击者只是连接而不发送数据,此时目标系统会一直处在Recv或者Read的状态,如此一来,多个连接,目标系统的每个连接都是出于等待状态从而导致目标系统的崩溃。

一般来说,防范TCP全连接攻击的主要方法依赖于限制单个源IP可与目标系统建立的最大连接数,从而确保目标系统不会崩溃。

09、UDP Flood攻击

UDP Flood攻击又称UDP淹没攻击,是流量型DoS攻击的一种,常常利用大量UDP小包冲击目标系统,从而耗尽目标系统的带宽。由于UDP协议是一种无连接的服务,在发动UDP Flood攻击时,攻击者发送大量伪造源IP地址的小UDP包,也可以导致目标系统瘫痪。

防范UDP Flood攻击的主要方法依赖于在网络边界处限制单个源IP可发往目标系统的最大包速率和最大带宽,从而确保目标系统带宽不被耗尽且不会崩溃。

10、CC 攻击

CC攻击,其前身名为Fatboy攻击,是利用不断对目标系统发送连接请求致使形成拒绝服务的目的。CC攻击又可分为代理CC攻击和肉鸡CC攻击。代理CC攻击是攻击者借助代理服务器生成指向目标系统的合法网页请求,从而导致目标系统的CPU几近100%,甚至宕机的现象。而肉鸡CC攻击是黑客使用CC攻击软件,控制大量肉鸡,发动攻击,相比来后者比前者更难防御。因为肉鸡可以模拟正常用户访问网站的请求。伪造成合法数据包。

缓解CC 攻击的主要方法有以下几种:

1、限制单源地址可被目标系统处理的总请求数,从而避免出现单源地址占用目标系统资源过多的情况。

2、限制单源地址单位时间可被目标系统处理的请求数,从而避免出现单源地址占用目标系统资源过多的情况。

3、网站页面静态化,使用网站页面静态化可以较大程度的减少系统资源消耗,从而增强系统对请求的处理能力。

小编后续将持续更新渗透测试相关干货!想学渗透技术可关注哦!

分布式拒绝服务(DDoS)攻击原理介绍和防范措施相关推荐

  1. 关于分布式拒绝服务(DDoS)的简单梳理和介绍

    分布式拒绝服务(DDoS:Distributed Denial of Service):攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高 ...

  2. 带你了解DDoS攻击的原理,让你轻松学会DDoS攻击原理及防护措施

    DDoS攻击原理是什么? 随着网络时代的到来,网络安全变得越来越重要.在互联网的安全领域,DDoS(Distributed DenialofService)攻击技术因为它的隐蔽性,高效性一直是网络攻击 ...

  3. Dos攻击与DDos攻击原理与区别,怎么防护?

    Dos攻击与DDos攻击原理与区别,怎么防护? 1.原理: 1)DOS(Denial of Service)攻击,即拒绝服务,其主要危害是使计算机或网络无法提供正常的服务. 常见的DOS攻击手段有Te ...

  4. DDOS攻击原理,种类及其防御

    在网上看到这个例子感觉很形象: 我开了一家可容纳100人的老陕羊肉泡馍馆,由于用料上等,童叟无欺.平时门庭若市,生意特别红火,而对面二狗家的泡馍馆却无人问津.二狗为了对付我,想了一个办法,叫了100个 ...

  5. DDoS攻击原理及防御

    转自:微点阅读  https://www.weidianyuedu.com 随着网络时代的到来,网络安全变得越来越重要.在互联网的安全领域,DDoS(Distributed DenialofServi ...

  6. 敌情篇 ——DDoS攻击原理

    敌情篇 --DDoS攻击原理 DDoS攻击基础 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是 ...

  7. DDoS攻击原理及防护方法论

    从07年的爱沙尼亚DDoS信息战,到今年广西南宁30个网吧遭受到DDoS勒索,再到新浪网遭受DDoS攻击无法提供对外服务500多分钟.DDoS愈演愈烈,攻击事件明显增多,攻击流量也明显增大,形势十分严 ...

  8. SYN攻击原理以及检测防范技术

    SYN攻击原理以及检测防范技术 据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法.相信很多人还记得2000年YAHOO网站遭受的攻击事例,当时黑客利用的就是简单而有效的SY ...

  9. 阿里云盾特点及防DDoS攻击服务介绍

    阿里云盾特点及防DDoS攻击服务介绍 云盾是阿里巴巴集团多年来安全技术研究积累的成果,结合强大的威胁发现和分析能力,为用户提供一站式安全服务.云盾是阿里云产品的统称,核心产品是安骑士.DDoS防护.W ...

  10. ddos应急处理_当遇到DDOS攻击的几种应对措施

    要应对DDOS攻击那么对它的了解是必不可少的,DDOS又称为分布式拒绝服务,攻击通过控制散布在网络中的多台机器,形成数量众多的攻击源,同时像受害主机发动攻击,使得受害主机带宽.CPU.缓冲区等资源迅速 ...

最新文章

  1. ectouch java_ectouch第七讲 之ECshop模板机制整理
  2. Nginx 解决WebApi跨域二次请求以及Vue单页面问题
  3. 最长上升子序列(LIS)长度及其数量
  4. MUI 支付宝支付接入
  5. 《Go语言圣经》学习笔记 第三章 基础数据类型
  6. 公众号和小程序可以同名了 名称支持同主体复用
  7. php怎么写确认密码,如何在Laravel 5中验证当前密码,新密码和新密码的确认? - php...
  8. 百度地图出现网格,不显示地图
  9. 快速从小白到大牛的Python学习路线
  10. 设计模式之GOF23访问者模式
  11. 麻省理工线性代数第二讲
  12. solidity教程(二)僵尸攻击人类
  13. 《中国通史 2016》_34_读后感
  14. Selenium+IP爬虫刷新网页
  15. 02 JS实现时钟效果
  16. [原创]和Taskmgr过不去篇(无厘头版)
  17. 基于Spark的电商用户行为分析系统的设计与实现
  18. 康奈尔大学的计算机专业怎么样,美国名校康奈尔大学计算机专业介绍
  19. 笔记本添加固态硬盘记
  20. Susman Godfrey L.L.P.与Hausfeld LLP宣布3.4亿美元诉讼及和解方案,涉及在2007年8月至2010年5月期间持有基于美元LIBOR工具的个人和机构

热门文章

  1. python3 模块 public缀_Python publicsuffixlist包_程序模块 - PyPI - Python中文网
  2. 计算机网络什么是互联网什么是网速,网速慢是什么原因怎么解决?
  3. 麒麟 mips mysql_中标麒麟(龙芯CPU)--docker基础镜像制作
  4. <爬虫> 豆瓣电影排行榜(含代码)
  5. CVPR历年best paper(2000-2018)
  6. android 按钮边距,安卓button代码初始化默认内边距问题
  7. 1092 最好吃的月饼
  8. win7系统蓝牙功能怎么开启
  9. 分享一些java学习网站网址
  10. 统计数组中英文大写字母,小写字母,数字,空格的个数。