边缘安全加速 ESA的安全规则依托海量威胁情报库,通过分析访问请求的特征(如来源IP、请求路径、User-Agent等),智能识别潜在恶意行为,并自动执行挑战处置,精准防护核心业务。
业务场景说明
在网站运营中,核心功能路径(如管理后台、登录接口、支付API等)常常成为自动化工具、恶意爬虫和网络攻击的主要目标。若采用统一固定的全局防护策略,可能会因过于严格而误伤正常用户,或因过于宽松而无法有效抵御针对性攻击。
而通过建立精细化的安全规则,仅对访问特定路径或具有可疑特征的请求应用更高的安全策略,可实现对核心业务的重点防护,同时最大限度地减少对普通用户访问体验的影响。
功能介绍
ESA安全规则的核心是一个基于请求特征匹配和威胁情报分析的智能决策引擎。当一个用户请求到达ESA边缘节点时,系统会根据已配置的安全规则列表进行顺序匹配和处理。
该流程主要包含威胁检测、挑战验证和安全级别三个核心机制,具体内容如下所示:
威胁检测机制
ESA的威胁检测能力基于阿里云海量的威胁情报数据库,该数据库实时汇集全球网络威胁数据。
情报来源:包含已知的恶意IP、攻击源、僵尸网络、代理服务等。
检测维度:系统会综合评估请求的IP信誉、地理位置、访问模式、请求特征(如User-Agent)等多个维度,并生成一个动态的威胁评分作为安全级别判定参考。
挑战验证类型
当请求被判定为具有潜在威胁时,系统会根据设定的安全级别发起挑战,以区分真实用户和自动化程序。
JavaScript挑战:向客户端注入一段JS代码,验证其是否为真实的浏览器环境。此过程对用户通常是透明无感的,但可能会对不支持JavaScript的API客户端造成影响。
人机验证码:要求用户完成图形验证码或滑动验证等交互操作,以证明其为人类用户。此方式会中断用户的访问流程。
安全级别说明
安全级别定义了威胁检测的敏感度和应对措施的严厉程度。选择更高的安全级别会提升防护能力,但也可能增加对正常用户的影响。
级别 | 建议场景 | 描述 |
低(默认值) | 适用于无明确攻击历史的站点进行日常防护。 | 仅挑战威胁程度最高的IP地址。 |
中等 | 适用于有刷量历史或对安全有较高要求的站点。 | 挑战威胁程度较高的IP地址。 |
高 | 适用于站点正遭受攻击或在重要活动保障期间。 | 挑战任何可疑威胁的IP地址。 |
我正在遭受攻击 | 仅建议在遭受大规模攻击时作为应急手段开启。 | 挑战所有访问者,最大程度保障站点可用性。 |
基本关闭 | 建议仅在排查严重误拦截问题时临时使用。 | 仅保留ESA平台级的最小防护策略,仍会处理极端高危请求。 |
彻底关闭(企业版可用) | 仅企业版可用,用于调试或特殊业务场景。 | 完全关闭所有主动安全防护功能。 |
操作步骤
新增规则后,当用户发起资源访问请求时,ESA将根据规则的生效优先级依次进行匹配与执行。
创建安全规则
在ESA控制台,选择站点管理,在站点列单击目标站点。
在左侧导航栏,选择 。
单击新增规则,填写规则名称。
在如果请求匹配以下规则...区域设置要匹配的用户请求特征,在则执行…区域选择安全级别。例如:
针对主机名为www.example.com的请求,设置中等安全级别
可参考:(可选)可根据实际需要拖动顺序列的
,或单击操作的移至调整规则执行优先级。
选择更高的安全级别可能对正常的访问者产生一定影响,可结合不同时期的安全防护需要灵活选择安全级别。
安全级别与WAF规则相互独立:安全级别由系统基于威胁情报库自动判断,对访问者进行拦截或挑战;而WAF规则则通过用户自定义具体规则,针对特定路径、参数或行为精准执行拦截或挑战,实现更细粒度的安全控制。
验证规则效果
安全规则创建完成后,使用curl
等工具模拟触发规则的请求,观察响应情况。例如,模拟域名example.com
正在异常访问网站资源,现为该域名添加安全规则进行防护,预期会收到403 Forbidden
响应或包含挑战页面的HTML内容,而非正常结果200
。
异常处理与优化
在规则运行过程中,可能会出现正常用户的IP或API客户端被错误地挑战或拦截,需及时进行处理。以下述场景为例:
业务处于高风险攻击场景下,已配置了安全等级为高,但是想放行内部测试的IP为 1.2.3.4 的请求。
方式一:添加白名单规则
可以通过添加WAF白名单规则,将已知IP地址加入白名单,确保关键业务流量不受影响。
在安全规则页面复制对应的规则ID。
在左侧导航栏,选择
,选择白名单规则页签,单击新增规则。配置参考如下,单击确定即可:
规则名称:填入自定义规则名,如
rule-allow-test-ip
。如果请求匹配以下规则...:匹配字段下拉选择
客户端IP
,运算符下拉选择
,输入框填入等于其中任意一个
1.2.3.4
。规则:选择部分规则种类或ID。
规则种类:下拉选择安全等级。
规则ID(自定义规则、频次控制规则、扫描防护规则等):填入a步骤中的规则ID。
方式二:调整安全规则优先级
由于ESA按照顺序依次执行,可新建一条安全规则用于调低测试请求的防护安全级别,并将其执行优先级调整至拦截规则之前,确保其优先匹配和生效。
在左侧导航栏,选择
,单击新增规则。配置参考如下,单击确定:在如果请求匹配以下规则...中精确匹配被误伤的IP地址、User-Agent或请求路径,然后则执行…中选择安全级别为基本关闭或彻底关闭(企业版可用),以跳过安全检查。
规则名称:填入自定义规则名,如
rule-allow-test-ip
。传入请求类型:默认选择自定义规则,匹配字段下拉选择
客户端IP
,运算符下拉选择
,输入框填入等于其中任意一个
1.2.3.4
。安全级别:选择基本关闭或彻底关闭(企业版可用),以跳过安全检查。
在安全规则界面拖动图标
调整规则的执行顺序,将
rule-allow-test-ip
规则的顺序置于原规则之前即可。
不同套餐的支持情况
安全规则 | 基础版 | 标准版 | 高级版 | 企业版 |
支持配置的安全规则数量 | 10条 | 25条 | 50条 | 125条 |
相关文档
规则相关的功能,在生效优先级、可重入性、生效颗粒度上存在差异,详细情况请查看规则相关功能的特性说明。