背景信息
API 为当今大多数数字体验提供了动力,API 安全性仍然是大多数 CISO 最关心的问题。随着各个行业的数字化转型,针对 API 的恶意威胁行为与日俱增。当前 API 的安全状态与组织的需要存在很大差距,组织经常受困于难以理解的攻击面,缺乏正确的策略来构建防御。
API 处于数字化体验的中心,移动应用、Web 网站和应用程序的核心功能、微服务架构、监管机构的要求等等,均离不开 API 的支持,根据 Akamai 的一项统计,API 请求已占所有应用请求的83%,预计2024年 API 请求命中数将达到42万亿次。与此同时,针对 API 的攻击成为了恶意攻击者的首选,相对于传统 Web 窗体,API 的性能更高、攻击的成本更低,Gartner 预测,到2022年 API 滥用将是最常见的攻击方式。之所以 API 安全问题如此严重,主要是因为 API 安全面临着如下挑战:
应用和逻辑迁移上云,暴露更多攻击面
随着云计算技术的广泛应用,越来越多的 SaaS 被迁移上云,在为更多的用户提供服务的同时,也将 API 暴露到云中,相对于传统数据中心的单点调用,东西向和南北向都可能成为 API 的攻击面。
创新强调速度和灵活,忽略构建 API 安全
敏捷开发模式是当今主流开发模式,敏捷开发强调个体和互动、工作的软件、客户合作、响应变化,虽然提升了创新速度和灵活性,但是对于如何构建 API 安全性却缺少合适的方法,导致在软件构建过程中难以顾及 API 安全。
API 接口对外不可见,引发多种攻击隐患
由于 API 是由程序员书写,除了编写代码的程序员,很少有人意识到这些 API 的存在,缺少维护的 API 经常容易被忽略,然而恶意攻击者却可以利用网络流量、逆向代码、安全漏洞等各种手段找到不设防 API 并实施攻击。
组织经常低估 API 风险,造成安全措施遗漏
人们通常会假设程序会按照想象中的过程运行,从而导致 API 被攻击的可能性以及影响被严重低估,因此不去采取充分的防护措施。此外,第三方合作伙伴系统的 API,也容易被组织所忽视。
那么要治理 API ,首先就需要治理 API 资产,对 API 进行暴露面攻击面的管理。
什么是API 暴露面?
API 暴露面主要分为两个大的部分:
|
API 外部的暴露面 | 内部 API 暴露信息 |
| 合作伙伴 API 暴露信息 |
| 僵尸 API 暴露信息 |
| 外部 API 暴露信息 |
| 测试 API 暴露信息 |
API 参数的暴露面 | API 敏感参数暴露 |
| API 后台参数暴露 |
其中 API 的暴露会造成内部 API、合作伙伴 API 意外暴露给攻击者,攻击者可以通过利用这些弱校验的 API 进行对应攻击,造成意外的数据泄露、API 滥用、权限外泄等意外的安全事件。
同时,在开放的 API 中,如果存在敏感、后台的 API 参数被攻击者嗅探或识别出来,攻击者可以通过这些敏感的参数信息,对业务进行定向的数据获取及 API 滥用,造成越权、数据外泄的等安全事件场景。
如何发现异常暴露面?
1. 通过自动化识别业务 API 调用关系,全面、持续清点 API 接口,包括影子 API 和僵尸 API、老版本和功能重复的 API,缩小风险暴露面。
2. 持续监测敏感数据流动,对各种敏感数据进行识别,并对敏感数据进行自定义检测,减少数据暴露面。
3. 持续动态梳理系统访问账号,多维度记录账号访问和操作行为,主动识别风险操作。
那么在异常暴露面发现的基石就是 API 的资产发现,API 的资产发现在 Web 应用防火墙中,可以通过 API 流量分析 进行对流量内的 API 进行发现及管控。要进行暴露面监测,及时了解当前网站中包含的 API 及相关敏感资产信息及其资产标签与风险、活跃状态。
本页内容是否解决了您的问题?