API安全的最大威胁:三体攻击
对于开发人员来说,OWASP API TOP10威胁列表堪称API安全的“圣经”。2019年OWASP根据API风险分析以及安全从业人员的现场经验编制了API TOP10威胁列表,清楚地划分了不同的API攻击类型。
但是今天,OWASP API威胁列表正面临新兴威胁的挑战,攻击者的工具、技术和程序(TTP)不再遵循威胁列表中的明确定义。在最新的API攻击中,攻击者们正在组合使用多个攻击手段。
三体攻击开始流行
2022年上半年,研究人员首次监测到三体攻击(trinity,也称三位一体攻击),该攻击同时使用了OWASP列表中的三个TTP:中断的用户身份验证(API2)、过度数据泄露(API3)和不当资产管理(API9)。虽然安全分析显示这些攻击只占监测到的API攻击数量(1亿次)的一小部分,但三体攻击数量在2022年全年保持稳定,这至少证明该攻击是有成效和回报的。
三体攻击之所以强大,是因为攻击者同时使用多种攻击TTP,打出更具威胁的“组合拳”。例如,攻击者在凭据填充攻击中会同时利用中断的用户身份验证(API2)与过度数据泄露(API3),从而通过API窃取大量个人数据。
至于不当资产管理(API9),一个很好的例子是影子API(那些启动后被遗忘或忽视,实际上不可见的API)。此类API通常容易受到攻击,因为它们不在安全团队的雷达上。攻击者可以在发起撞库攻击之前,使用已知的API模式轻松发现它们。
三体攻击对于很多企业来说都是一个棘手的难题,因为这些企业缺乏攻击面的可见性,无法清点他们的API并保持资产列表的更新,也不会监控那些貌似合法的海量攻击请求,因为这些企业的API安全系统通常不会使用基于行为的分析进行监视。
如何防御三体攻击
企业的API基础设施随着时间的推移而快速增长,因此很多企业开始使用并依赖监控和检测Web应用程序(如Web应用程序防火墙(WAF))的安全解决方案。这些解决方案使用基于签名的警报机制,因此无法检测和阻止三体攻击。另外一些企业依赖bot检测工具,但这些工具使用JavaScript来确定和阻止攻击。RESTful API使用JSON或XML,而不是JavaScript,这意味着此类API不能被bot软件监控。
三位一体攻击通常有一个bot组件,能够在目标基础设施中自动执行快速枚举。由于WAF对从API发出合法请求的大量攻击视而不见,而bot解决方案无法读取API有效负载,二者都无法有效检测三体攻击。企业对bot安全和API安全之间的关系往往缺乏理解,而这两者通常被安全供应商说成是两个单独的问题。
这种人为的“分治”正中攻击者的下怀,API安全方案必须与bot检测和缓解方案结合才能有效防御三体攻击。
API安全游戏规则改变者
三位一体攻击表明,攻击者越来越擅长分析每个API的工作方式,这是API安全风险的重大升级。目前,许多三体攻击都没有被发现,也没有有效的防御手段,企业必须改变过去的API安全策略和方法。
只有覆盖整个API安全生命周期,企业才有可能保护其API防御类似三体攻击的新兴威胁。从API开发阶段的安全测试,到将API作为使用运行时清单进行跟踪和管理的生态系统的一部分进行管理,再到寻找攻击模式的主动防御,都需要基于全生命周期的方法。