白话科普系列——双十一,竟然是一场有“预谋”的DDoS攻击?
随著互联网与信息技术的发展,所有人都在享受互联网带来的舒适和便利。如今,无论是个人社交行为,还是商业活动都早已离不开互联网。
但是,网络空间在创造机遇的同时,也带来了威胁。随着企业价值、知名度的提高、官方网站、线上交易平台、使用者登入页面皆为攻击者之首选目标,而最常见的攻击手法就是 DDoS 。DDoS 攻击让许多厂商与企业感到束手无策的同时,还遭受了巨大的损失。而且通过这些年的发展,DDoS 攻击手法还变得越来越多元且难以防范,它已经成为不同组织和个人的攻击形式之一,用于网络中的勒索、报复,甚至网络战争。
本篇文章就带大家认识一下常见的 DDoS 攻击手法,以及遇到攻击后要如何进行防御应变。

什么是 DDoS 攻击?
DDoS 攻击全名为 Distributed Denial-of-Service Attack,又称为分布式拒绝服务攻击,是旧时 DoS 攻击(Denial-of-Service Attack,拒绝服务攻击)的扩大版,其目的是以各种攻击手法,让网络系统的功能瘫痪或资源耗尽,迫使网页或服务器中断服务,导致正常的用户无法使用网页功能和使用服务。

早期的电脑不如今日发达,只要攻击方电脑性能高于被攻击方,一对一的 DoS 攻击很容易达到目的。现如今很多大型企业具备较强的服务提供能力,所以应付单个请求的攻击已经不是问题。
既然一打一行不通了,那就群殴。攻击者会组织很多同伙,同时提出服务请求,直到服务无法访问,这也就是名称中“分布式”的由来。但是,在现实中,一般的攻击者无法组织各地伙伴协同“作战”,所以会使用“僵尸网络”来控制众多计算机进行攻击。

僵尸网络感染了恶意软件的计算机,以及其它可联网资源,例如 IoT 设备。这些僵尸主机接收攻击者控制命令,从而构建出一只数量庞大的僵尸主机(Bot)军队,同时间对同一目标发动特定类型攻击,将被攻击者的网络资源及系统资源耗尽,导致无法为真正的用户提供服务。这也是名称中“阻止服务”的由来。
因为僵尸主机的数量很大而且分布广泛,又都是合法的网络设备,因此很难将攻击流量与正常流量分开,其危害程度和防御难度都很大。

上图是每年双十一淘宝服务器瘫痪的新闻。众多用户使用服务造成的流量洪峰,某种角度来说等同于一次大型的 DDoS 攻击。
如何识别 DDoS 攻击
DDoS 攻击最明显的特征就是站点或服务突然变慢或不可用。但是,实际业务中,由于多种原因(如业务流量的合理激增,例如游戏文件更新)也会造成类似的性能问题,因此通常需要进一步确认。以下是 DDoS 攻击的一些明显迹象:
来自单个 IP 地址或 IP 范围的可疑访问;
对单个页面或接口的请求数量激增;
不寻常的流量模式,例如一天中在凌晨突然出现流量高峰,或某种不符合业务的流量高峰(例如,每 10 分钟出现一次高峰)
DDoS 攻击还有其它更具体的迹象,具体取决于攻击的类型。
DDoS 的攻击方式
带宽消耗型攻击
通过传送大量无效、或恶意放大流量的数据请求,堵塞被攻击的服务器带宽,使其达到饱和状态,让正常用户无法进入,甚至造成网页宕机瘫痪,达到拒绝服务的目的。
像是常见的 UDP 洪水攻击(即发送用户数据报协议的大包或小包)、ICMP 洪水攻击(即发送大量 ICMP 相关报文);生成超过 IP 协议中规定的最大的数据长度,导致系统宕机的死亡之 Ping,皆属于此类。
资源消耗型攻击
有别于带宽消耗型的 DDoS 攻击,资源消耗型攻击是让被攻击方的服务器不断进行反复的无效运作,导致网页资源被耗尽,无法再响应正常用户的请求,从而达到拒绝服务的目的。
这种类型的典型 DDoS 攻击手法,如 SYN 洪水攻击。我们都知道创建 TCP 连接需要客户端与服务器进行三次交互,也就是常说的“三次握手”。而这个信息通常被保存在服务器连接表结构中,但是表的大小有限,当超过存储量时,服务器就无法创建新的 TCP 连接。
而 SYN 洪水攻击就表现为,对服务器提出建立 TCP 握手请求后故意切断网络,让服务器持续发出请求并等待回复,从而导致服务器资源不断消耗。甚至更进一步,如果将 SYN 洪水攻击中发起请求的 IP 来源,设定为被攻击服务器的 IP 地址,就会让服务器不断的自我响应,直到资源耗尽,这就是常见的 LAND 攻击手法。
除此之外,还有利用大量服务器对被攻击方提出模拟 HTTP 正常请求的 CC 攻击、网路僵尸攻击等等,都是以耗尽服务器资源为目标的攻击手段。
应用攻击
近些年,Web 技术发展非常迅速,因此也诞生了应用攻击。即攻击者不断地向 Web 服务器恶意发送大量 HTTP 请求,利用 Web 应用已经提供的一些接口,来对网站的后台数据库进行增、删、改、查的操作。由于这种操作是由计算机来完成,计算机巨大的计算能力常常伴随产生极恐怖的破坏力。一旦 Web 服务受到这种攻击,就会对其承载的业务造成致命的影响。
DDoS 的防御方式
DDoS 攻击之所以难以防御,是因为 DDoS 的攻击会用看似正常的需求进行包装,加上难以追踪攻击来源,也是 DDoS 处理起来棘手的原因。
不过我们仍然可以利用下面的 3 个处理方向,来加强系统的 DDoS 防御:
- 加强防火墙的通行规则
通过设置高性能的防火墙,来限制异常 IP 发出的请求,降低大量无效数据占用带宽或损耗资源的可能性,加强筛选机制、阻断 DDoS 攻击的效果。
- 提升服务器的性能、规格
提升服务器的性能,当遭受 DDoS 攻击时可争取多一点的缓冲时间,在不让服务瘫痪的状况下,及时针对攻击模式制定应对的 DDoS 防御手段,将伤害减至最低。
- 使用具备 DDoS 防御的系统
像是 DDoS 流量清洗机制,可以将流量导入清洗系统中,把异常的流量来源过滤、剔除,又或是服务器本身具备防御一定数量的无效数据包,以及设定合理的同时连线数量等,让 DDoS 攻击无功而返。
- 寻找专业高防服务团队
由于传统设备无法抵御大流量的 DDoS 攻击,通过配置云端高防系统的方式也逐渐受到了客户的青睐。又拍云 DDoS 高防 IP 服务是针对互联网业务在遭受大流量 DDoS 攻击后业务瘫痪,而提供的高等级流量防护服务。直接将高防 IP 服务部署在源站服务器前,帮助业务服务器站抵御来自内外部的流量攻击。

客户将业务接入高防 IP 后,源服务器的所有公网流量将引流至高防机房,高防 IP 平台的异常流量检测系统会实时对流量进行智能识别和分析,将攻击流量引流至高防节点,隐藏源站,以确保用户源站稳定可靠运行。
高防 IP 可以防御的有包括但不限于以下类型:SYN Flood、UDP Flood、ICMP Flood、IGMP Flood、ACK Flood、Ping Sweep 等攻击。
又拍云高防 IP 服务提供在线 SaaS 的服务接入方式,异地多节点多线路防护,单点防御 1T,全网总防御能力近 3T,支持 BGP 、电信、联通、移动等多条线路,可以有效防御 SYN Flood、ACK Flood、UDP Flood、HTTP Flood、CC 攻击等,为客户提供稳定、安全的访问体验。

推荐阅读
白话科普系列——双十一,竟然是一场有“预谋”的DDoS攻击?的更多相关文章
- 白话科普系列——最好用的浏览器 Chrome,你用了么?
市面上的浏览器多种多样,而浏览器的王者--IE 浏览器,它在 2002 年市场份额高达 95.4%.直到后续 Firefox,Safari,Chrome 相继问世才动摇了 IE 浏览器的地位,其中 C ...
- 【白话科普】CDN & 游戏加速器,两者是一个原理吗?
说起加速,大家可能就会联想到"游戏加速"之类的场景,而说到现在流行的云服务加速,则离不开 CDN 这个词.那么 CDN 和游戏加速器是同一种东西么?从效果上看两者都是为了" ...
- 【圣诞特献】Web 前端开发精华文章推荐【系列二十一】
<Web 前端开发精华文章推荐>2013年第九期(总第二十一期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各种增强网站用户体验的 jQuery 插件,展示前沿的 HTML5 和 ...
- ABBYY FineReader去他的光棍节,我要我的双十一
今天就是双十一,全民剁手的双十一,一年仅一次的双十一,不只是半价的双十一.....此时此刻,多少钱拿起手机在疯狂购物,又有多少人死守着电脑,不敢怠慢一丁点机会,买着买着购物车就空了,然后才发现,咦!超 ...
- 备战双十一,腾讯WeTest有高招——小程序质量优化必读
WeTest 导读 2018年双十一战场小程序购物通道表现不俗,已逐渐成为各大品牌方角逐的新战场.数据显示,截止目前95%的电商平台都已经上线了小程序.除了电商企业外,许多传统线下商家也开始重视小程序 ...
- CRL快速开发框架系列教程十一(大数据分库分表解决方案)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- 双十一 VS 火车票(12306)
火车票开售了,又是一年,code了一年,咱们也该回顾回顾了. 还记得12306上线之初各种技术大牛给人家出方案,吐槽人家外包费用?我们来回顾回顾. 就园子里都过千篇文章来侃这事儿,请问有多少主题的文章 ...
- “双十一”购物狂欢节,电商运营和商业智能(BI)才是绝配
百年前,人们获取信息的方式是通过报纸.书籍:十年前,人们获取信息的方式是通过传统PC互联网:而如今,在4G网络高速发展的浪潮下,伴随着移动智能终端的普及,人们获取信息的方式已经逐渐转向了移动 ...
- 单元测试系列之十一:Jmockit之mock特性详解
本文是Jmockit学习过程中,根据官网所列的工具特性进行解读. 1.调用次数约束(Invocation count constraints) 可以通过调用计数约束来指定预期和/或允许匹配给定期望的调 ...
随机推荐
- Docker开启远程连接,本地IDEA使用docker插件连接(不认证的版本和认证的版本都有)
前言 在学校学习的时候,要部署一个Java程序,一般是打成war包,放到服务器上的tomcat的webapp里面去: 后来SpringBoot出现内置了tomcat,就直接打成jar包,丢到服务器任何 ...
- Informatic 内些坑
1. 工作流调用工作流(可实现无规则时间点自由调度) pmcmd startworkflow -sv 集成服务名称 -d 配置域名称 -u Administrator -p Administrato ...
- MeteoInfoLab脚本示例:线性拟合
MeteoInfoLab提供一个线性拟合函数linregress,参数是参与拟合的两个数据序列,返回拟合的斜率.截距和相关系数.有了上述拟合参数可以用polyval函数生成拟合数据(直线).然后可以将 ...
- 制作西北地区地图数据并maskout
1.从全国地图数据中选中西北5省:打开bou2_4p.shp文件添加相应的图层(中国各省的行政区域),选中工具栏中的"通过矩形选择要素"工具,用鼠标点击选择要输出的图元,按住ctr ...
- Python爬虫框架--Scrapy安装以及简单实用
scrapy框架 框架 -具有很多功能且具有很强通用性的一个项目模板 环境安装: Linux: pip3 install scrapy Windows: ...
- golang的http库使用代理
1.先上代码 package main import ( "crypto/tls" "flag" "fmt" "io/ioutil ...
- 如果你想or即将成为一名程序员,那你需要知道这些东西!上岗须知~
前两天公司学院的同学给我看了一下即将入职的应届生的数量,真是不少.感慨一下,一批新人即将到来,而自己又老去了一岁.码农是一个必将终身学习的职业.而相关的知识越来越多了.接下来该学什么?接下来该干什么? ...
- 分布式机器学习:如何快速从Python栈过渡到Scala栈
首先介绍下我的情况和需求,如果你跟我类似,那么这篇文章将很有帮助: 我之前的技术栈主要是Java.Python,机器学习方面主要用到是pandas.numpy.sklearn.scipy.matplo ...
- Asp.Net实现局部刷新,ScriptManager和UpdatePanel控件的使用
<asp:CheckBoxList ID="LimitCollegeNo" runat="server" CellPadding="5" ...
- MySQL设置慢查询
MySQL的慢查询日志是用来记录在MySQL中响应时间超过阀值的语句,则会被记录到慢查询日志中(运行时间超过long_query_time值的SQL语句): 慢查询相关参数: slow_query ...