博客

解决 OWASP 十大 API 漏洞: API 安全需要机器人管理

Jim Downey 缩略图
吉姆·唐尼
2024 年 2 月 29 日发布

企业网络安全团队已将重点转向API 安全,这是正确的。 在数字经济中,API 是企业的前门,是物联网设备、网络和移动应用程序以及业务合作伙伴流程的入口点。 不幸的是,API 也是犯罪分子的大门,其中许多人依靠机器人进行攻击。 因此,对于安全团队来说,保护 API 并减轻用于攻击 API 的机器人的威胁至关重要。

查看OWASP十大 API 安全漏洞可以清楚地看出机器人对于 API 攻击的核心作用。 十大 API 漏洞中有三个与机器人有直接且明显的关联。

  • 身份验证失败: 机器人通过暴力破解、字典和撞库攻击攻击来破解身份验证,导致账户接管、欺诈、财务损失和客户愤怒。
  • 不受限制的资源消耗: 机器人利用不受限制的资源消耗,耗尽 API 的内存和处理能力。 当机器人瞄准为交互式applications(即人类使用的网络和移动applications)而设计的 API 时,对性能的影响可能是灾难性的。
  • 不受限制地访问敏感业务流程: 过度访问某些业务流程可能会损害业务。 未经授权的经销商可以买断库存商品,然后以更高的价格转售。 垃圾邮件发送者可以利用评论/帖子流。 攻击者可以使用预订系统预订所有可用的时间段。 在每种情况下,造成损害的都是机器人。 还记得泰勒·斯威夫特演唱会门票很快就销售一空,导致 Ticketmaster 应用程序崩溃并让粉丝们感到沮丧吗? 正是机器人引发了这场骚动

OWASP API 十大漏洞中的其他七项——安全配置错误、库存管理不善、授权中断等漏洞——与机器人的关系并不那么明显,但攻击者依靠机器人来有效发现并快速利用这些漏洞。 在他的《Hacking API》一书中,Corey J. Ball 解释了如何使用几种自动化工具进行 API 发现(OWASP ZAP、Gobuster、Kiterunner)和模糊测试(Postman、Wfuzz 和 Burp Suite)。 利用这些工具,攻击者向 API 发送数千个请求来找出漏洞。 为了了解这种监视行为并降低其成功的可能性,需要一个有效的机器人缓解系统。

机器人不会以相同的方式影响所有 API。 那些机器对机器且通过自动化流程(通常是内部流程或合作伙伴的流程)访问的 API 通常受到相互 TLS的保护,在这种情况下,身份验证中断的风险很低,并且可以对每个经过身份验证的客户端实施速率限制。 相反,那些只期望来自交互式应用程序(即人类手中的网络和移动应用程序)的流量的 API 最容易受到机器人的攻击。

对于预期由人发起流量的 API,防御机器人变得越来越困难。 开源使得通过头部指纹识别来避免检测变得轻而易举,并且广泛可用的服务可供机器人操作员通过包含数千万个住宅 IP 地址的网络来击败 CAPTCHA代理请求。 由于标头分析、IP 拒绝列表和 CAPTCHA 等旧技术不再有效,寻求缓解机器人威胁的应用安全团队必须依靠丰富的客户端信号收集、利用 JavaScript 和移动 SDK 以及复杂的机器学习来区分攻击工具和机器人行为。

您所在组织的哪些 API 容易受到机器人的攻击,影响的可能性和成本是多少,以及如何设计安全控制以确保针对机器人的必要保护? 这些都是威胁建模中需要解决的好问题。 要了解有关机器人对业务的影响的更多信息,请参阅我们关于该主题的 F5白皮书或注册免费咨询