什么是 OWASP API 10 大安全风险?

开放式 Web 应用程序安全项目 (OWASP) 汇总了应用程序编程接口 (API) 的最大安全风险列表。

学习目标

阅读本文后,您将能够:

  • 总结 OWASP API 十大安全风险
  • 将此列表与 OWASP Top 10 进行比较

相关内容


想要继续学习吗?

订阅 TheNET,这是 Cloudflare 每月对互联网上最流行见解的总结!

参阅 Cloudflare 的隐私政策,了解我们如何收集和处理您的个人数据。

复制文章链接

什么是 OWASP API 10 大安全风险?

开放式 Web 应用程序安全项目 (OWASP) 是一个非营利组织,其目标是促进 Web 应用程序安全性。OWASP 为任何想要构建安全 Web 应用程序的人提供许多免费资源。

他们最广泛引用的资源之一是 OWASP Top 10,它列出了 Web 应用程序的十大安全问题。

OWASP 还为应用程序编程接口 (API) 维护了一个单独的类似列表,API 是大多数 Web 应用程序的关键构建块。此列表是“OWASP API 十大安全风险”。

截至 2019 年*,OWASP API 十大安全风险包括:

  1. 失效的对象级授权:这是指在请求中操纵对象标识符以获得对敏感数据的未经授权的访问。攻击者仅通过更改标识符即可访问他们不应访问的对象(数据)。
  2. 失效的用户身份验证:如果身份验证实施不正确,攻击者可能能够冒充 API 用户,并访问机密数据。
  3. 过度的数据暴露:许多 API 在暴露数据方面犯错,并依靠 API 用户正确过滤数据。这可能允许未经授权的人查看数据。
  4. 缺乏资源和速率限制:默认情况下,许多 API 不限制它们在给定时间可以接收的请求的数量或大小。这使他们容易受到拒绝服务 (DoS) 攻击
  5. 失效的功能级授权:这种风险与授权有关。API 用户可能被授权做太多事情,导致数据暴露。
  6. 批量分配:API 自动将用户输入应用至多个属性。例如,攻击者可以利用此漏洞将自己更改为管理员,同时更新其用户配置文件的其他一些无害属性。
  7. 安全配置错误:这涵盖了设置 API 时的各种错误,包括错误配置的 HTTP 标头、不必要的 HTTP 方法,以及 OWASP 所说的“包含敏感信息的详细错误消息”。
  8. 注入:在注入攻击中,攻击者向 API 发送专门的命令,诱骗其泄露数据或执行其他一些意外操作。了解 SQL 注入
  9. 资产管理不当:当没有跟踪当前的生产 API 和已弃用的 API 时,就会发生这种情况,从而导致影子 API。API 很容易受到这种风险的影响,因为它们往往提供太多端点
  10. 日志记录和监控不足:OWASP 指出,研究表明通常需要 200 多天才能检测到违规行为。详细的事件记录和严密监控可以使 API 开发人员更早地检测和阻止违规行为。

*截至 2021 年 12 月,该列表自 2019 年以来未更新。

想要更深入地了解这 10 个安全风险,请参阅 OWASP 的官方网页

OWASP Top 10 列表(此处为完整列表)和 OWASP API 十大安全风险列表之间存在一些交叉。例如,注入、失效的身份验证以及日志记录和监控不足都出现在两者中。但是,与 Web 应用程序相比,API 存在的风险略有不同。开发人员应该同时考虑这两个列表。

Cloudflare API Shield 如何帮助应对这 10 种安全风险?

Cloudflare API Shield 使用分层 API 防御来防御各种针对 API 的攻击。其中的功能包括数据丢失防护(针对 1 号和 3 号风险)、mutual TLS(针对 2 号风险)和速率限制(针对 4 号风险)。请参阅 Cloudflare API Gateway 页面上的完整功能列表。

要了解有关 API 安全的更多信息,请阅读什么是 API 安全?。或进一步了解 API 安全解决方案