2022 年底,T-Mobile 因 API 漏洞遭到利用而发生了一起数据泄露事件,攻击者访问了 3700 万客户账户数据。此次数据泄露以及其他影响 T-Mobile 的事件,导致联邦通信委员会 (FCC) 对该公司处以 3150 万美元的罚款。许多其他公司也遭受了 API 攻击,这可能会导致攻击者通过帐户接管和信用卡信息窃取来进行欺诈。
应用程序编程接口 (API) 在软件开发中的应用正在快速增长。这种趋势有助于加速创新,但也给企业带来了新的风险。
API 日益成为重要工具,用于简化新特性、功能和数据源与各种软件(包括用于生成式 AI 的大型语言模型)的集成。API 协作平台提供商 Postman 的一份报告显示,2024 年,74% 的受访者表示企业采用 API 优先方法,而前一年为 66%。Gartner 报告称,超过 80% 的受访者表示在企业内部使用 API,而略高于 70% 的受访者也使用第三方 API,例如 SaaS 供应商提供的 API。
遗憾的是,使用 API 将软件与新功能和数据源连接,这种做法也会扩大企业的攻击面。API 一直遭受各种各样的攻击,包括零日漏洞、分布式拒绝服务 (DDoS) 攻击、身份验证滥用等等。
最重要的 API 风险有哪些?企业如何化解这些风险,从而继续最大限度地发挥 API 的优势?
对于攻击者来说,API 是主要目标。许多攻击者正确认识到一点,企业通常会在没有实施足够安全措施的情况下快速采用新的 API。
这些攻击者正在寻找多种方法来利用 API 漏洞。许多攻击者利用了授权和身份验证漏洞,此类漏洞是 API 安全风险的主要来源。与 Web 和移动应用相比,这些风险对 API 来说甚至更为严重:API 可能携带敏感和动态信息,这些信息无法像 Web 或移动应用那样进行硬编码或以明文形式保存。如果 API 缺乏身份验证或授权策略过于宽松,则容易遭受失效的对象级授权 (BOLA) 攻击,从而导致未经授权的数据访问。
其他攻击者可能会发起 DDoS 攻击,向没有设置请求限制的 API 发送大量请求。当攻击者成功实施 BOLA、DDoS 或其他攻击后,他们可能能够访问经由 API 传输的一系列用户数据,例如信用卡信息、医疗信息,或其他个人可识别信息 (PII)。
企业通常使用传统的 Web 应用防火墙 (WAF) 规则来保护 API 流量。然而,这些解决方案所用的“消极”安全模型(仅阻止已知威胁)不足以拦截许多针对特定 API 的现代化攻击。同时,太多企业针对应用和 API 安全实施了零散的单点解决方案,这不仅造成了安全覆盖漏洞,而且显著增加了管理的复杂性。
要消除漏洞和阻止各种 API 特定攻击,需要采取多方位的企业 API 安全策略。团队需要实施最佳实践,以更好地了解整个企业内正在使用哪些 API,然后精确找到漏洞、阻止恶意流量、保护数据并简化管理。
提高可见性:如果不知道某些东西的存在,则很难加以防护。然而,许多 IT 团队和安全团队并没有对整个企业内使用的 API 进行全面的核算或了解。根据最近对 API 调用和 HTTP 请求的一项分析,企业拥有的面向公众的 API 端点数量比他们意识到的多 33%。API 发现是保护这些必备组件的重要第一步。盘点内部和第三方 API 可以帮助消除“影子 API”的使用,并开始制定统一的 API 安全策略。
同时,API 发现可以通过挖掘预先存在的、预建功能来帮助提高开发效率。构建 API 目录将让开发人员能够轻松找到并整合其所需功能,以及避免为 API 已涵盖的功能编写代码。
利用机器学习:API 发现不必是繁琐的手动流程。使用机器学习的服务可以扫描那些原本可能未被发现的 API 流量。
机器学习还可以改善 API 保护。特别是,企业可以使用基于机器学习的服务,检测那些可能只是随着时间的推移而缓慢执行的攻击。此类攻击旨在规避那些识别容量耗尽技术的检测工具。
识别 API 风险态势: