《F5:API安全最佳实践-API 防护的关键考虑因素白皮书(15页).pdf》由会员分享,可在线阅读,更多相关《F5:API安全最佳实践-API 防护的关键考虑因素白皮书(15页).pdf(15页珍藏版)》请在三个皮匠报告上搜索。
1、API 安全最佳实践:API 防护的关键考虑因素成功的 API 安全需要关注多个方面。引言应用编程接口(API)旨在简化数字生态系统彼此之间的通信和交互方式。API 本质上能够降低多个不同系统连接的复杂性,帮助开发人员快速轻松地将第三方内容或服务集成到其应用中,自动执行日常任务,并提高在线购物、一站式行程规划及其他数字服务的便捷性。在这个日益互联的世界中,API 已经从帮助开发人员借助已有能力快速实现新功能的工具,演变成为了数字经济的重要组成部分。随着现代应用的不断演进,它们越来越依赖第三方 API 来架起应用现代化改造的桥梁。API 现已成为更完整、更便捷、更强大的数字体验的可靠基石。API
2、 作为应用开发的基础构建模块的广泛使用,催生出一系列基础架构和部署场景,也带来了高度分散的架构。然而,对 API 的日益依赖也显著扩大了入侵、滥用及欺诈的风险面,给现有的安全工具带来了不小的挑战。API 安全最佳实践:API 防护的关键考虑因素2在去中心化的分布式架构中保护 API 所面临的挑战因为 API 支持应用之间快速建立连接并可轻松集成新内容和服务,所以它们已经成为当今数字经济的基础。API 是向现有数字产品添加特性的最快速、最高效的方法之一。利用 API 可以实现轻松地将新的服务、数据和功能(如数字地图服务或在线零售购物车)添加到现有应用中。因此,API 对于实现传统应用的现代化和提
3、高 Web 服务开发的速度和效率而言不可或缺。随着快速、敏捷、无缝的数字体验成为当今企业的核心要素和竞争优势,API 提供了一种功能强大、用途广泛的方法帮助企业与客户、合作伙伴、供应商、员工及其他用户建立连接。API 还能够稳定、高效地为一系列开发平台或框架(其中移动应用、单页应用和微服务是主流)提供数据、内容及功能。API 能够提高整个生态系统的易用性、性能和可靠性,改善用户体验,并支持快速访问重要数据和信息,从而实现与客户和合作伙伴之间稳定、安全的协作与创新。想想看,一款旅行应用不仅可以支持机票预订,而且还提供租车服务、在线旅行指南、天气信息和实时航班状态。上述所有服务和内容资源均通过第三
4、方 API 提供。开发人员可利用这些 API 提高应用开发效率并加快上市速度,同时还可以通过提供的增值服务来打造差异化客户体验。随着将 API 用作互联解决方案,应用开始转向日益分散和去中心化模型。由于 API 通常设计为对外暴露,因此它们将成为企业需要保护的敏感数据的入口。现代 API 交付设计具有创新性和流动性,应用组件可能分散在多个环境中,因此很难一致地管理和保护所有元素。API 的组件可能位于多个云提供商中,并存在于混合数据中心、私有云及公有云环境组合中。此外,容器和无服务器系统会创建临时组件,这些也必须予以妥善保护。在这些日益去中心化的模型中,分布在异构基础架构中的 API 超出了集
5、中式安全控制的范围,增加了攻击者的攻击面和潜在的入口点。传统三层 Web 堆栈现代分布式应用图 1:架构去中心化带来的复杂性极大地扩大了威胁面。API 安全最佳实践:API 防护的关键考虑因素34API 对于实现传统应用的现代化和提高 Web 服务开发的速度和效率而言必不可少。API 安全最佳实践:API 防护的关键考虑因素4API 容易受到与 Web 应用相同的攻击API 安全事件是很多重大数据泄露事件的罪魁祸首,因为 API 很容易受到许多针对 Web 应用的攻击,包括漏洞利用和 Bot 滥用。这类攻击包括数据泄露,即黑客可以在未经授权的情况下侵入计算机网络并窃取机密信息。API 也容易受
6、到 Bot 攻击和恶意自动化攻击。Bot 在互联网中无处不在 事实上,根据 F5 Labs 的分析,针对用户身份验证的访问攻击(通常由 Bot 执行)是造成数据泄露的主要原因。1Bot 是通过执行自动化、重复性、预定义的任务来在互联网上模仿人类行为的软件程序。它们既可执行实用功能,例如自动化客户服务、模拟社交网络上的人际交流或索引搜索引擎;也可用于执行恶意任务,包括通过撞库攻击窃取财务数据和个人信息,以及因帐户接管(ATO)造成的其他形式的欺诈和滥用。Bot 还能够实施大规模分布式拒绝服务(DDoS)攻击,通过使用虚假网络流量使系统过载,导致合法的 Web 服务、网络或 API 不堪重负,致使
7、服务中断。自动 DDoS 攻击会消耗服务器和网络资源,破坏公司开展业务所依赖的 Web 服务,或者造成公司的网络过载并完全瘫痪。应用暴力破解、注入等攻击者数据用户名API暴力破解、注入等攻击者图 2:API 容易受到许多与 Web 应用相同的安全漏洞风险。API 安全最佳实践:API 防护的关键考虑因素5我的银行转账完成300.00 美元下一次转账因此,风险管理领导者需要密切关注 Bot 驱动的攻击,这些攻击会导致入侵和数据泄露,也会影响传统 Web 应用和现代 API 结构的正常运行时间和可靠性。现有安全控制措施可能无法保护 API传统安全控制措施,例如基本 Web 应用防火墙(WAF)及安
8、全信息和事件管理(SIEM)系统,不足以识别并防止针对 API 的攻击,部分原因在于机器对机器或 API 对 API 的交互量很大,从表面上看,攻击和入侵似乎是正常的应用行为,但在后台,API 可能会被利用和滥用,从而使攻击者能够逃避检测直到发现时为时已晚。东西向 API 流量(即数据中心内服务器与应用之间的网络通信),经常会绕过集中式安全控制。这与南北向网络流量不同,南北向网络流量指的是进出数据中心边界的客户端-服务器通信,通常由各类防火墙、入侵检测系统、DDoS 防护设备及数据中心入口处的其他分层防护提供保护。然而,对于东西向流量,即使大型企业可能在数据中心与多个私有云和公有云之间生成大量
9、的东西向流量,也没有单点检测来监控恶意活动。输入验证(有时称为数据验证)是企业尝试保护其应用的另一种方法。输入验证是一种风险控制方法,用于测试用户提供的任何输入信息,以防止格式不正确的数据执行业务逻辑。由于 API 专为机器对机器通信和数据交换而设计,因此 API 能够直接访问企业最敏感的数据,所以,相比面向用户的 web 表单,API 的输入验证可能没那么严格,或者未经过测试。API 安全最佳实践:API 防护的关键考虑因素6输入验证是一种风险控制方法,用于测试用户提供的任何输入信息,以防止格式不正确的数据执行业务逻辑。API 安全最佳实践:API 防护的关键考虑因素7多云架构以及使用多个数
10、据中心的架构,会使 API 安全防护的难度加大,并导致 API 蔓延。当 API 广泛分布但却未实施全面治理策略时,就会出现这种情况。此类架构难以确保安全,部分原因在于其缺乏跨环境的可预测和可信的可观测性。不一致的 API 攻击检测和策略实施(由于维护跨多个云和数据中心的应用部署非常复杂,因此这在此类架构中很常见)可能会带来未知的风险和危险的安全漏洞。现代应用生命周期引入意想不到的风险许多企业使用持续改进和持续交付(CI/CD)开发流程,以便快速、可靠地部署代码变更和新版本软件。然而,任何软件变更都可能引入或增加风险。随着应用开发团队不断使用 CI/CD 流水线加快创新,越来越多的 API 调
11、用最终可能隐藏在业务逻辑的深处,使其极难发现和识别,并增加了通过第三方 API 实施攻击的风险。图 3:API 可深度嵌入到业务逻辑中,但仍然容易受到攻击。数据库通过应用访问 API扫描并识别易受攻击的 API将恶意脚本注入易受攻击的 API 中返回带有恶意脚本的内容API 安全最佳实践:API 防护的关键考虑因素8使用第三方 API 能够帮助企业节省大量时间,简化开发流程,并轻松访问其他公司创建的功能和服务。尽管企业可以控制他们开发的 API,但使用第三方 API 会打开其门户,使网络犯罪分子能够轻松访问他们的数据和应用。看似无害的功能(如开源日志库)可能是重大缺陷和漏洞的根源。2 在部署公
12、共 API(例如通过开源库提供的 API)时,开发人员通常会绕过已有的安全流程和程序。如今,企业面临着不断变化的风险态势,新威胁向量层出不穷。第三方聚合商便是一个典型示例,比如为消费者和商家提供替代支付选项或其他金融服务的公司。第三方聚合商提供了消费者和商家重视的服务,但也引入了新的风险,可能会泄露消费者的个人信息,导致欺诈或身份盗用,并使商家的系统面临潜在的攻击。在安全方面,CI/CD 流水线对许多企业来说也是利弊皆有。随着企业不断使用自动化 CI/CD 流水线来加快开发速度并缩短部署周期,许多企业的安全策略仍然使用人工流程来发现和评估软件组件。这种方法是不切实际的,而且可能会增加企业面临的
13、风险。与此同时,被动安全防护(直到系统中出现威胁才采取行动)会阻碍软件开发和发布周期,并拖慢上市速度。因此,许多企业为了追求速度而牺牲了安全防护,这增加了其遭受攻击的风险。API 安全最佳实践:API 防护的关键考虑因素9图 4:CI/CD 流水线自动化会掩盖 API 漏洞。将恶意代码注入CI/CD 流水线中部署下载并安装恶意代码通过恶意代码获得网络访问权限测试/构建CI/CD 流水线API 安全最佳实践:API 防护的关键考虑因素10API 默认会引入更多风险API 是许多现代应用的基础,也是在多个层面开展创新和数字化转型的关键组成部分。它们可支持不同的系统无缝协同工作,加快上市速度,并允许
14、开发人员轻松访问第三方特性、功能及服务,从而增强客户体验。与此同时,API 也在企业内部打开了多个门户,不可避免地引入了新的、难以管理的风险。尽管如此,API 的使用量仍在持续激增 预计到 2031 年,API 的数量将达到 10 亿,攻击面也在不断扩大。3 随着企业继续使用 API 开展创新并对应用组合进行现代化改造,端点和参数的数量不断增加,攻击风险也日益攀升。从根本上说,API 为攻击者的侦察提供了更多信息。API 本身及所包含的信息可帮助黑客了解系统内部,进而发起有针对性的攻击。尤其是 log4j2 等开源漏洞,在漏洞利用工具包发布后,攻击者便会立即开始扫描互联网以寻找易受攻击的主机。
15、软件供应链的复杂性及其风险评估的难度都需要应用和安全团队之间保持更高的一致性。4API 安全最佳实践:API 防护的关键考虑因素11API 防护的关键考虑因素在准备加强 API 安全防护时,企业需要考虑以下几点:图 5:成功实施 API 安全策略需要考虑到多个方面。持续监控和保护 API 端点:快速识别不断变化的应用集成,检测易受攻击的组件,并通过第三方集成缓解攻击。实施主动安全模式:支持 OpenAPI 规范和 API Swagger 导入功能,以验证模式和强制执行协议合规性,自动为确定正常流量模式设定基线并检测异常行为。采用零信任和基于风险的安全原则:限制可用方法、检查有效载荷和防止未经授
16、权的数据泄露,并为对象和功能实施访问控制和基于风险的身份验证。响应不断变化的应用生命周期:防止跨异构环境的安全配置错误,缓解可能导致入侵和拒绝服务的滥用,并在云端和架构之间一致地修复威胁。API 安全最佳实践:API 防护的关键考虑因素12图 6:API 是当今分散化分布式计算基础架构的核心。结论API 对数字业务至关重要,但较之用例更可预测的传统架构(如数据中心内的自定义三层 Web 堆栈),API 本身更加难以保护。API 催生了去中心化的分布式架构,为第三方集成提供了无限可能,也从根本上改变了安全和风险团队的工作。新数字经济边缘云API 安全最佳实践:API 防护的关键考虑因素13附录1
17、 Sander Vinberg 和 Raymond Pompon,“2022 年应用保护报告:数据泄露预测”,F5 Labs(2022 年 2 月 15 日)https:/ Andrew van der Stock、Brian Glas、Neil Smithline、Torsten Gigler,“2021 年 OWASP 十大安全漏洞:新一波风险”,OWASP(2021 年 9 月 24 日)https:/ Rajesh Narayanan 和 Mike Wiley,API 持续蔓延:API 驱动型经济的挑战与机遇(2021 年)https:/ Sander Vinberg,“Log4She
18、ll:随之重启(老一套)安全原则”,F5 Labs(2021 年 12 月 17 日)https:/ 安全最佳实践:API 防护的关键考虑因素14安全、简化、创新F5 一系列有关自动化、安全性、性能和洞察的产品组合可帮助客户创建、保护和运行“感知可控,随需而变”的应用,从而降低成本、改善运营并增强对用户的保护。更多信息,请访问: 市场销售热线:400 991 8366F5 售后支持电话:400 815 5595,010-5643 8123F5 在线联系:F5 公司北京办公室地址:北京市朝阳区建国路 81 号华贸中心 1 号写字楼 21 层 05-09 室邮编:100025电话:(+86)10
19、5643 8000传真:(+86)10 5643 8100https:/F5 公司上海办公室地址:上海市黄浦区湖滨路 222 号企业天地 1 号楼 1119 室邮编:200021电话:(+86)21 6113 2588传真:(+86)21 6113 2599https:/F5 公司广州办公室地址:广州市天河区珠江新城华夏路 10 号富力中心写字楼 1108 室邮编:510623电话:(+86)20 3892 7557传真:(+86)20 3892 7547https:/美国总部:801 5th Ave,Seattle,WA 98104|888-882-4447/美洲: 2023 F5 Networks,Inc.保留所有权利。F5、F5 Networks 和 F5 标识是 F5 Networks 公司在美国和其他国家(地区)的商标。其他 F5 商标可在 上予以确认。本文提及的所有其他产品、服务或公司名称可能是其各自所有者的商标,与 F5 并无隶属关系,F5 不做任何明示或暗示的担保。EBOOK-SDE-1024077086F5 社区官方微信活动中心(录像回放、PPT 下载)、安全报告下载NGINX 开源社区微信F5 社区技术群NGINX 社区微信群