当您的域名因被恶意攻击或流量被恶意盗刷,产生了突发高带宽或者大流量消耗,导致产生高于日常消费金额的高额账单。因恶意攻击或流量盗刷产生的高额账单无法免除/退款,为尽量避免此类风险,本文为您介绍这一类情况的应对办法。
及时止损
当您已经发现域名因被恶意攻击或流量被恶意盗刷,并且产生了高额账单,请先设置带宽上限和单请求限速,以此来减少进一步的损失,设置完成后再进一步分析日志做出针对性的安全设置。
控制带宽用量
限制下行速率
分析原因
查询账单明细,确认流量异常的时间段
您可以在费用与成本明细账单页面查看云产品相关的消费明细。根据实际需求选择统计维度和统计周期,查看不同维度的报表。详细操作请参见明细账单。
统计周期选择明细,产品选择CDN,仔细审查账单,注意流量和带宽的异常增加,以及流量异常的时间段。具体请参见账单查询。
检查日志文件,识别异常流量
基础查询:离线日志
通过下载离线日志,查看相关时间段的访问日志,分析HTTP请求的详细信息,识别可疑的IP地址、User-Agent等。离线日志字段数据相对较少,如果您想查看更多数据,可使用实时日志功能。
获得离线日志文件后,您可以使用命令行工具来快速解析日志文件,提取访问量TOP10的IP地址或User-Agent等信息,详情请参见CDN访问日志的分析方法。
进阶查询:运营报表和实时日志
运营报表需定制后才会进行生产统计分析,如果您之前已配置过实时日志推送或订阅运营报表,您可以查看到过去的日志信息。运营报表为CDN自带免费功能,无需额外付费。
实时日志需要开通日志服务(SLS)并成功投递日志后,才会生成实时日志。实时日志为付费功能,具体计费请参见计费详情。
实时日志和运营报表均需要提前配置,如果您在产生高额账单之前未配置过这两项功能,只能通过离线日志进行历史数据分析。
解决问题
当您获取到了日志或报表数据后,您可以通过数据特征来分析攻击类型。通常您可以分析Top信息(Top IP、Top User-Agent、Top Referer等)提取特征。
限制可疑IP访问
通过配置IP黑名单,限制访问源IP。分析日志后,筛选出一些可疑的攻击IP,您需要将这些可疑的IP地址列入黑名单。具体操作请参见配置IP黑白名单。
过滤可疑User-Agent
攻击者通过伪造User-Agent字段发送大量请求,试图绕过安全检查。伪造的User-Agent可能是空值、随机字符串或常见浏览器的伪造字符串。您可以配置User-Agent白名单或黑名单,拒绝非正常的User-Agent请求。例如,拒绝空User-Agent或不符合规范的随机字符串,您可以使用参数this-is-empty-ua
和RandomString
分别来表示空User-Agent和随机字符串。具体操作请参见配置UA黑白名单。
添加可疑Referer至黑名单
攻击者在请求头中伪造Referer字段,以假冒合法的引用来源,进行恶意请求。配置Referer黑白名单,允许合法的Referer访问,防止未经授权的第三方网站链接到资源,拒绝带有恶意Referer的请求。在规则输入框中填写日志中查询出的异常Referer,建议勾选忽略scheme。具体操作请参见配置Referer黑/白名单。
升级至ESA并接入WAF、Bots防护
建议您将域名迁移至ESA产品,ESA提供丰富的防护功能,不仅可以保护数据安全,同时也提升了访问速度和用户体验。您可以根据如何从CDN、DCDN升级到ESA的指引,快速完成域名的迁移。然后根据下方引导,快速接入ESA的安全防护功能。
WAF
ESA的WAF提供了IP访问规则、白名单规则、自定义规则等丰富的规则匹配拦截能力,避免网站服务器被恶意入侵,保障业务的核心数据安全。
配置IP访问规则
配置白名单规则
配置自定义规则
Bots防护
ESA的Bots支持简易模式和高级模式的配置。通过简易模式您可以快速的为当前站点配置爬虫管理,而高级模式提供了更为精准的爬虫规则,方便您针对性的对网站或APP作出调整。
简易模式
简易模式是面向安全入门级用户的机器流量、爬虫管理功能,相比于需要专业配置能力配置复杂规则的高级模式,简易模式只需要快速选择对某类爬虫的处置动作即可实现对爬虫的管理。
操作步骤
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择 。
在Bot管理页面,选择简易模式,根据下列说明选择合适的配置项进行配置或开启。
绝对是Bot:绝对是Bot的请求往往包含大量恶意爬虫请求。一般建议做拦截或滑块挑战。
可能是Bot:可能是Bot的请求风险较绝对是Bot相对较低,有可能包含恶意爬虫以及其他流量。一般建议观察或在风险较高时期做滑块挑战。
已通过验证的Bot:已通过验证的Bot通常是各类搜索引擎的爬虫,有利于您网站的SEO优化。一般建议放行,如您不希望任何搜索引擎爬虫访问您的站点时可做拦截操作。
可能是真人(该类型不支持设置处置动作):大概率来自真实真人用户的访问,不建议做特殊处置动作。
对静态资源请求生效:绝对是Bot、可能是Bot、已通过验证的Bot的配置默认仅对动态资源请求(这些请求将会经过加速访问您的源站)生效,开启后将对命中ESA缓存的请求(通常是图片、视频等静态文件)生效。
JavaScript检测:ESA将使用轻量隐性的JavaScript检测优化Bot识别结果。
说明仅浏览器客户端可以通过JavaScript检测,如果您存在从IDC机房访问您的站点的业务,请不要开启该功能,以避免误拦截。
高级模式
通过高级模式,您可以为浏览器Web页面或基于iOS/Android原生开发的App提供防爬功能。Bot管理支持您对不同特征的请求做爬虫挑战,也支持您直接使用系统内置的爬虫库(搜索引擎爬虫、AI智能防护、爬虫威胁情报库、IDC黑名单、伪造爬虫名单等)而无需自己手动分析和更新爬虫特征。
操作步骤
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择 。
在Bot管理页面,选择高级模式,单击创建规则集。
根据界面提示设置相关参数,单击确定。
设置网页防爬规则
如果您通过浏览器访问网页或H5页面(包括App中使用的H5页面)等,您可以通过设置浏览器访问网页的防爬规则,更有针对性地对业务进行爬虫风险防护。
配置模块 | 配置项 | 说明 |
全局配置 | 规则集名称 | 设置规则集名称,支持输入英文字符(大小写)、数字(0~9)及下划线 |
防护目标类型 | 选择网页/浏览器,表示防护通过浏览器访问的网页或H5页面等,包括App中使用纯H5页面呈现的内容。 | |
SDK集成方式 |
| |
跨域调用 | 选择自动集成时,如果您有多个站点均开启了Bot管理的Web SDK自动集成且多个站点域名互相访问(如通过站点B下某页面调用当前站点A的登录接口),为了防止多次嵌入JS代码,您需勾选并选择跨域访问的来源站点域名(即例子中的B站点)。 | |
当请求匹配以下规则时... | 设置要匹配的用户请求特征,请求匹配规则详细信息请参见规则表达式的组成。 | |
则执行... | 合法Bot管理 | 搜索引擎爬虫白名单,支持主流搜索引擎的爬虫IP信息,可动态更新,目前包含Google、百度、搜狗、Bing、360、Yandex。 选择指定的搜索引擎爬虫后,来自相关搜索引擎的合法爬虫IP将被直接放行,不经过Bot管理模块的防护检测。 |
Bot特征识别 |
| |
Bot行为识别 | AI智能防护,防爬规则会通过AI智能防护引擎对访问流量进行分析和自动学习,生成有针对性的防护规则或黑名单。
| |
自定义限速 |
| |
爬虫威胁情报库 | 收录一段时间内在阿里云上对多个用户有多次恶意爬取行为的攻击源IP地址。 您可设置爬虫威胁情报库为观察或滑块校验。 | |
IDC黑名单封禁 | 会封禁选中IP库。如果您使用公有云或IDC机房的源IP来访问,请注意加白已知的合法调用,如支付宝或微信的支付回调、监控程序等。IDC黑名单封禁支持如下IP库:阿里云、世纪互联、美团云、腾讯云、其他。 您可设置IDC黑名单封禁为观察、滑块校验或拦截。 | |
伪造爬虫拦截 | 开启后将拦截合法Bot管理中所有搜索引擎的User-Agent,已开启白名单的搜索引擎对应的合法客户端IP将被放行。 | |
生效时间 | 创建规则后默认立即生效且永久生效。您可以选择对不同规则按指定时间段生效或按指定的周期生效。 |
设置App防爬规则
如果您使用的是基于iOS或Android原生开发的App(不包括App中使用的H5页面),您可以通过设置App防爬规则,更有针对性地对业务进行爬虫风险防护。
配置模块 | 配置项 | 说明 |
全局配置 | 规则集名称 | 设置规则集名称,支持输入英文字符(大小写)、数字(0~9)及下划线 |
防护目标类型 | 选择APP,表示对使用基于iOS或Android原生开发的App(不包括App中使用的H5页面)进行防护。 | |
SDK集成方式 | 您需要单击获取并复制appkey,填写信息申请获取SDK包。更多信息,请参见Android应用集成SDK或iOS应用集成SDK。SDK集成后,将会采集客户端的风险特征并生成安全签名附带在请求中,WAF会根据签名特征进行请求风险的识别和拦截。 | |
当请求匹配以下规则时... | 设置要匹配的用户请求特征,请求匹配规则详细信息请参见规则表达式的组成。 | |
则执行... | Bot特征识别 |
|
Bot限速 |
| |
爬虫威胁情报库 | 收录一段时间内在阿里云上对多个用户有多次恶意爬取行为的攻击源IP地址。 | |
IDC黑名单封禁 | 开启此开关后,会封禁选中IP库。如果您使用公有云或IDC机房的源IP来访问,请注意加白已知的合法调用,如支付宝或微信的支付回调、监控程序等。IDC黑名单封禁支持如下IP库:阿里云、世纪互联、美团云、腾讯云、其他。 | |
生效时间 | 创建规则后默认立即生效且永久生效。您可以选择对不同规则按指定时间段生效或按指定的周期生效。 |
安全分析
安全分析用于展示WAF和Bot管理的拦截、观察和总访问量等数据,以便您根据数据动态调整您的防护规则。
分析维度
筛选器:支持按照Host、HTTP版本、客户端IP等维度筛选过滤。选择筛选条件后,仅显示与筛选条件匹配的数据结果。
查询时间:默认展示过去24小时的请求特征信息,支持自定义查询时间,最多可查询至过去30天的数据。
查看安全分析报表
在Web应用遭遇突发性流量峰值或检测到异常攻击行为时,应通过安全分析模块对HTTP/S请求流量进行实时特征解析,核验其与预设的合法请求特征基线(包括但不限于Header结构、载荷模式、访问频率)的合规性。针对偏离基线的非预期流量(如SQL注入特征、CC攻击特征),可联动WAF引擎动态加载预定义或自定义防护规则集(如正则表达式匹配、速率限制策略),实施精准的请求阻断与攻击溯源,实现纵深防御体系下的主动式威胁处置。
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择 。
在安全分析页面,查看防护信息,通过筛选器选出您需要的数据信息。可以点击
图标打印页面报告或点击
图标将数据以CSV格式下载保存到本地进行分析。
说明安全分析和事件分析获取的数据信息存在约5分钟的延迟。
后续防护
设置实时监控
设置对CDN产品下指定域名的带宽峰值监控,达到设定的带宽峰值后将会给管理员发送告警(短信、邮件和钉钉),便于更加及时地发现潜在风险。详情请参见设置报警。
设置费用预警
您可以在控制台右上方菜单栏费用选择费用与成本,通过设置以下这几个功能来更好地控制账户的消费额度,避免产生过高的账单。
可用额度预警:您可以设置账户余额低于一定金额时即向您发送短信告警。
高额消费预警:您可以开启预警,设置产品日账单大于预警阈值时将会发送短信告警。
为了保证计量数据统计的完整性,确保账单的准确性,CDN产品需要在记账周期结束后大约3个小时才能生成实际的账单,因此实际扣款时间与对应的资源消费时间存在一定的时延,无法通过账单来实时反馈资源消耗情况,这是由CDN产品自身的分布式节点特性决定的,每个CDN服务商都采用类似的处理办法。