一、DDoS 攻击机制
DDoS(分布式拒绝服务)攻击是一种极具破坏力的网络攻击方式,其实现方式主要是利用僵尸网络或代理服务器向目标服务器发送大量请求,导致服务器过载,从而使服务不可用。
具体来说,DDoS 攻击从层次上可分为网络层攻击与应用层攻击,从攻击手法上可分为快型流量攻击与慢型流量攻击。其原理都是造成资源过载,导致服务不可用。
DDoS 攻击通常利用多台被控制的计算机(也称为 “僵尸” 或 “肉鸡”)同时向受害者发动攻击,这些控制计算机构成了一个分布式的攻击网络。攻击流程如下:
- 招募肉鸡:攻击者使用恶意软件感染大量计算机,将其变成僵尸,组成一个庞大的攻击网络。这些计算机可能是未受保护的服务器、个人电脑或物联网设备。
- 建立控制服务器:攻击者设置一个控制服务器来协调和指导攻击。这个服务器通常位于匿名化网络上,如 TOR 网络。
- 命令及控制:攻击者通过控制服务器向所有肉鸡发送指令,例如指定攻击目标、攻击类型、攻击时间等。这些命令可以通过加密或隐藏在其他网络流量中来避免被防御系统检测。
- 攻击发起:一旦收到命令,被感染的肉鸡开始向目标系统发送大量请求,以超过其处理能力。常见的攻击方式包括 UDP 洪水攻击、SYN 洪水攻击和 HTTP GET/POST 请求攻击等。
- 混淆与伪装:攻击者可能使用各种方法来隐藏攻击流量,如 IP 欺骗、源地址伪造、分片攻击、反射放大攻击等。这些方法可以使攻击流量看起来像是来自不同来源的正常流量,增加检测和防御的难度。
- 目标系统瘫痪:由于目标系统被压倒性的请求所淹没,无法有效地处理合法用户的请求,导致服务不可用或响应时间极长,甚至崩溃。
- 持续攻击:攻击者通常会持续监控攻击的效果,并根据需要调整攻击策略。他们可能会改变攻击的目标、类型或频率,以保持攻击的持续性和影响力。
DDoS 攻击方式有很多种,以下是一些常见的攻击方式:
- IP Spoofing:IP 欺骗攻击是一种黑客通过向服务端发送虚假的包以欺骗服务器的做法。具体说,就是将包中的源 IP 地址设置为不存在或不合法的值。服务器一旦收到该包便会返回接受请求包,但实际上这个包永远返回不到来源处的计算机。这种做法使服务器必须开启自己的监听端口不断等待,也就浪费了系统各方面的资源。
- LAND attack:这种攻击方式与 SYN floods 类似,不过在 LAND attack 攻击包中的源地址和目标地址都是攻击对象的 IP。这种攻击会导致被攻击的机器死循环,最终耗尽资源而死机。
- ICMP floods:ICMP floods 是通过向未良好设置的路由器发送广播信息占用系统资源的做法。
- Application:Application level floods 主要是针对应用软件层的,也就是高于 OSI 的。它同样是以大量消耗系统资源为目的,通过向 IIS 这样的网络服务程序提出无节制的资源申请来迫害正常的网络服务。
- Synflood:该攻击以多个随机的源主机地址向目的主机发送 SYN 包,而在收到目的主机的 SYN ACK 后并不回应,这样,目的主机就为这些源主机建立了大量的连接队列,而且由于没有收到 ACK 一直维护着这些队列,造成了资源的大量消耗,最终导致拒绝服务。
- Smurf:该攻击向一个子网的广播地址发一个带有特定请求(如 ICMP 回应请求)的包,并且将源地址伪装成想要攻击的主机地址。子网上所有主机都回应广播包请求而向被攻击主机发包,使该主机受到攻击。
- Land-based:攻击者将一个包的源地址和目的地址都设置为目标主机的地址,然后将该包通过 IP 欺骗的方式发送给被攻击主机,这种包可以造成被攻击主机因试图与自己建立连接而陷入死循环,从而很大程度地降低了系统性能。
- Ping of Death:根据 TCP/IP 的规范,一个包的长度最大为 65536 字节。尽管一个包的长度不能超过 65536 字节,但是一个包分成的多个片段的叠加却能做到。当一个主机收到了长度大于 65536 字节的包时,就是受到了 Ping of Death 攻击,该攻击会造成主机的宕机。
- Teardrop:IP 数据包在网络传递时,数据包可以分成更小的片段。攻击者可以通过发送两段(或者更多)数据包来实现 TearDrop 攻击。第一个包的偏移量为 0,长度为 N,第二个包的偏移量小于 N。为了合并这些数据段,TCP/IP 堆栈会分配超乎寻常的巨大资源,从而造成系统资源的缺乏甚至机器的重新启动。
- PingSweep:使用 ICMP Echo 轮询多个主机。
- Pingflood:该攻击在短时间内向目的主机发送大量 ping 包,造成网络堵塞或主机资源耗尽。
DDoS 攻击常见的有 SYN FLOOD 攻击和 UDP FLOOD 攻击。SYN FLOOD 攻击的原理为破环运输层协议的三次握手机制,且基于 TCP 控制拥塞的机制使后续请求接入服务器的请求产生时延无法被服务器处理,使得服务器瘫痪。攻击者可以通过伪造虚拟的 IP 地址向目标主机发起大量 TCP 链接的请求,在第一次握手时付出 SYN 包,而后服务器发出 “SYN+ACK” 包响应,因为其是虚假的 IP 地址所以第三次的握手攻击者并不会向服务器再次发送”ACK“包,这使得服务器会向虚假的地址连续发送五次”SYN+ACK“包,此时受攻击主机占用并耗费系统资源,使得提供 TCP 服务的主机系统无法正常工作,使正常的用户无法接入服务器。UDP FLOOD 是通过发送大量高速率的 UDP 报文至攻击的服务器,使得大量 UDP 报文在服务器端过载导致服务器过载。主要的防御方式是利用防火墙,对统一虚假的 IP 地址发送的 UDP 报文进行拦截;或是对目标服务器检测流量,当发现某一浏览器收到大量 UDP 报文时防火墙开始工作对传输中的 UDP 报文及时拦截;当发现有大量报文从统一端口发出时防火墙对其进行拦截。另一种方式便是通过指纹学习的方式进行拦截,对于 DDOS 攻击来说发送的报文很多都有着相同的报文内容,指纹学习便是可以进行抓包检测报文内容进行识别是否是有大量的相同内容的 UDP 报文,若是则进行拦截。
常见的 DDOS 攻击方式还有以下这些类别:
- SYN Flood 攻击,利用 TCP 三次握手的机制。攻击者会向目标服务器发送大量伪造的 TCP SYN 包,服务器会回应 SYN-ACK 包并等待客户端的 ACK 确认,可攻击者不会回应 ACK,这就使得服务器上有大量半连接状态的资源被占用,进而让正常的连接请求没法被处理,耗尽服务器资源,造成网络拥塞和服务中断。
- UDP Flood 攻击,攻击者通过向目标系统发送大量的 UDP 数据包,导致目标网络带宽被大量占用,或者目标系统忙于处理这些无效的 UDP 数据包而没法处理正常请求。
- ICMP Flood 攻击,攻击者发送大量的 ICMP 数据包(比如 Ping 包)到目标主机,消耗目标的网络带宽和系统资源,从而让目标主机无法正常提供服务。
- HTTP Flood 攻击,也叫 CC 攻击。攻击者通过模拟大量正常用户不断地向目标网站发送 HTTP 请求,造成目标网站服务器资源耗尽,无法响应正常用户的请求。这些请求通常是针对一些消耗资源较大的页面或操作。
二、DDoS 攻击对域名的影响
二、DDoS 攻击对域名的影响
(一)域名解析失效
DDoS 攻击可能导致域名解析系统(如 DNS)过载,进而影响域名的正常解析,导致用户无法正常访问目标网站。当 DDoS 攻击发生时,大量的请求会涌向目标服务器,这其中也包括对域名解析系统的请求。由于域名解析系统通常处理能力有限,在面对如此大量的请求时,很容易出现过载的情况。一旦域名解析系统过载,就无法及时准确地将域名转换为对应的 IP 地址,从而使得用户在尝试访问目标网站时无法成功连接。
(二)域名劫持
攻击者通过伪造 DNS 记录,将用户引导至恶意网站,窃取信息或传播恶意软件。在 DDoS 攻击的同时,攻击者可以利用混乱的网络环境,对 DNS 记录进行伪造。这样,当用户输入目标域名进行访问时,DNS 系统会错误地将用户引导至恶意网站。用户在不知情的情况下访问这些恶意网站,可能会导致个人信息被窃取,或者恶意软件被下载到用户的设备上,给用户带来严重的安全风险。
(三)域名声誉受损
DDoS 攻击可能使域名被误认为恶意网站,影响声誉和信任度。当一个域名频繁遭受 DDoS 攻击时,安全防护系统可能会将其标记为潜在的恶意网站。其他网络安全机构和用户也可能会对该域名产生警惕,认为它存在安全风险。这样一来,域名的声誉就会受到损害,用户对该域名的信任度也会降低。这不仅会影响当前用户的访问意愿,还可能对未来的业务发展和用户拓展造成不利影响。
三、防御策略
(一)强化 DNS 防护
采用高性能 DNS 服务器和防护措施,如 DNS 防火墙、安全扩展等,可有效提高抗攻击能力。例如,传统权威 DNS 服务器会利用 DNS 的特性,采用 CNAME 重传、TC 重传、首包丢弃等技术将缺乏会话交互的 UDP 一来一回请求转换成为具有会话记录的 UDP 多来多回请求,从而判断请求来源是否为真实用户,以此来防御 DDoS 攻击。但这些传统方案在权威 DNS 防护中也存在一些问题,如首包丢弃可能导致递归服务器资源占用严重甚至丢弃正常请求;TC 重传对服务器性能考验大且部分 ISP 的 LocalDNS 不支持 TCP;CNAME 重传可能因 ISP 侧的缓存技术导致严重故障。
(二)使用 CDN 加速
通过 CDN 分散流量,可降低单个服务器负载,提高访问速度和稳定性。CDN 通过在全球范围内部署大量的分布式节点服务器,将网站内容缓存到离用户最近的节点。当用户首次访问网站时,CDN 会从源站服务器获取内容,并将其缓存到最近的节点。当后续用户请求相同内容时,CDN 会直接从缓存中提供内容,减少了与源站的通信,提升了访问速度。同时,CDN 能够利用智能路由技术,根据实时网络状况、用户地理位置和节点负载情况,动态选择最佳路径和节点,确保内容传输的高效与稳定。此外,CDN 还可以有效防御 DDoS 攻击,它可以将流量分散到全球各地的服务器上,减轻单一服务器的压力;缓存网站的静态内容,减少源服务器的负载;通过智能的流量分析和过滤,识别和过滤掉恶意流量;提供加密通信功能,保护网站免受 DDoS 攻击者的窥探和篡改。
(三)部署安全设备
在网络边界部署防火墙、入侵检测系统等安全设备,能够识别过滤异常流量。抗 DDoS 产品的防御方式通常为扩大带宽、入侵检测,流量过滤和多重验证,旨在堵塞网络带宽的流量将被过滤,而正常的流量可正常通过。大多数防火墙,IPS 产品都附带了抗 DDoS 攻击的功能,但是,由于它们本身对数据的处理机制,造成不能够准确的检测出 DDoS 攻击数据包和正常数据包,因此,它们对 DDoS 攻击的处理方式和专业的抗 DDoS 攻击设备还是有很大不同的。实际网络中最常使用的就是抗 DDoS 防火墙。
(四)采用云安全服务
利用云服务提供商的 DDoS 防护服务,为域名提供额外保障。例如,华为云通过与上游 ISP 及第三方合作,在源头或上游节点封堵或清洗,防御上流的超大流量 DDoS 攻击;互联网边界上部署本地 Anti-DDoS 系统,实现自动化 DDoS 防御能力;网络边界上通过部署七层防火墙、IPS、WAF、VPN 等安全设备为来自互联网边界及公有云内部网络的安全威胁提供防护;通道安全加密,保证数据传输安全;安全设备及沙箱联动协同防御,行为模拟分析,有效识别未知的 APT 威胁;安全管理中心集中管理安全事件,可视化呈现安全威胁态势,集中管理全网安全风险;边界可疑流量检测、联动网络及安全设备实现智能关联分析形成正反馈,进而实现安全威胁的深度检测分析和智能及时的自动处置消除。
四、案例分析
以某知名电商网站为例,该网站在 “双十二” 购物节期间遭受了严重的 DDoS 攻击。
2017 年 12 月 12 日,恰逢电商销售节日 “双十二”,某知名电商网站遭到了竞争对手腾飞公司组织的 DDoS 攻击。攻击者先是 “低密度” 攻击包括该电商网站在内的多个网站,并将自己公司网站也列入攻击目标。从下午开始,对该电商网站进行 “高密度” DDoS 攻击。
此次攻击使得该电商网站原先的网络防护失去作用,网站租用的服务器被封堵,网站陷入瘫痪状态,于当日 17 时 15 分至 18 时 30 分没有流量、不能正常运行。因为不能完成正常交易,也不能打开网页,该网站用户纷纷向其投诉。
面对攻击,该电商网站采取了一系列防御措施。首先,请来专业安全防护公司进行抗 DDoS 攻击,虽然防护升级后,网站当天恢复正常,但这一事件给该电商网站带来了巨大打击,除了直接损失,间接造成的信誉受损、商家和客户流失等损失更是难以估量。
这个案例充分展示了 DDoS 攻击对电商网站的巨大破坏力,同时也说明了及时采取有效的防御措施的重要性。通过这个案例,我们可以看到,电商网站在面对 DDoS 攻击时,需要强化 DNS 防护,采用高性能 DNS 服务器和防护措施,如 DNS 防火墙、安全扩展等;使用 CDN 加速,分散流量,降低单个服务器负载,提高访问速度和稳定性;部署安全设备,在网络边界部署防火墙、入侵检测系统等安全设备,识别过滤异常流量;采用云安全服务,利用云服务提供商的 DDoS 防护服务,为域名提供额外保障。
墨者安全 防护盾
墨者安全作为专业级别安全防护专家,在应对 Webshell 风险隐患方面展现出了卓越的能力。其拥有全面的检测机制,能够精准识别 Webshell 的各种类型和变体,无论是复杂的大马,还是隐蔽的内存马,都难逃其敏锐的监测。
墨者安全防护盾具备强大的实时监控功能,对服务器的各项活动进行 7*24 小时不间断的监视。一旦发现任何可疑的 Webshell 活动迹象,立即发出警报,并迅速采取隔离和清除措施,将风险扼杀在萌芽状态。
在防护策略上,墨者安全防护盾采用了多层次的防御体系。不仅能够在网络层面阻挡外部的恶意访问和攻击,还能深入系统内部,对服务器的文件系统、进程等进行深度检查和保护,确保 Webshell 无法植入和运行。
同时,墨者安全防护盾拥有快速的应急响应能力。当 Webshell 攻击事件发生时,专业的安全团队能够迅速介入,进行深入的分析和处理,最大程度减少攻击带来的损失,并帮助用户快速恢复服务器的正常运行。
墨者安全防护盾还注重用户教育和培训,为用户提供关于 Webshell 防范的专业知识和最佳实践,帮助用户提升自身的安全意识和防范能力,共同构建坚实的网络安全防线。