本文来自嘶吼专业版,作者/布加迪。
在数据泄露上,用户对API漏洞以及API安全事件可能产生的影响常常缺乏了解,因为API通常不是用户最终直接交互的技术,并且会在某种程度上隐藏起来,用户看不到它们的日常活动。
对于许多数据泄露来说,薄弱环节往往是API和围绕这些API的不适当的安全机制。
API组件通常出现在攻击的第二阶段
比如说,最近的MoveIT黑客活动在攻击的第二阶段有一个API组件,涉及对MoveIT API的反序列化滥用。这导致成千上万家公司被入侵,但API几乎只字未提,只以为SQL注入是导致数据泄露的主要原因。还有Twitter、Peloton、Optus和Medi Bank等其他同样引人注目的数据泄露事件都是由API安全事件造成的。
事实上,仅仅基于公开披露的内容,我们无法真正了解API安全问题的真实程度,但API安全事件在升级。
第二届年度API安全脱节研究表明,报告API安全事件的企业数量从2022年的76%上升到2023年的78%。由于方兴未艾的数字化转型趋势,加上API成为促进许多曾经不同的系统集成的粘合剂,API安全事件频发,以至于不能再忽视它们。
API安全是组织安全策略中的关键支柱
API安全是防止和应对源自API层面的攻击的一种实践,它是任何组织的整体安全策略中的一个关键支柱。API不仅使用户能够与应用程序交互,还便于其底层内部服务之间相互联系,为许多服务传输或存储敏感数据。因此,不安全的API为攻击者提供了入口点,会严重危及应用程序的安全状态。
最常见的API安全漏洞发生在开发过程中,这就是为什么“左移”测试理念是API安全的核心,因为它将API测试推向了软件开发的早期阶段。通过尽早测试且经常测试API漏洞,项目就可以减少代码缺陷的数量,并提高代码的质量。以下是几个会造成API安全漏洞的
•当请求可以访问或修改请求者不应该访问的数据时,如通过篡改请求中的标识符来访问另一个用户的帐户,就会发生对象层授权出问题的情况。
•如果没有实施最小权限原则,通常是由于访问控制策略过于复杂,就会发生函数层授权出问题的情况。它导致攻击者能够执行敏感命令或访问面向特权帐户的端点。
•如果身份验证过程被破坏,就会发生用户身份验证出问题的情况;攻击者可以一次性冒充甚至永久性冒充另一个用户。
•数据暴露过多。API对请求的响应通常返回过多的不必要数据,尽管数据可能不会显示给用户,但它可能很容易受到检查,可能导致敏感信息的潜在暴露。
•资产管理不当。API的开发和部署通常是快节奏的,在组织急于发布新的或更新的API时,通常会忽略完整的说明文档。这将导致数据暴露和幽灵端点,以及对旧的API如何工作缺乏了解。
•缺乏资源和利率限制。API端点通常对互联网开放,如果对请求的数量或大小没有限制,就很容易受到DoS和蛮力攻击。
•注入漏洞。如果没有正确解析和验证请求数据,攻击者可能会发起命令或SQL注入攻击来访问它,或者在未经授权的情况下执行恶意命令。
不幸的是,许多企业仍然没有重视API安全,它们认为,从API安全的角度来看,Web应用防火墙(WAF)已经绰绰有余了。
然而研究表明,WAF是主要的攻击途径之一。调查对象提到的主要原因或主要攻击途径是Web应用防火墙、网络防火墙和API网关。
WAF擅长过滤容易识别的威胁,但在检测不具备典型网络安全威胁属性的漏洞方面就不那么可靠了。从本质上讲,WAF缺乏威胁的真实性和背景。
缺乏可见性和API清单
许多企业还缺乏可见性,也没有完整的API清单,或者不知道哪些API返回敏感数据。许多公司常常不对其API进行实时或持续的测试,这意味着一周前发现安全的代码现在可能还存在漏洞。那么,企业应该做些什么来更好地保护其API呢?
企业应确保针对API库存拥有良好的加密、验证和可见性,定期审计、记录和保持警惕也很重要,这包括持续监控API,同时主动保护其环境,远离API安全漏洞、错误配置和设计缺陷的影响。
2023年OWASP Top 10
OWASP(开放Web应用程序安全项目)根据这些漏洞的可利用性和影响进行排名,列出了10个最严重的漏洞。OWAS Top 10刚发布最新的2023年版,企业应积极检查其API系统,以确保自己防住了所有的OWASP漏洞,可以使用静态验证和行为验证来评估每个类别的漏洞。
总结
在我们的现代基础设施中,API变得愈加重要。开发人员知道敏捷性是企业成长和生存的关键,而API又是获得实现这一目标所需的速度和灵活性的关键。因此,确保API安全至关重要。
参考及来源:https://betanews.com/2023/11/16/apis-the-hidden-cause-of-data-breaches/