API 安全框架以安全运营为目标,以事前、事中、事后的响应处置为手段实现 API 全生命周 期的风险闭环管理。
1.API 安全框架
为给 API 安全建设提供指导,报告基于研究从安全治理的视角,遵循“安全左移 持续运营”和“体系化建设” 的原则,围绕开发、运行和运营三个环节进行 API 全生命周期安全能力构建。API 安全框架以安全运营为目标,以事前、事中、事后的响应处置为手段实现 API 全生命周 期的风险闭环管理。系统框图对应开发、部署和运营三个阶段的安全能力,涉及开发安全、访问控制、风险识 别、风险监测、风险防护、安全审计 6 个核心组件。
其中,开发安全对应开发阶段的安全风险;访问控制是 API 上线部署阶段的安全能力;风险识别、风险监 测、风险防护、安全审计应对 API 运营阶段的安全能力。以下从安全开发、安全部署和安全运营三个分别阐述 API 的安全能力。
(1)安全开发 安全开发 是保障开发阶段安全的一个重要手段。API 的安全开发适用于软件开发和软件供应链安全管理的 原则,包括遵循安全开发设计流程、API 安全开发规范,采用代码安全的技术和手段做好第三方服务和 SDK 接 口的可信管理,应用安全测试工具保障 API 对应源码满足基本的安全合规要求,减少代码自身的漏洞和脆弱性。
(2)安全部署 安全部署 是为保障 API 所提供服务的稳定性和合规性,在 API 部署、发布、运行维护过程中实施访问控 制策略,并维护上线 API 的配置管理的过程。访问控制策略是保障 API 安全运行的基础,具有较强的确定性, 多数可以直接用于访问控制,包括:代理访问、身份认证、授权管理、访问控制、数据安全合规(加密、脱敏)、 访问审计、接口保护(限速、限流、防止恶意调用等)等。API 上线后的配置管理是减少僵尸 API、影子 API 的主要手段。
(3)安全运营 安全运营 指为应对各类针对 API 的攻击风险,保障 API 调用数据的合规性和业务逻辑的安全性,减少 API 攻击对业务的影响,对 API 进行风险监测和风险应对的过程。安全运营应遵循 IPDR“识别、防护、检测、响应” 风险闭环管理的原则,由资产识别、风险检测、风险分析和可视化、风险防护和风险审计 5 个能力组成。
API 资产识别 是 API 风险检测的基础。为全面地识别 API 风险,API 资产识别通常不仅包括 API 接口本身, 还要包括承载 API 接口的应用以及 API 接口上所承载的数据。为方便对 API 资产监管,API 资产识别 阶段还要对资产标识,特别是按承载业务数据的敏感程度进行分类分级。 • API 风险检测和验证 风险检测指识别风险并进行告警,是 API 风险分析可视化的重要前提。API 风险 类型复杂,涉及 API 自身脆弱性和漏洞利用风险、行为风险、API 数据风险多个方面,需要不同的风 险检测引擎。因此,风险检测层的工作通常是检测到风险后,向分析平台告警。由分析平台进一步分 析后进行响应和处置。
PI 风险分析和可视化 风险分析可视化指结合告警、情报、业务环境,对风险告警进行综合地关联分析, 并对风险态势进行展示、管理和响应。风险分析通常需结合多方面的情报数据进行关联分析确认风险 的真实性,特别是在发现漏洞风险时,对漏洞存在的真实性也要进一步结合漏洞验证进行确认。 • API 风险防护 由于 API 风险类型的复杂化,API 安全需要多层面、多维度的风险防护能力,包括攻击 防护能力、数据防护能力、访问控制防护能力等,对于确定的 API 漏洞要采取漏洞补丁或进一步回归 到开发侧进行修复。为提高风险管理和处置的效率,API 风险处置需要采用系统化、联动防御方式, 结合企业的安全建设、安全运营能力,形成多层防御、纵深联动的一体化安全运营。 • API 安全审计 安全审计是将 API 纳入常态化安全管理,并保证 API 安全管理持续有效的一种重要方式。 这包括 API 资产审查、访问控制合规审计、API 数据安全审计、风险审计等多维度,涉及日志记录、 事件溯源、合规性检查、报告输出、数据合规检查等技术手段。
为从根本上缓解 API 的安全隐患和数据调用风险,实现全面 API 安全治理。API 风险监测要与开发系统、运行系统、防护系统之间建立有效的问题反馈通道和协同机制,通过安全运营能力分别应对 API 运营中的合规 类缺陷、攻击风险、漏洞缺陷,实现 API 安全持续运营。如,将合规缺失的策略应用到访问控制系统,API 风 险纳入风险防护体系,将漏洞利用问题回归到开发侧验证和修复。

2.核心能力简介
API 的核心能力,包括:开发安全、访问控制技术、风险分析和可视化、资产识别、风险检测、风险防护、 风险响应七个核心能力。这些都是确保 API 全生命周期安全的重要技术。
2.1 API 访问控制
API 拥有主 - 客体网络访问属性,需要应对各类访问风险,访问控制是 API 的第一道安全网关,也是 API 合规性的基础安全策略。
API 访问控制策略是基于 API 调用和访问过程中的安全风险,而向 API 接口和 API 数据实施的基于身份、 规则匹配类安全策略。包括:身份认证(Authentication)、授权管理(Authorization)、账号访问控制 (Accounting)、访问审计(Auditing)、接口保护(接口限速、限流、防止恶意调用、数据加密、脱敏等)、 数据合规保护(加密、脱敏)。 API 访问控制继承了传统 3A、4A 访问控制的基本原则,告警的准确度较高,可直接应用阻断、放行等处 置策略。随着零信任理念的广泛应用,API 的访问控制在规则策略的基本上也在进一步融合环境分析和行为分 析策略,实现动态访问控制。
为方便理解,我们将接口保护和数据合规保护统称为 API 资产(Asset)保护,同时,将身份认证、授权管理、 账号访问控制、访问审计、资产保护称为 API 访问控制的“5A 安全原则”。实践中,API 访问控制应践行 5A 安全原则,5A 策略应随 API 的交付部署到相应的访问控制系统中,对于违反访问规则的行为,直接应用阻断、 限流、限速、加密、脱敏等控制措施。
2.2 资产识别
资产识别是 API 风险监测的基础。API 资产包括 API 接口及其承载的应用数据,为能更好地进行 API 风险 分析和定位,资产识别时还需要识别承载 API 接口的应用。 API 资产发现可以采用多种技术手段实现自动化的 API 识别,常用的发现技术有:流量分析、自动化扫描。 它能通过一系列预定义的发现规则和标识规则自动化识别大部分的 API 资产,并对 API 资产类型进行区分,进 而对 API 资产进行聚合、拆分等聚类管理,发现业务中的正常的、新增的、潜在的、失活的、遗留 API 和历史 API。有效地帮助运营者提高资产管理效率,快速掌握 API 资产的状态变化。
但 API 类型复杂,企业也常常有自定义的 API 接口。基于规则检测的资产发现技术,无论是流量分析还是 自动化扫描技术在资产检测和梳理方面都存在一定的局限性,导致 API 识别不全、过度识别、分类标识错误等 等,这会给后续的风险处置造成更严重的错误判断。因此,在资产识别过程中,经常要结合人工判断进一步提 高资产发现的完整性和准确性。 在 APPI 全量识别基础上,企业通常需要进一步区分出需要重点管理的那些 API 资产,并按使用范围标识 其属于私有型 API、公有型 API、混合型 API。数据资产方面,由于不同业务中数据的含义不同,数据标识时 需要遵从行业数据分类分级的标准和规范。同样,对应用分类标识时也存在同样的需求。这些管理要求对当前 自动化标识技术是一个较大的挑战,不能完全依赖自动化识别梳理的功能。这些都需要管理员在自动化识别的 基础上进一步校正。
2.3 风险检测和验证
API 风险检测和验证技术是 API 风险识别的重要手段。API 风险类型多样,其中:API 脆弱性风险、网络 行为风险、访问异常风险及数据风险 4 个主要的 API 风险类型。
(1)API 脆弱性风险 API 漏洞和脆弱性是应用系统的重要安全隐患,包括:常见的 WEB 漏洞风险(如 SQL 注入、跨站脚本、 文件上传漏洞等),OWASP TOP10 的验证权限类漏洞(如验证绕过,授权失效等)等等。这些隐患有的是来 自开发过程中不规范的开发习惯,有的是部署过程中遗留的过期或影子 API。这些接口都极易发生 API 漏洞利 用风险。 运营阶段的 API 漏洞检测技术是一种被动扫描技术,它通过监听会话交互过程,分析会话上下文的行为特 征、数据流和响应,寻找潜在的安全漏洞和问题。这种漏洞扫描技术不同于应用漏洞和主机漏洞扫描,它将产 生大量误报,检测结果不适用于直接防护,需要通过漏洞验证确保漏洞的真实性和可利用性。
(2)网络攻击行为 WEB 应用型 API 面临着 WEB 网站所有的网络攻击行为。包括:注入攻击、XSS 攻击、中间人攻击、Bot 攻击、 DDoS 攻击等。需要结合基于规则和签名的检测,基于异常行为分析、行为特征分析、行为学习模型等攻击检 测技术进行识别。
(3)异常访问行为 异常访问行为风险是在信息系统中出现的不符合正常操作模式的行为,这些行为可能对数据安全和系统完 整性构成威胁。包括:非工作时间的访问、频繁或超出正常需求的访问以及大量敏感信息数据的下载等。即使 在建立了身份认证、访问授权和敏感数据保护机制的情况下,拥有权限的用户仍可能进行非法的数据查询、修改或下载操作,这些行为往往未超出账号权限,容易被管理者忽视。 UEBA(用户和实体行为)分析、语境分析是异常访问风险检测的主要手段。 异常访问风险防护多会回归到访问控制策略上,根据 API 接口的敏感等级采取细粒度、多层次的访问控制 策略,确保数据安全和系统的完整性。
(4)API 数据风险 API 接口涉及大量的用户数据和敏感信息,API 数据风险包括:数据泄露和滥用、过度数据暴露、低频数 据泄露、不安全的数据传输等。 数据分类分级和涉敏数据标识是 API 数据风险检测的主要依据,是一种数据合规性检测。相关技术可参考 安全牛《数据分类分级自动化建设指南》报告。
2.4 风险分析和可视化
风险分析和可视化是执行 API 风险评估、细粒度风险管理的重要依据。风险可视化技术利用数据和图形化 展示的方式,直观地呈现 API 面临的各种风险,如 API 的存活状态,漏洞分布、攻击态势、数据要素流转等等, 实现风险持续监测的目的。 风险分析和可视化技术包括,包括:特征匹配、行为模型、关联分析、智能图谱、神经网络、机器学习、 大数据分析等技术手段。