近期, Imperva 发布的《2024 年 API 安全状况报告》中提到,2023 年的大部分互联网流量(71%)都是由 API 调用,通过 API 传输的大量互联网流量应该引起每一位网络安全专家的关注。

打开网易新闻 查看精彩图片

目前,尽管大部分企业已经尽最大努力采用了左移框架和 SDLC 流程,但 API 仍经常在编目、验证或审计之前就被嵌入到了业务流程中(企业在生产中平均拥有 613 个 API 端点),随着当下向客户更快、更高效地交付数字服务的压力不断增加,这一数字也在迅速扩大。

随着时间推移,API 可能会成为有风险、易受攻击的端点。

Imperva 在报告中指出,鉴于API 是访问敏感数据的直接途径,早已成为网络威胁攻击者的常见攻击载体。事实上,Marsh McLennan 网络风险分析中心的一项研究发现,与 API 相关的安全事件每年给全球企业造成的损失高达 750 亿美元。

API 调用量越高,会出现更多安全问题

值得一提的是,研究发现相比其他行业,银行业和在线零售业在 2023 年的 API 调用量最高,这两个行业都依赖大型 API 生态系统向客户提供数字服务。网络威胁攻击者使用各种”手段“攻击 API 端点,其中一个常见的攻击载体便是账户接管(ATO)。当网络威胁攻击者利用 API 身份验证流程中的安全漏洞,未经授权访问账户时,就会发动这种攻击。

2023 年,近一半(45.8%)的 ATO 攻击以 API 端点为目标,这些”企图“通常是以恶意机器人的形式通过自动化来实现(注:恶意机器人是指怀有恶意运行自动化任务的软件代理)。考虑到银行以及其他金融机构管理的客户数据信息价值,ATO 是一个非常令人担忧的业务风险。

打开网易新闻 查看精彩图片

这种攻击一旦成功,网络威胁攻击者就会立刻锁定受害者的账户,盗取敏感数据。不仅仅造成经济损失,还会增加违规风险。

为什么管理不善的 API 会带来安全威胁?

目前来看,因为没有受到合理的监管,以及缺乏足够的身份验证控制,导致每 10 个应用程序接口中就有近一个容易受到网络攻击,降低 API 的安全风险具有很大挑战,即使最成熟的安全团队也会为此感到”棘手“。其中主要的问题源于软件开发的快节奏,以及缺乏成熟的工具和流程来帮助开发人员和安全团队更好地协同工作。

Imperva 在报告中指出了影子 API、废弃 API 和未认证 API三种常见的 API 端点管理不善类型,它们会给企业带来安全风险:

影子 API:这些 API 也称为未记录或未发现的 API,它们不受监督、被遗忘和或不在安全团队的可见范围内。据 Imperva 估计,影子 API 占每个组织活动 API 集合的 4.7%。如果不对这些 API 端点进行适当的编目或管理,就会出现安全问题。

企业应该关注影子 API,它们通常可以访问到敏感信息,但没有人知道它们的存在位置或连接内容。一个影子 API 就可能导致合规违规和监管罚款,更有甚者,有动机的网络犯罪分子会滥用它来访问企业的敏感数据。

废弃的 API:废弃 API 端点是软件生命周期中的一个自然过程。因此,随着软件的快速、持续更新,被废弃的 API 并不少见。

事实上,据 Imperva 估算,已废弃的 API 平均占企业活动 API 集合的 2.6%。当端点被废弃时,支持此类端点的服务就会更新,对废弃端点的请求就会失败。但是,如果服务没有更新,API 也没有删除,端点就会因为缺乏必要的补丁和软件更新而变得脆弱。

未经验证的 API:未验证的 API 通常是由于配置错误、匆忙发布过程中的疏忽或为适应旧版本软件而放宽了严格的验证过程而引入的。这些应用程序接口平均占企业活动应用程序接口集合的 3.4%。未经身份验证的 API 的存在给企业带来了巨大的风险,因为它可能会将敏感数据或功能暴露给未经授权的用户,从而导致数据泄露或系统操纵。

打开网易新闻 查看精彩图片

为降低管理不善的 API 带来的各种安全风险,建议企业进行定期审计,以识别未监控或未经身份验证的 API 端点。此外,开发人员应定期更新和升级 API,以确保用更安全的替代品取代过时的端点。

如何最大程度降低 API 的安全风险

API 的安全风险与日俱增,严重影响了企业正常经营生产。对此,Imperva 提出了几项建议,以帮助企业改善 API 安全状况:

发现、分类和清查所有 API、端点、参数和有效载荷,使用持续发现来维护始终最新的 API 清单,并披露敏感数据的暴露情况;

识别并保护敏感和高风险 API,执行风险评估,特别是针对易受授权和身份验证漏洞以及过度数据暴露影响的 API 端点;

为 API 端点建立强大的监控系统,主动检测和分析可疑行为和访问模式;

采用 API 安全方法,将 Web 应用程序防火墙 (WAF)、API 保护、分布式拒绝服务 (DDoS) 防范和僵尸程序保护整合在一起。