API 安全专题(11)| 应对新一代 API 安全威胁需要依托十种能力
作者: 日期:2023年07月26日 阅:1,038

数字化时代,伴随互联网的广泛应用和快速升级,企业内部应用逐渐由单一架构发展为低耦合、高内聚的服务网格架构,业务应用内部的数据交换大量采用 API 方式进行连接,导致企业 API 数量呈现指数级爆发式增长,API安全性受到极大挑战。

一、API安全挑战

企业在大量依托 API 接口来完成内部数据交互、外部数据共享、三方组件引用时,衍生出的安全挑战主要包括以下几方面:

01  业务暴露面扩大

随着云计算技术的广泛应用,越来越多的 Saas 化业务系统和服务被迁移上云,API 在为更多用户提供服务的同时,导致大量 API 对外暴露,相对于传统数据中心的单点式调用,云上的东西向和南北向访问都可能成为威胁 API 安全的攻击面。

02 忽视本身存在的脆弱性

敏捷开发模式是当下主流开发模式,敏捷开发周期短,API 接口构建频繁,对于API 接口本身存在的脆弱性难以兼顾。

03 存在未知API

API 是由编码人员所创建,很少有人会意识到这些 API 的存在,这使得大量的 API 缺少维护,并经常容易被忽略。当组织缺乏对于 API 接口的治理机制时,僵尸、影子和幽灵等可怕的 API 威胁就会出现,给企业业务开展造成损害。

04  对API安全风险无认知

一些企业会认为按照开发设计规定来设计 API 接口,不会有什么问题,从而导致API 被攻击的可能性以及其后果被严重低估,因此未采取充分的防护措施。此外,第三方合作伙伴系统的 API,也容易被组织所忽视。

二、传统安全工具存在缺陷

由于 API 在设计架构上的特殊性,它们无法通过传统的应用安全工具进行有效的保护,比如API应用网关、日志分析和 WAF 等。据最新的 API 安全研究数据显示,77%的受访者表示,传统的安全工具难以满足其API安全防护需求,主要原因包括:

01 缺乏对于API的检测能力

传统安全工具主要是为保护传统业务应用程序和网络基础设施而设计的,缺乏解决API特有漏洞所需的具体功能,比如无效的对象级授权(BOLA)、输入验证不充分或访问速率限制不足。

02 无法融入API安全生态

现代应用程序常常包含来自不同提供商的大量 API。这种生态的复杂性使得传统安全工具难以全面准确地监控 API 流量和检测可疑活动。

03 安全能力存在局限性

传统安全工具无法提供检测特定 API 攻击(比如撞库攻击和蛮力破解)所需的可见性,因为这类攻击往往会发生在多个 API 之间,需要实现细粒度的API级可见性。

04 身份校验机制无针对性

很多企业中存在大量历史遗留应用程序,因此,使用 API 而不进行身份验证是目前很常见的现象。这些未经身份验证的 API 一旦公开暴露,就会对企业的应用系统安全构成威胁。API 需要提供比传统安全工具更高级的身份验证和授权机制,比如基于令牌的验证和授权。

05  动态多变的环境

API 是在高度动态多变的环境中运行,需要不断部署新的 API,并经常更新现有的API。传统安全工具难以跟上快速的变化,从而导致在 API 安全控制方面出现缺口,可能被人利用。

三、应对API安全新型风险需依托十种能力

01 API资产发现与管理

需建立健全 API 管理制度,对 API 进行深度的资产梳理,通过主动、被动多种识别方式,形成清晰的 API 资产台账,帮助安全团队了解不同应用程序使用的 API 的业务属性以及对应 API 的关联性。

02 规范设计API

攻击者经常采用的一种技术就是通过使用无效或不当的输入来诱导 API 错误输出。所以要求所有 API 请求和响应遵守模式和所有规范是保护这些 API 免受攻击和破坏的重要步骤。

03 执行安全策略

企业都会制定相应的 API 安全策略,但若没有严格执行,这些策略将变得没有意义。保证企业的 API 安全策略(速率限制、阻断等)能够得到有效的执行,是对API 安全风险防护的基本要求之一。

04  敏感数据保护

API 的主要安全风险之一就是敏感数据泄露。保护敏感数据应该是任何 API 安全解决方案的一部分。要保护敏感数据避免被泄露,就需要确保 API 上所承载的敏感数据是否经明文传输或未加密传输。

05 防止 Dos 攻击

Dos 攻击对 API 接口可造成业务连续性中断,影响正常用户的访问,所以应对此类风险需要有防止 DoS 攻击的能力。

06 加大攻击防护

现如今攻击者在不断寻找破坏和恶意利用 API 的方法。API 安全技术需要包括基于特征、基于异常和基于 AI 的攻击保护机制,以防范各种各样的新型攻击。

07 访问控制限制

不适当的访问控制(包括身份验证和授权)一直都是困扰 API 安全应用的主要问题之一。无论是由于疏忽、人为错误、主观恶意还是其他任何原因,对 API 的访问控制不当都意味着灾难性后果。API 安全技术必须要能够提供身份威胁发现服务、身份验证服务和 API 访问控制服务。

08  恶意用户检测

通过机器学习可以分析出与 API 与之交互的客户端行为是否存在异常,这有助于在安全攻击实际发生前做好预防。

09 安全配置和管理

API 的配置和管理不当是导致产生安全威胁的原因之一。因此,API 安全技术需要帮助企业确保 API 不会被错误配置,避免人为 API 安全漏洞的产生。

10 API 访问行为分析

通过研究从应用程序的端点和 API 收集而来的各种日志,就能总结出各类 API 应用请求路径的行为,并生成一组行为安全性参照指标,比如请求大小、响应大小、数据延迟、请求率、错误率以及响应吞吐量。这是一个迭代过程,会随时间的推移而持续更新,并不断优化。

参考链接

https://hackernoon.com/5-reasons-traditional-security-tools-fall-short-in-protecting-apis
https://www.darkreading.com/edge/10-features-an-api-security-service-needs-to-offer

关键词:

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!


相关文章