您的位置:首页 > 其它

不同服务器托管ddos攻击的详细解析

2019-12-06 18:19 1216 查看

DDOS攻击一直以来都是服务器托管用户非常头痛的问题,主要是因为DDOS攻击的类型有很多种,而我们没能够及时找到正确的解决方法,今天小编就给大家分享下不同服务器托管ddos攻击的详细解析,以便于大家能够快速找到问题所在进行对症下药。

  Ddos攻击是服务器托管用户最难处理的攻击,事实上对于ddos攻击其种类也有多种,不同的状况需要不同的处理解决方法,而不是靠单纯的增加带宽处理。

  网络层攻击
  Syn-flood
  利用TCP建立连接时3次握手的“漏洞”,通过原始套接字发送源地址虚假的SYN报文,使目标主机永远无法完成3次握手,占满了系统的协议栈队列,资源得不到释放,进而拒绝服务,是互联网中最主要的DDOS攻击形式之一。网上有一些加固的方法,例如调整内核参数的方法,可以减少等待及重试,加速资源释放,在小流量syn-flood的情况下可以缓解,但流量稍大时完全不抵用。防御syn-flood的常见方法有:syn proxy、syn cookies、首包(第一次请求的syn包)丢弃等。

  ACK-flood
  对于虚假的ACK包,目标设备会直接回复RST包丢弃连接,所以伤害值远不如syn-flood。DDOS的一种原始方式。
  UDP-flood
  使用原始套接字伪造大量虚假源地址的UDP包,目前以DNS协议为主。
  ICMP-flood
  Ping洪水,比较古老的方式。

  应用层攻击
  CC
  ChallengeCollapsar的名字源于挑战国内知名安全厂商绿盟的抗DDOS设备-“黑洞”,通过botnet的傀儡主机或寻找匿名代理服务器,向目标发起大量真实的http请求,最终消耗掉大量的并发资源,拖慢整个网站甚至彻底拒绝服务。

  互联网的架构追求扩展性本质上是为了提高并发能力,各种SQL性能优化措施:消除慢查询、分表分库、索引、优化数据结构、限制搜索频率等本质都是为了解决资源消耗,而CC大有反其道而行之的意味,占满服务器并发连接数,尽可能使请求避开缓存而直接读数据库,读数据库要找最消耗资源的查询,最好无法利用索引,每个查询都全表扫描,这样就能用最小的攻击资源起到最大的拒绝服务效果。

  互联网产品和服务依靠数据分析来驱动改进和持续运营,所以除了前端的APP、中间件和数据库这类OLTP系统,后面还有OLAP,从日志收集,存储到数据处理和分析的大数据平台,当CC攻击发生时,不仅OLTP的部分受到了影响,实际上CC会产生大量日志,直接会对后面的OLAP产生影响,影响包括两个层面,一个当日的数据统计完全是错误的。第二个层面因CC期间访问日志剧增也会加大后端数据处理的负担。

  CC是目前应用层攻击的主要手段之一,在防御上有一些方法,但不能完美解决这个问题。

  DNS flood
  伪造源地址的海量DNS请求,用于是淹没目标的DNS服务器。对于攻击特定企业权威DNS的场景,可以将源地址设置为各大ISP DNS服务器的ip地址以突破白名单限制,将查询的内容改为针对目标企业的域名做随机化处理,当查询无法命中缓存时,服务器负载会进一步增大。

  DNS不只在UDP-53提供服务,同样在TCP协议提供服务,所以防御的一种思路就是将UDP的查询强制转为TCP,要求溯源,如果是假的源地址,就不再回应。对于企业自有权威DNS服务器而言,正常请求多来自于ISP的域名递归解析,所以将白名单设置为ISP的DNS server列表。对于源地址伪造成ISP DNS的请求,可以通过TTL值进一步判断。

  慢速连接攻击
  针对http协议,以知名的slowloris攻击为起源:先建立http连接,设置一个较大的content-length,每次只发送很少的字节,让服务器一直以为http头部没有传输完成,这样的连接一多很快就会出现连接耗尽。
  目前出现了一些变种,http慢速的post请求和慢速的read请求都是基于相同的原理。

  DOS攻击
  有些服务器程序存在bug、安全漏洞,或架构性缺陷,攻击者可以通过构造的畸形请求发送给服务器,服务器因不能正确处理恶意请求而陷入僵死状态,导致拒绝服务。例如某些版本的app服务器程序存在缓冲区溢出,漏洞可以触发但无法得到shell,攻击者可以改变程序执行流程使其跳转到空指针或无法处理的地址,用户态的错误会导致进程挂起,如果错误不能被内核回收则可能使系统当掉。

  这类问题效果也表现为拒绝服务,但本质上属于漏洞,可以通过patch程序的最新版本解决,笔者认为不属于DDOS的范畴。

  攻击方式
  混合型
  在实际大流量的攻击中,通常并不是以上述一种数据类型来攻击,往往是混杂了TCP和UDP流量,网络层和应用层攻击同时进行。

  流量放大型
  以上面提到的DRDOS中常见的SSDP协议为例,攻击者将Search type设置为ALL,搜索所有可用的设备和服务,这种递归效果产生的放大倍数是非常大的,攻击者只需要以较小的伪造源地址的查询流量就可以制造出几十甚至上百倍的应答流量发送至目标。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: