白话科普系列——双十一,竟然是一场有“预谋”的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) 可以通过调用计数约束来指定预期和/或允许匹配给定期望的调 ...
随机推荐
- 活字格外联数据库SQLServer和Mysql的经验(大多数经验也适合其它使用外联数据库的平台)
来自学习和实操后的总结,有说得不对的,或者遗漏的,大家留言补充.希望这个贴子,能成为活字格老铁们使用外联库的一个指南.PS即使你不打算使用外联库,里面的一些方法,也值得看一看! 一.库表规划1.系统表 ...
- 在Windows7系统中设置虚拟内存大小
当我们的电脑物理内存空间不够用时,操作系统就会自动从硬盘空间上分出一块空间来当内存使用,这就是虚拟内存.可以说虚拟内存是物理内存的补充,是备用的物理内存.一般来说,如果电脑里的程序不多,占用内存资源不 ...
- golang Gin framework with websocket
概述 golang websocket 库 示例 后端 前端 结论 概述 对于 golang 的 web 开发, 之前写过 2 篇 blog, 分别介绍了: 在 Gin 框架下, 各类 http AP ...
- OpenSSL编程模型
相关头文件: #include <openssl/ssl.h>#include <openssl/err.h> 客户端程序编写流程: 服务端编写流程: 产生私钥:# opens ...
- 多测师讲解unittest介绍及自动化测试实现流程_高级讲师肖sir
unittest框架介绍 unittest框架是python中一个标准的库中的一个模块,该模块包括许多的类如 test case类.test suit类.texttest runner类.textte ...
- ttl转以太网
ttl转以太网 ttl转以太网ZLSN3007S是实现TTL电平串口转以太网的"超级网口",产品自带网络变压器和RJ45网口,可以方便实现单片机.各类TTL电平串口设备的联网.首先 ...
- C++虚函数与多继承
虚函数 C++用虚函数实现运行时多态,虚函数的实现是由两个部分组成的,虚函数指针与虚函数表. 虚函数指针(vptr)是指向虚函数表的指针,在一个被实例化的对象中,它总是被存放在该对象的地址首位.而虚函 ...
- 微信小程序 - 重置checkbox样式
/* 未选中的 背景样式 */ checkbox .wx-checkbox-input { border-radius: 50%;/* 圆角 */ width: 30rpx; /* 背景的宽 */ h ...
- swoole协程通道channel
swoole 协程通道 为了协程直接互相通讯传递数据 和go的通道很相似 Co\run(function(){ $chan = new Swoole\Coroutine\Channel(1); Swo ...
- go 下载图片
package main import ( "net/http" "fmt" "io/ioutil" "strings" ...