由大量爬虫请求引起的带宽占满事件分析和解决方案

本文涉及的产品
Web应用防火墙 3.0,每月20元额度 3个月
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 2018年2月24日晚,卓见云某客户网站公网出流量突然爆发性增长,导致带宽被占满,事故发现后紧急提升了SLB的带宽,但提升后的带宽仍然被流量占满(原带宽15M,提升至35M)。由于事故发生在非黄金访问时段,正常流量不会这么大,加上其他现象,怀疑是遭到了网络攻击。

背景

2018年2月24日晚,卓见云某客户网站公网出流量突然爆发性增长,导致带宽被占满,事故发现后紧急提升了SLB的带宽,但提升后的带宽仍然被流量占满(原带宽15M,提升至35M)。由于事故发生在非黄金访问时段,正常流量不会这么大,加上其他现象,怀疑是遭到了网络攻击。

image
SLB流量

image

WAF流量

经历

21:19 接到用户电话,反馈事故发生

21:20 引导用户通过临时切换SLB来更换IP的方式进行紧急事故处理,但当时用户暂不方便操作

21:22 引导用户提交工单

21:23 汇报我方领导,通知我方工程师上线处理

21:25引导用户进行故障排除,查看DDoS安全报表,发现并无DDoS攻击

21:30进一步排查发现入流量并无明显增加,根据客户网站特点和运维经验判断可能是被爬虫暴力抓数据造成

21:43 排查发现主要是客户移动站点流量异常

21:51 查看WAF安全报表发现大量业务爬虫、robots脚本访问告警

21:55 建议用户通过WAF精准访问功能封禁爬虫IP

22:10 筛选IP

22:23 封禁IP,问题解决

image

Web应用防火墙数据

image

Web应用防火墙精准访问控制

分析

1、商业对手,出于竞争需要,采用爬虫获取信息。

2、搜素引擎抽风。

3、“三月份爬虫”,应届毕业生为交论文常在这个时间点在网上爬取数据,此类爬虫通常简单粗暴,不管服务器压力。

4、近期做的推广活动带来访问压力增加。

建议

1、建立反爬虫手段,后台对IP、session、userAgent进行统计,超过阈值,予以封锁。进一步也可以通过cookie校验、验证码限制等手段。建议多种手段组合使用,达到封锁和误杀之间的平衡。PS:当前直接封IP的方式只是临时解决方案,因为IP是很容易更换的。

2、利用云监控,在SLB和WAF上建立告警规则。建立告警事件处理预案机制。

3、当前WAF版本较低,精准访问控制只支持基于IP和URL的封禁,不支持user-agent和cookie字段,建议把WAF版本升级成企业版。或者开通按量付费WAF,开通精准访问控制高级功能,可临时解决问题。

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
3月前
|
数据采集 缓存 定位技术
网络延迟对Python爬虫速度的影响分析
网络延迟对Python爬虫速度的影响分析
|
6月前
|
数据采集 数据可视化 关系型数据库
基于Python 爬虫的房地产数据可视化分析与实现
本文介绍了一个基于Python爬虫的房地产数据可视化分析系统,该系统通过BeautifulSoup框架采集房源信息、使用pandas进行数据处理、MySQL存储数据,并利用pyechart实现数据可视化,帮助用户高效获取和分析房源数据,从而做出更明智的购房决策。
469 1
基于Python 爬虫的房地产数据可视化分析与实现
|
5月前
|
数据采集
Haskell爬虫:连接管理与HTTP请求性能
Haskell爬虫:连接管理与HTTP请求性能
|
6月前
|
数据采集 数据可视化 关系型数据库
【python案例】基于Python 爬虫的房地产数据可视化分析设计与实现
本文设计并实现了一个基于Python爬虫的房地产数据可视化分析系统,通过BeautifulSoup框架采集房源信息,使用pandas进行数据处理,MySQL存储数据,并利用pyecharts进行数据可视化,以帮助用户更直观地了解房源信息并辅助选房购房。
826 4
|
6月前
|
数据采集 存储 NoSQL
建筑业数据挖掘:Scala爬虫在大数据分析中的作用
建筑业数据挖掘:Scala爬虫在大数据分析中的作用
|
6月前
|
数据采集 存储 C#
C# 爬虫技术:京东视频内容抓取的实战案例分析
C# 爬虫技术:京东视频内容抓取的实战案例分析
|
3月前
|
数据采集 存储 JSON
Python爬虫开发中的分析与方案制定
Python爬虫开发中的分析与方案制定
|
4月前
|
数据采集 JSON 前端开发
JavaScript逆向爬虫实战分析
JavaScript逆向爬虫实战分析
65 4
|
5月前
|
数据采集 网络协议 调度
Python爬虫策略分析4
Python爬虫策略分析4
51 1
|
5月前
|
数据采集 前端开发 Python
Python爬虫策略分析3
Python爬虫策略分析3
33 1