什么是DDoS 攻击?
举个简单例子:黄先生开了一家有68个座位的网红奶茶店,料好量足,服务周到。几乎每天都满座,节假日更是座无虚席。对面家奶茶店刘二为了对付我,想了一个办法,叫了五十个人来我的奶茶店坐着却不点餐,让别的客户无法正常享用。
以上例子说的就是典型的 DDoS 攻击,全称是 Distributed Denial of Service,翻译是分布式拒绝服务。一般来说是指攻击者利用 “肉鸡”(所谓肉鸡就是网络上被攻陷的计算机) 对目标网站在较短的时间内发起大量请求,让目标网站无法正常服务。
在 DDoS 中,角色是如何分工的?
DDoS 攻击犯罪已经进入产业化时代,从需要专业不法实施全部攻击过程的行为,发展成由发单人、攻击实施人、肉鸡商、出量人、不法攻击软件作者、担保人等多个犯罪个体共同参与实施的产业化犯罪行为。
A:发单人:DDoS 攻击黑色产业链中顶端的角色,也就是出资并发出对具体网站或服务器的攻击需求的人
B:攻击实施人:接到 “发单人” 指令并执行攻击的人
C:肉鸡商:侵入计算机信息系统的实施人,或者买卖被侵入计算机系统权限的中间商。
D:出量人:拥有服务器控制权限和网络流量的人。他们有一定技术能力,能够租用专属服务器并自行配置攻击软件从而获取流量
E:担保人:业内“信誉”较高的不法。因为交易的双方往往并不认识,于是他们会找到 “担保人”,负责买卖双方的资金中转,担保人可从中抽取一定的好处费。
DDoS 攻击类型
一:ICMP Flood
ICMP 用于在 IP 主机、路由器之间传递控制消息,控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息,通过对目标系统发送海量数据包,就可以令目标主机瘫痪,如果大量发送就成了洪水攻击。
二:UDP Flood
UDP 协议是一种无连接的服务,伪造源地址很方便。在 UDP Flood 中,攻击者通常发送大量伪造源 IP 地址的小 UDP 包冲击 DNS 服务器或 Radius 认证服务器、流媒体视频服务器。100k bps 的 UDP Flood 经常将线路上的骨干设备例如防火墙打瘫,造成整个网段的瘫痪。
三:NTP Flood
NTP 是标准的基于 UDP 协议传输的网络时间同步协议,由于 UDP 协议的无连接性,方便伪造源地址。
四:SYN Flood
SYN Flood 就是攻击者客户端在短时间内伪造大量不存在的 IP 地址,并向目标服务器不断地发送 SYN 包,由于源地址不存在,因此目标服务器需要不断重发直至超时,这些伪造的 SYN 包将长时间占用半连接队列,导致正常的 SYN 请求因为队列满而被丢弃,从而引起网络拥塞甚至系统瘫痪。
五:CC 攻击
CC 攻击是目前应用层攻击的主要手段之一,借助【代理服务器】生成指向目标系统的合法请求,实现伪装和 DDoS。
CC 攻击就充分利用了这个特点,模拟多个正常用户不停地访问如论坛这些需要大量数据操作的页面(HTTP Flood),造成服务器资源的浪费,CPU 长时间处于 100%,永远都有处理不完的请求,网络拥塞,正常访问被中止。这种攻击技术性含量高,见不到真实源 IP,见不到特别大的异常流量,但服务器就是无法进行正常连接。
由于 CC 攻击成本低、威力大,80% 的 DDoS 攻击都是 CC 攻击。
六:DNS Query Flood
DNS 作为互联网的核心服务之一,自然也 是DDoS 攻击的一大主要目标。
DNS Query Flood 采用的方法是操纵大量傀儡机器,向目标服务器发送大量的域名解析请求。服务器在接收到域名解析请求时,首先会在服务器上查找是否有对应的缓存,若查找不到且该域名无法直接解析时,便向其上层 DNS 服务器递归查询域名信息。
七:混合攻击
在实际情况中,攻击者只求达到打垮对方的目的,发展到现在,高级攻击者已经不倾向使用单一的攻击手段作战了,而是根据目标系统的具体环境灵动组合,发动多种攻击手段,既具备了海量的流量,又利用了协议、系统的缺陷,尽其所能地展开攻势。
如何应对 DDoS 攻击?
高防服务器
还是拿开始奶茶店举例,高防服务器就是给奶茶店增加了两名保安,这两名保安可以让保护店铺不受流氓骚扰,并且还会定期在店铺周围巡逻防止流氓骚扰。
我们高防服务器主要是指能独立硬防御 200Gbps 以上的服务器,能够帮助网站拒绝服务攻击,定期扫描网络主节点等
DDoS 清洗会对用户请求数据进行实时监控,及时发现 DOS 攻击等异常流量,在不影响正常业务开展的情况下清洗掉这些异常流量。
CDN 加速,我们可以这么理解:为了减少流氓骚扰,我干脆将奶茶店开到了线上,承接外卖服务,这样流氓找不到店在哪里,也耍不来流氓了。
除了DDOS攻击,还有类似ACK 大包攻击等