一、API基本情况
随着云计算、移动互联网的发展,越来越多的企业业务逐步云化,移动办公逐渐兴起。这些应用系统开发深度依赖于应用程序接口(Application Programming Interface,API)之间的相互调用。API数量持续增长,其传递的数据量也飞速增长。API安全问题也日渐突出。近年来,国内外已经发生了由于API漏洞而导致的攻击事件,对相关企业和用户权益造成严重损害。API安全问题已引起了广大安全厂商的注意。例如,主打API安全防护的Neosec厂商入选RSAC 2022创新沙盒十强。
二、API安全风险分析
API 是预先定义的函数,为程序之间的数据交互和功能触发提供服务。调用者只需调用 API,并输入预先约定的参数,即可实现开发者封装好的各种功能,无需访问功能源码或理解功能的具体实现机制。API通常包含如下组成要素:通信协议、域名、版本号、路径、请求方式、请求参数、响应参数、接口文档等。从技术角度,通常可划分为Restful API、SOAP API、RPC API。
API技术被因公用于各种复杂的环境。在 API 的开发、部署过程中,不可避免的会产生安全漏洞,这些漏洞通常存在于通信协议、请求方式、请求参数、响应参数、访问行为等环节,面临外部、内部威胁。例如,外部攻击者利用API未授权访问非法获取数据、API参数校验不严谨而被非法篡改。应对外部威胁的同时,API也面临着内部威胁。例如,内部账号非法访问、异性行为等。OWASP总结了10大API安全风险:
三、API动态安全防护分析
API动态安全防护通常包括API资产识别、检测-响应闭环防护。彼此协同,为API接口提供完整的安全防护方案。
3.1 API资产识别
API资产识别需要清点系统有哪些API,建立包含API多维度信息的资产仓库,比如上述API的各构成部分、API业务属性、API重要程度、API配置等,需要针对每一个API的信息进行规范化记录和展现,如Swagger管理。API识别是一个持续的过程,当有新API发现时,应及时规范化补齐信息。API识别通常有3种方式:
- 人工梳理:这种方式通常是追溯系统设计文档、更新文档等,梳理API进行汇总。这种方式可以较为完整的梳理API信息,但是存在较大的工作量,并且容易疏漏。
- 基于流量的被动识别:通过流量探针收集网络流量,针对典型协议,收集API信息,提取参数等信息。这种方式虽然可以节省工作量,但是会遗漏流量未覆盖区域的API,并且事后仍然需要补充API的业务属性信息。
- 部署API探针主动收集:通过在API网关处部署API探针,主动收集。这种方式与基于流量的被动识别存在一定的相似性,并且相对更准确全面。
3.2 API检测-响应闭环防护
针对不同类型的API缺陷,攻击者出于不同的攻击目的,进行不同类型的攻击,造成的后果也不同。从对API动态安全防护的角度,可以从3方面考虑:
- 针对网络攻击的防护:对于API请求参数、内容等进行威胁分析,阻止通过恶意攻击者入侵。
- 针对敏感数据的管控:依据客户需求对数据进行分类分级,识别API流量中敏感数据,进行脱敏和防护,防止数据泄露。
- 针对API访问的管控:划分API的访问权限、监测运行、访问行为、识别越权、未授权等的API异常访问行为。
针对上述典型的API安全威胁场景,其防护均需要对API数据进行检测分析,实施相应的风险处置措施。例如,未授权API访问通过特征匹配的方式,可实时检测并及时阻断;对于数据泄露等场景,攻击者可能多批次逐步盗取数据,这类场景往往需要长周期监控分析才能识别。因此,针对API的动态防护是通过API网关探针作为防护抓手,通过旁路大数据分析提供高级检测手段进行不同时间粒度的防护和响应。
- API网关探针:主要完成毫秒级检测与响应
- 毫秒级检测:内置一些匹配规则、黑白名单等简单、高效的检测机制,支持对API流量的快速检测;另一方面,接收大数据分析平台下发的新检测策略,以更新本地策略。
- 毫秒级响应:对检测到的威胁行为进行响应,如阻断、发出告警等。同时也支持接收大数据分析平台下发的及时响应策略。
- 大数据分析平台:主要结合知识库,完成时间跨度长、复杂逻辑的分析,以识别高级威胁,并评估风险,下发应对策略。
- 秒级准实时检测:实现一些较为复杂的分析,如日志关联、机器学习算法等场景对接入的数据进行流式分析,进行准实时检测;
- 长周期检测:对一些复杂场景进行分析,比如数据泄露场景中API行为的周期性分析、异常行为基线分析等。
- 知识库:提供用于关联分析的各类知识,比如资产知识、脆弱性知识,以辅助检测分析和风险识别。
- API风险处置:对经过大数据分析检测到的异常威胁,结合API资产知识,分析其风险大小。并制定不同粒度的处置策略,根据内置响应剧本自动或手动的下发策略至API探针。
四、总结
API的安全防护需要包含API自动识别、威胁检测与自动化处置整个闭环流程。在API自动识别方面需要全面、持续的进行API精确识别;在检测上,支持多种不同模式的上下文关联;通过提供全局的API资产视角,区分具备不同属性的API,并支持实时监控;在响应处置方面,将处置流程引入工作流中,并建立细粒度响应策略,实现自动化的条件触发式响应。在API风险严峻的现实环境下,聚焦API防护的Neosec厂商,在API安全防护领域做出重要创新探索,成功入选RSAC2022创新沙盒十强。API安全问题已引起客户广泛关注,安全厂商正积极探索其安全防护解决方案。
版权声明
本站“技术博客”所有内容的版权持有者为绿盟科技集团股份有限公司(“绿盟科技”)。作为分享技术资讯的平台,绿盟科技期待与广大用户互动交流,并欢迎在标明出处(绿盟科技-技术博客)及网址的情形下,全文转发。
上述情形之外的任何使用形式,均需提前向绿盟科技(010-68438880-5462)申请版权授权。如擅自使用,绿盟科技保留追责权利。同时,如因擅自使用博客内容引发法律纠纷,由使用者自行承担全部法律责任,与绿盟科技无关。