2023年OWASP十大API安全风险排行榜

安全
确保 API 的安全需要采用整体方法,涵盖从身份验证和授权到访问控制和资源管理的所有内容。

随着越来越多的组织依赖 Web 应用程序和连接服务提供的自动化和规模,应用程序编程接口 (API) 安全性已变得势在必行。仅去年一年,针对客户 API 的独特攻击者就增长了 400%,这证明组织必须采取主动方法来保护这些日益有价值的服务。

但考虑到 API 技术的快速发展和威胁数量的不断增加,了解从何处以及如何开始保护 API 可能会令人难以承受。幸运的是,像开放 Web 应用程序安全项目 (OWASP) 这样的组织一直在努力识别企业应优先考虑的最常见和最危险的 API 安全风险。

OWASP 前 10 名是什么?

开放 Web 应用程序安全项目 (OWASP) Top 10因其全面性和准确性而受到认可,是一份详细列表,每一到两年更新一次,突出显示企业应了解的关键 Web 应用程序安全风险。OWASP 是一个由数万名贡献者组成的非营利社区,致力于通过创建框架、工具和教育计划等各种措施来促进软件安全。

随着时间的推移,数字威胁不断演变。因此,OWASP列表会根据API安全特定的数据趋势及时更新,有助于开发人员和安全专业人员优先考虑对策。最近,2023年,OWASP发布了需要警惕的10大API安全风险的更新列表。

从列表底部开始,这些是组织在 2023 年需要注意的OWASP Top 10API 安全风险以及可以采取的缓解这些风险的具体措施。

10. API 的不安全使用

当应用程序无法验证、过滤或清理从外部 API 接收的数据时,就会发生 API 的不安全使用。这可能会导致注入攻击或数据泄露等安全漏洞。随着组织越来越依赖第三方 API 来提供关键功能,确保安全使用对于防止攻击者利用这些集成变得更加重要。

缓解策略:

  • 在处理或存储之前验证和清理从外部 API 接收的所有数据。这有助于确保您的应用程序中仅使用有效且安全的数据。
  • 使用允许列表和严格的数据类型限制实施输入验证,以防止您的应用程序处理潜在有害的数据。
  • 使用安全的 API 网关来过滤和监控传入的 API 请求,从而针对针对您的 API 的恶意流量添加一层保护。

9、库存管理不当

库存管理不当与组织使用的 API 缺乏足够的控制有关。这可能会导致未经授权的访问和增加攻击面,从而将敏感数据暴露给恶意方。随着组织使用的 API 数量不断增加,跟踪其功能、端点和可访问性指令以维护对 API 生态系统的整体保护至关重要。

缓解策略:

  • 维护组织内所有 API 的最新清单,包括其用途、端点和访问控制。这可以帮助您识别潜在的安全漏洞并确保所有 API 都得到充分保护。
  • 定期审查和更新 API 文档,以确保其准确反映 API 的当前状态。清晰准确的文档对于开发人员和安全专业人员有效理解和保护 API 至关重要。
  • 停用未使用或已弃用的 API,以最大程度地减少攻击面。删除不必要的 API 可以降低攻击者发现和利用易受攻击端点的可能性。

8. 安全配置错误

当 API 未安全配置时,就会发生安全配置错误,从而使其面临各种安全风险。安全配置错误的示例包括使用默认凭据、未能关闭不必要的功能或忽略及时应用安全补丁。

缓解策略:

  • 在开发的早期阶段使用安全配置设置您的 API。
  • 定期审查和更新 API 配置,以确保它们持续应用最佳安全实践。
  • 使用自动化工具通过持续监控来检测和修复安全配置错误。

7. 服务器端请求伪造(SSRF)

服务器端请求伪造 (SSRF) 是一个漏洞,允许攻击者操纵服务器端请求,可能导致未经授权访问内部资源或远程执行代码。这可能会导致敏感数据暴露、关键系统中断甚至整个系统受损。

缓解策略:

  • 验证和清理服务器端请求中使用的用户提供的输入。这有助于确保您的应用程序仅处理合法请求,并降低 SSRF 攻击的风险。
  • 限制 API 可以访问的请求类型和资源。实施严格的访问控制有助于防止未经授权的操作并限制 SSRF 攻击的潜在影响。
  • 实施网络分段和防火墙规则以限制对内部系统的访问。您可以通过将敏感资源与面向公众的 API 隔离来降低 SSRF 攻击成功的可能性。

6. 不受限制地访问敏感业务流程

当 API 未能实施适当的访问控制时,就会出现对敏感业务流的不受限制的访问,从而允许未经授权的用户执行敏感操作或访问机密数据。

缓解策略:

  • 为所有 API 端点实施强大的身份验证和授权机制。
  • 应用最小权限原则,授予用户执行任务所需的最低权限。
  • 定期审核和监控API访问日志,以检测和响应潜在的安全事件。

5. 功能级别授权被破坏

功能级授权损坏本质上是指由于不安全的直接对象引用 (IDOR) 问题,普通用户可以执行应为管理员保留的任务的情况。当用户的分级权限系统不完整或出现故障时,就会发生这种情况。

缓解策略:

  • 对所有 API 端点实施严格的授权检查。
  • 使用基于角色的访问控制 (RBAC) 来管理用户权限。
  • 定期审查和更新访问控制策略。

4. 资源消耗不受限制

当攻击者利用 API 漏洞消耗过多的系统资源(例如内存、CPU 或网络带宽)时,就会发生无限制的资源消耗或拒绝服务 (DoS) 攻击。这可能会导致受影响的服务降级或完全不可用。

缓解策略:

  • 监视和限制资源使用。
  • 实施速率限制以控制来自客户端的请求数量。
  • 使用缓存来减少后端系统的负载。

3.破坏对象属性级别授权

损坏的对象属性级别授权是一种安全风险,当攻击者可以访问或修改他们不应访问的对象的属性时,就会发生这种安全风险。如果 API 在授予对象属性访问权限之前未正确验证用户权限,则可能会发生这种情况。

缓解策略:

  • 对所有对象属性实施适当的访问控制检查。
  • 在授予对对象属性的访问权限之前验证用户权限。
  • 使用基于属性的访问控制 (ABAC) 定义精细的访问规则。

2. 认证失效

当身份验证协议不够强大或执行不正确时,就会出现安全问题。这为攻击者在未被发现的情况下破坏 API 敞开了大门。身份验证弱点可以通过多种方式表现出来,包括但不限于不良的密码创建最佳实践、受损的密码存储系统以及基于令牌的身份验证框架中的漏洞。

缓解策略:

  • 实施强密码策略。
  • 使用安全密码存储方法,例如 bcrypt 或 Argon2。
  • 尽可能实施多重身份验证 (MFA)。

1. 对象级授权被破坏

由于验证数据对象访问的授权控制存在缺陷,当用户可以访问其他用户的数据时,就会出现对象级授权损坏 (BOLA) 漏洞。BOLA 漏洞通常是由不安全的编码实践引起的,例如在授予对象访问权限之前未能正确验证用户输入或检查权限。当 API 使用过于宽松的访问控制或 API 资源没有得到充分保护时,就会发生这种情况。

缓解策略:

  • 采用随机、通用唯一标识符 (UUID)。
  • 建立强大的授权协议。
  • 采用零信任安全框架。

确保API 安全

确保 API 的安全需要采用整体方法,涵盖从身份验证和授权到访问控制和资源管理的所有内容。通过采取必要的步骤来确保API 并采用最佳安全实践,可以保护应用程序和数据免受潜在攻击,同时受益于强大的 API 驱动架构的优势。

责任编辑:赵宁宁 来源: 祺印说信安
相关推荐

2023-06-09 15:52:43

2013-06-14 09:41:13

OWASPWeb应用安全风险TOP10

2009-04-10 09:06:45

福布斯硬件企业排行榜

2022-01-26 09:58:02

OWASP漏洞网络攻击

2009-01-06 14:14:06

虚拟化存储云计算

2009-04-10 08:56:42

福布斯软件企业排行榜

2009-08-11 09:27:06

2016-12-27 08:30:01

Linux服务器发行版

2011-12-15 09:48:07

2024-01-03 07:53:21

2016-10-26 10:14:25

2021-01-13 09:00:00

下载量应用通讯

2023-06-09 15:39:40

编程语言Python

2022-09-22 12:26:55

网络攻击APT

2018-01-01 08:18:18

2024-04-15 12:12:04

2010-07-21 10:46:03

电子产品

2022-06-17 12:10:07

RPA机器人流程自动化

2023-07-11 07:05:15

老人机天语手机屏幕

2009-01-20 10:27:00

点赞
收藏

51CTO技术栈公众号