一年前,我们发布了首份应用安全报告。Security Week 2023 期间,我们将介绍关于缓解流量、机器人和 API 流量以及帐户接管攻击的最新洞见和发展趋势。
Cloudflare 在过去一年取得显著增长。 2023 年 2 月,Netcraft 指出,在 2023 年初,Cloudflare 已经成为排名前百万网站中最常用的 Web 服务器供应商,并继续增长,市场份额达到 21.71%,高于 2022 年 2 月的 19.4%。
由于这种持续增长,目前 Cloudflare 平均每秒处理 4500 万个 HTTP 请求(高于去年的 3200 万),峰值时每秒处理超过 6100 万个 HTTP 请求。Cloudflare 网络处理的 DNS 查询也在不断增长,达到 2460 万次/秒。所有这些流量让我们对互联网趋势有了前所未有的了解。
在深入讨论之前,需要定义我们的术语。
定义
本文中,我们将使用如下术语:
缓解流量:由 Cloudflare 平台应用了“终止”操作的眼球请求。包括如下操作:
BLOCK
,CHALLENGE
,JS_CHALLENGE
和MANAGED_CHALLENGE
。这并不包括应用以下操作的请求:LOG
、SKIP
、ALLOW
。与去年相比,现在我们不包括由我们的 DDoS 缓解系统应用了CONNECTION_CLOSE
和FORCE_CONNECTION_CLOSE
操作的请求,因为在技术上只会降低连接初始化的速度。它们在请求中所占比例也相对较小。此外,我们改进了关于CHALLENGE
类型操作的计算,以确保只有未解决的质询被计入缓解。有关操作的详细说明请参阅我们的开发人员文档。机器人流量/自动化流量: 被 Cloudflare Bot Management 系统确认由机器人产生的任何 HTTP* 请求。包括机器人分数在1-29(含)的请求。与去年的报告相比,这一点没有改变。
API 流量: 任何响应内容类型为
XML
或JSON
的 HTTP* 请求。在响应内容类型不可用的情况下,例如对于缓解请求,则使用等效的Accept
内容类型(由用户代理指定)。在后一种情况下,API 流量不会被完全计算在内,但它仍然为获得洞察的目的提供了一个很好的代表。
除非另有说明,本文评估的时间范围是 2022 年 3 月到 2023 年 2 月(含)的 12 个月期间。
最后,请注意,这些数据仅根据在 Cloudflare 网络上观察到的流量计算,不一定代表整个互联网的 HTTP 流量模式。
*文中的 HTTP 流量包括 HTTP 和 HTTPS。
全球流量洞察
平均每天有 6% 的 HTTP 请求被缓解
从 Cloudflare 网络代理的所有 HTTP 请求来看,我们发现被缓解的请求占比下降到 6%,与去年低两个百分点。2023 年到目前为止,我们看到缓解的请求占比进一步下降到 4-5% 之间。下图中可见的大峰值,比如 6 月和 10 月出现的峰值,通常与 Cloudflare 缓解的大规模 DDoS 攻击有关。值得注意的是,尽管缓解流量的百分比随着时间的推移而下降,但缓解的总请求量一直相对稳定,如下面的第二个图表所示,这表明全球总体干净流量有所增加,而不是恶意流量的绝对减少。
81% 的缓解 HTTP 请求是被直接 BLOCK
的, 其余则包含各种 CHALLENGE
类型的操作。
DDoS 缓解占所有缓解流量的 50% 以上。
Cloudflare 提供各种安全功能,用户可以通过配置这些功能来保障应用安全。不出所料,DDoS 缓解仍然是缓解第 7 层(应用层) HTTP 请求的最大贡献者。就在上月(2023 年 2 月), 我们报告了按每秒 HTTP 请求数计算最大的已知被缓解 DDoS 攻击 (该攻击在上述图表中不可见,因为这些图表是按每天汇总的,而该攻击仅持续了大约 5 分钟)。
然而,与去年相比,Cloudflare WAF 缓解请求显著增长,现在占缓解请求的近 41%。部分原因在于我们的 WAF 技术进步,使其能够检测和阻止更大范围的攻击。
表格形式供参考:
.tg {border-collapse:collapse;border-color:#ccc;border-spacing:0;} .tg td{background-color:#fff;border-color:#ccc;border-style:solid;border-width:1px;color:#333; font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;} .tg th{background-color:#f0f0f0;border-color:#ccc;border-style:solid;border-width:1px;color:#333; font-family:Arial, sans-serif;font-size:14px;font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;} .tg .tg-x5ou{background-color:#F3F3F3;font-weight:bold;text-align:center;vertical-align:top} .tg .tg-0lax{text-align:left;vertical-align:top}
Source | Percentage % |
---|---|
DDoS Mitigation | 52% |
WAF | 41% |
IP reputation | 4% |
Access Rules | 2% |
Other | 1% |
来源
百分比 %
DDoS 缓解
52%
WAF
41%
Source | Percentage % (last 12 months) |
---|---|
HTTP Anomaly | 30% |
Directory Traversal | 16% |
SQLi | 14% |
File Inclusion | 12% |
Software Specific | 10% |
XSS | 9% |
Broken Authentication | 3% |
Command Injection | 3% |
Common Attack | 1% |
CVE | 1% |
IP 信誉
4%
访问规则
2%
其他
1%
请注意,与去年不同的是,上表中的产品分组方法与我们的市场营销资料和 2022 Radar 年度回顾中使用的分组一致。这主要影响我们的 WAF 产品,其中包括 WAF 自定义规则、WAF 速率限制规则和 WAF 管理规则。在去年的报告中,这三个功能合计占缓解请求的 31%。
要了解 WAF 缓解请求随时间的增长,我们可以再深入一个层级,其中可以明显看到, Cloudflare 客户越来越依赖 WAF 自定义规则(过去称为“防火墙规则”),以缓解恶意流量或实施业务逻辑阻止。下图中的橙色线条 (防火墙规则) 显示随着时间的逐步增长,而蓝色线条 (L7 DDoS) 呈现明显的下降趋势。
HTTP 异常是通过 WAF 缓解的最常见第 7 层攻击手段
2023 年 3 月,HTTP 异常占比与去年同期相比下降了近 25 个百分点。HTTP 异常的例子包括格式不规范的方法名,头部的空字节字符,非标准端口或 POST
请求的内容长度为零。这可以归因于匹配 HTTP 异常特征的僵尸网络缓慢改变其流量模式。
从图中移除 HTTP 异常线条,可以看到在 2023 年初,攻击手段分布看起来更加均衡。
表格形式供参考(前 10 类别)
.tg {border-collapse:collapse;border-color:#ccc;border-spacing:0;} .tg td{background-color:#fff;border-color:#ccc;border-style:solid;border-width:1px;color:#333; font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;} .tg th{background-color:#f0f0f0;border-color:#ccc;border-style:solid;border-width:1px;color:#333; font-family:Arial, sans-serif;font-size:14px;font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;} .tg .tg-x5ou{background-color:#F3F3F3;font-weight:bold;text-align:center;vertical-align:top} .tg .tg-0lax{text-align:left;vertical-align:top}
来源
百分比(过去 12 个月)
HTTP 异常
30%
目录遍历
16%
SQLi
14%
文件包含
12%
软件特定
10%
XSS
9%
失效身份验证
3%
命令注入
3%
常见攻击
1%
CVE
1%
特别值得注意的是 2023 年 2 月底出现的橙色线峰值(CVE 类别)。这个峰值与我们的两条 WAF 托管规则的突然增加有关:
Drupal - Anomaly:Header:X-Forwarded-For (id:
d6f6d394cb01400284cfb7971e7aed1e
)Drupal - Anomaly:Header:X-Forwarded-Host (id:
d9aeff22f1024655937e5b033a61fbc5
)
这两条规则是根据 CVE-2018-14774 标记的, 这表明了,即使是相对较老的已知漏洞,仍然经常被用于对潜在的未修补软件进行攻击。
机器人流量洞察
Cloudflare’s Bot Management 在过去 12 个月内获得了重大投资。我们推出了一些新功能,例如如可配置的启发式方法、强化的 JavaScript 检测、自动机器学习模型更新,以及 Turnstile —— Cloudflare 的免费 CAPTCHA 替代品,改善了我们每天的人类和机器人流量分类工作。
我们对分类输出的信心非常充足。如果我们绘制出 2023 年 2 月最后一周流量的机器人分数图,可以看到非常清晰的分布,大多请求要不分类为绝对机器人(低于 30),要么为绝对人类(高于 80),大部分请求实际得分低于 2 或高于 95。
30% 的 HTTP 流量是自动化的。
在 2023 年 2 月的最后一周,30% 的 Cloudflare HTTP 流量被分类为自动化流量,相当于 Cloudflare 网络上每秒约 1300 万个 HTTP 请求。这比去年同期下降了 8 个百分点。
如果仅看机器人流量,我们发现,仅有 8% 是由经过验证的机器人产生的,占总流量的 2%。Cloudflare 维护一个已知的善意(经验证)机器人列表,以便客户轻松区分行为良好的机器人提供商(如 Google 和 Facebook)和可能不太知名或不受欢迎的机器人。目前列表中有 171 个机器人。
16% 的未经验证机器人 HTTP 流量被缓解
未经验证的机器人网络流量通常包括不断在 Web 上寻找利用机会的漏洞扫描器,因此,近六分之一的此类流量得到了缓解,因为一些客户更喜欢限制此类工具可能获得的洞察。
尽管像 googlebot 和 bingbot 这样的经验证机器人通常被认为是有益的,大多数客户也希望允许它们,但我们也看到一小部分(1.5%)经验证机器人流量被缓解。这是因为一些站点管理员不希望站点的某些部分被爬取,而客户通常依赖 WAF 自定义规则来强制执行这个业务逻辑。
客户使用的最常见操作是 BLOCK
这些请求 (13%), 但我们也看到一些客户配置 CHALLENGE
操作 (3%) ,以确保任何是人类的误报仍可在必要时完成请求。
类似地,同样值得注意的是,所有缓解流量中有近 80% 被归类为机器人,如下图所示。有人可能指出,20% 的缓解流量被归类为人类流量仍然非常高,但大多数人类流量的缓解是由 WAF 自定义规则生成的,常常是由于客户在其应用程序上实施国家级别或其他相关法律的阻止。这种情况很常见,例如,设在美国的公司出于 GDPR 合规性的原因,阻止欧洲用户的访问。
API 流量洞察
55% 的动态(不可缓存) 流量与 API 有关
例如我们的 Bot Management 解决方案,我们也在大量投资于保护 API 端点的工具。这是因为大量 HTTP 流量与 API 相关。事实上,如果仅计算到达源且不可缓存的流量,则根据之前声明的定义,其中 55% 的流量是与 API 有关的。这与去年的报告使用的方法相同,55% 的数字与去年相比没有变化。
如果只考虑缓存的 HTTP 请求(缓存状态为 HIT
、 UPDATING
、REVALIDATED
和 EXPIRED
),我们发现,也许有点出人意料,接近 7% 与 API 相关。现代的 API 端点实现和代理系统,包括我们自己的 API 网关/缓存功能集,实际上允许非常灵活的缓存逻辑,既允许自定义键缓存,也允许快速缓存重新验证 (快至每秒一次 ,以便开发人员减少后端端点的负载。
如果将可缓存的资源和其他请求(例如重定向)计算在总数中,则这个数字会减少,但仍然占流量的 25%。下图中,我们提供了有关 API 流量的两种视角:
黄线:API 流量占所有 HTTP 请求的百分比。这将把重定向、缓存资源和所有其他 HTTP 请求包括在总数中;
蓝线:API 流量占动态流量(仅返回 HTTP 200 OK 响应码)的百分比;
65% 的全球 API 流量是由浏览器生成的
如今,越来越多 Web 应用是以“API 优先”方式构建的。这意味着初始 HTML 页面加载只提供了框架布局,大多数动态组件和数据是通过单独的 API 调用加载的 (例如,通过 AJAX)。Cloudflare 自己的仪表盘就是这样。在分析 API 流量的机器人分数时,可以看到这种不断增长的实现范式。下图可见,大量的 API 流量是由我们的系统分类为“人类”的用户驱动浏览器产生的,其中近三分之二的流量集中在“人类”范围的高端。
计算缓解 API 流量是一个挑战,因为我们并不将请求转发到源服务器,因此不能依赖于响应内容类型。按照去年使用的相同计算方法,略高于 2% 的 API 流量被缓解,低于去年的 10.2%。
HTTP 异常超过了 SQLi,成为 API 端点上最常见的攻击手段
与去年相比,HTTP 异常现在超过了 SQLi,成为针对 API 端点的最流行攻击手段(注意,图表开始处,即去年的报告发布时,蓝色线更高)。针对 API 流量的攻击手段在全年内并不一致,与全球 HTTP 流量相比变化更大。例如,请注意 2023 年初的文件包含攻击尝试出现激增。
探索帐户接管攻击
自 2021 年 3 月以来,Cloudflare 在其 WAF 中提供泄露凭据检查功能。当检测到身份验证请求带有已知泄露的用户名/密码对时,客户就会得到通知(通过 HTTP 请求标头)。对于检测执行帐户接管暴力攻击的僵尸网络而言,这往往是一个非常有效的信号。
客户还使用这个信号,对有效的用户名/密码对登录尝试,发出双因素身份验证、密码重置,或者在某些情况下,对用户不是凭据合法所有者的情况添加日志记录。
暴力帐户接管攻击越来越多
从过去 12 个月的匹配请求趋势来看,2022 年下半年开始出现明显的增长,这表明针对登录端点的欺诈活动越来越多。在大型暴力破解攻击中,我们观察到匹配泄露凭据的 HTTP 请求速率达到每分钟 12k 以上。
我们的泄露凭据检查功能具有匹配对以下系统身份验证请求的规则:
Drupal
Ghost
Joomla
Magento
Plone
WordPress
Microsoft Exchange
匹配常见身份验证端点格式的通用规则
这使我们能够比较来自恶意行为者的活动,其通常采取僵尸网络的形式,试图“入侵”潜在泄露帐户。
Microsoft Exchange 受到的攻击超过 WordPress
主要由于其热门程度,您可能会预期 WordPress 是风险最大和/或遭遇最多暴力帐户接管流量的应用。然而,从上述受支持系统的规则匹配情况来看,我们发现,除了我们的通用特征,Microsoft Exchange 特征是最频繁的匹配。
大多数遭受暴力攻击的应用都是高价值资产,根据我们反应这一趋势的数据,Exchange 账户是最有可能被攻击的目标。
从泄露凭据匹配流量的国别来看,美国遥遥领先。鉴于中国的网络规模,中国没有出现在前列可能值得注意。唯一的例外是:乌克兰在 2022 年上半年俄乌冲突爆发前领先——下图中的黄线。
展望未来
鉴于 Cloudflare 承载的网络流量,我们观察到广泛的攻击类型。从 HTTP 异常、SQL 注入攻击、跨站脚本攻击(XSS)到帐户接管尝试和恶意机器人,威胁形势不断变化。因此,任何在线运营的企业都必须投资于可见性、检测和缓解技术,以确保其应用程序——以及更重要的是——其最终用户数据的安全。
我们希望本报告的结果能引起您的兴趣,至少可以让您了解互联网应用安全的状态。网络上有大量恶意行为者,而且没有迹象表明互联网安全将变得更加容易。
我们已经计划更新这份报告,以包含来自我们产品组合的更多数据和洞察。欢迎关注 Cloudflare Radar,以获得更频繁的应用安全报告和见解。