定义
DDOS(Distributed Denial of Service)分布式拒绝服务。是一种成千上万台网络设备(即僵尸网络 )对目标发起攻击的方式。
僵尸网络是攻击者利用木马 、蠕虫 、后门 等恶意程序感染大量设备而形成的,当然,也可以直接花钱买到僵尸网络。
攻击手段
霸占服务器的网络带宽资源
IP协议攻击
发送大量的IP协议数据包(如用ping发送ICMP协议数据包,即ICMP洪水),霸占服务器的网络带宽资源。
UPD洪水攻击
向攻击目标发送大量的UDP协议报,发动UDP洪水攻击。这种攻击需要携带发送设备的IP地址,所以一般会通过伪造IP地址来隐藏自己。
TCP协议攻击
可以在TCP中只向攻击目标发送SYN请求(SYN洪水),而不回复,导致攻击目标以为是网络环境问题而采用重传机制,从而多次尝试发送SYN+ACK直至超时。为了不让这些流量回到攻击者本身的服务器,攻击者一般都是伪造发送IP为其他第三方IP地址。当然,也可以伪造发送IP为特定目标地址,从而达到攻击对方的目的。
反射攻击
将发送端IP地址伪造成攻击目标的IP,将接收端的IP地址伪造成互联网上大量第三方IP地址,从而让攻击目标一下子接收大量第三方机器(也称为反射器)的流量。
放大攻击
放大攻击指在反射攻击中,攻击者发送的流量经过反射器后被放大,使得攻击目标接收到的共计流量比攻击者发送的流量更大。
因为DNS协议一般使用UDP协议,且DNS协议的响应流量要比请求流量大很多,所以利用DNS协议就可以实现放大攻击。
霸占服务器的TCP连接资源
TCP的连接表大小是有限的,攻击者通过向攻击目标发起大量的TCP连接(TCP洪水),占满攻击目标的连接表,而无法响应后续的TCP连接请求。
切断对方的网络连接资源
利用TCP协议中,一般通过四次挥手结束连接,但是为了防止出现异常现象,一方可以发送一个RST数据强制切断连接。攻击设备不断尝试伪造各种IP地址,向攻击目标发送RST数据进行“盲打”,一旦IP和其他的一些配置和某个正常用户的匹配上,就能够切断正常用户和服务器之间的连接。这种攻击更针对用户。
霸占服务器的计算和IO
攻击者通过不断利用HTTP向服务器发起具体业务业务请求,攻击目标在收到请求后需要进行像数据库查询这样的IO操作,从而对攻击目标的内部计算和IO资源进行消耗。用于HTTP基于TCP协议,所以发送方不能伪造IP地址,因此,攻击者通常是借助网络代理主机得到不同的真实IP发起攻击。
防范手段
-
捣毁僵尸网络:让用户做好个人防护,避免被感染成为僵尸设备,从而捣毁僵尸网络。 -
避免伪造IP地址:
-
让互联网服务提供商设置其路由器能够实现把源IP不属于本路由所在网段内的数据都过滤掉。 -
考虑到路由路径不能作假,可以设置路由能够根据IP地址的路径逻辑检测出矛盾,就可以过滤掉这些流量。 考虑到这两种方案设计到用户、服务商、设备商以及监管部门,不仅仅只是一个单纯的技术问题,因此,很难实现。 -
采用CDN技术。这种技术的缓解作用比较有限。 -
采用流量清洗设备。
参考文献
https://www.bilibili.com/video/BV1KQ4y117nq?spm_id_from=333.337.search-card.all.click 哔哩哔哩-DDoS技术鉴赏
|