产品动态 > 正文

专注API安全 | 如何破解API资产维护困境,保护敏感数据安全?

2022-07-20

网络数据安全立法又有新进展:《网络数据安全管理条例》被列入国务院2022年度立法计划,这意味着关于数据安全管理的配套细则有望在年内落地。

作为数字经济和信息社会的核心资源,数据对国家治理、经济运行机制、社会生活方式等产生着深刻影响。数据在流动、分享、加工和处理的过程中创造价值,但其前提是保障数据安全无虞,因为庞大的数据足以勾勒出数以亿计的人物画像。而支撑这些庞大数据高速传输的重要通道,便是API。

因此,API接口安全将很大程度决定了互联网数据的安全。

对于如何保障API与敏感数据安全,网宿安全实验室资深运营结合网宿API安全管理实践,撰文《敏感数据保护的基石:API资产发现与管理》,得到网络安全专业媒体安全牛刊载。在此将全文分享如下:

奋力拼搏的不止是世界杯冠军,还有……

01 API资产不明引发安全困境

据《Salt Labs State of API Security Report, Q1 2022》报告,在受访者最关心的API安全问题中,僵尸API以43%占比高居第一;远超过以22%的占比位居第二的帐户接管/滥用;还有83%的受访者对API 清单是否完整没有信心。

为何企业对僵尸API及API清单完整度有如此大的担忧?安全隐患往往藏于“未知”,未知的僵尸API、未知的影子API、未知的敏感数据暴露等,根源都在于企业对API资产全貌的未知。

安全的管理与防护始于“已知”和“可见”,人们难以掌控那些被遗忘的、看不见摸不着的资产安全状况。然而正是这些被人遗忘、年久失修的API,因其往往潜藏着未被修复的漏洞,备受攻击者青睐。

尽管各类受访数据表明,僵尸API已日渐得到企业的重视,但仍有一处容易被忽略的巨大风险——僵尸参数。不同于那些被彻底遗忘的僵尸API,这些僵尸参数有可能还存在于当前仍在服务且持续维护的API接口中。

常见的僵尸参数,例如在开发测试周期内设置的调试参数、系统属性参数,它们在接口正式上线后未对外暴露给用户,但仍能被暗处的攻击者恶意调用。

攻击者基于僵尸参数,能够利用批量分配等漏洞获得越权的响应。一旦这些未知的API脆弱点被恶意利用,背后的核心业务数据、平台用户数据等海量敏感数据在黑客面前就宛如“裸奔”了,再无秘密可言。

02 API资产的可知、可视、可管

如何更好地管理API全貌资产,而非仅是管理“已知”资产?传统的API管理方案往往是通过API网关进行资产管理与更新,业务开发人员在开发过程中需及时将新开发的API注册在API网关上,并在API内容发生改变时同步更新API定义内容。在这种资产维护方式下,资产清单的准确性与有效性完全依赖于人工管理。

随着企业业务快速扩张,开发人员在不可避免地需要交付更多功能、加快发布速度以适应千变万化的市场,不断上线大量新版本API。如此快速的迭代对API资产维护提出了很高的要求,一旦人工维护出现纰漏,僵尸API、僵尸参数等便会不断积聚,造成恶性循环。

另需注意的一点是,关注僵尸API、影子API等API资产管理漏洞的往往是企业的安全人员,而API网关通常由业务部门维护。也就是说,安全人员对API风险的防控工作,是以业务人员的API资产维护工作为基础的,这之间就存在跨部门协作的壁垒问题。

那么,如何解决上述的API资产清单人工维护成本高且准确性难以保障的问题?如何打破安全部门与业务部门在API资产管理协作上的壁垒?面对这两大问题,传统的API网关管理模式已不再有效,需要引入新的管理模式——API资产发现,实现对全貌API资产的自动盘点与分析。

奋力拼搏的不止是世界杯冠军,还有……

03 网宿API资产发现应用实践

为了实现API的安全应用,企业组织需要进行全面的API资产发现,从API资产盘点,到API路径折叠与规范化,再到进一步的敏感数据暴露面清点。基于以上设计思路,网宿安全在API防护产品上进行应用实践,已可较好实现API资产的可知、可视、可管。

  1. 全自动的资产盘点

根据网宿预定义的API流量请求特征,结合机器学习的API流量基线,持续性地捕获流量中的API资源。基于流量数据分析,无需改变用户现有部署架构,即可实时盘点流量中的API资产,全自动梳理API列表资产、API参数资产、API调用方法等多维度API资产清单。

例如,区别于普通URL资源,API在数据传输格式、资源/操作定义等方面具有其鲜明的特性。如REST API、SOAP API、GraphQL API等不同类型的API均有不同的API架构风格,这些特征被一一提炼,在流量流经识别引擎时,即可快速识别、捕获API列表资产。

这些API列表资产可能包含着现有API网关/本地API文档维护着的API列表,也可能包含着被企业遗忘或停用的僵尸API。通过对全量API列表资产进行进一步分析,描绘其请求趋势、响应状态、被调用方法等接口活跃状态,即可令API列表资产可视、可知。

除了API列表资产外,清点参数资产同样重要。针对捕获到的API列表清单,网宿在API安全管理方面,通过建立正常用户数据传输基线,识别API调用需携带的参数名称、参数位置、参数类型、是否为必带参数等,甚至提炼请求Body的数据结构,从而为企业充分清点全量API列表资产中正被使用的参数资产,使僵尸参数或是攻击伪造的恶意参数无处遁形。

  1. API路径折叠与规范化

API 资产中,存在众多类似“api/test/111”与“api/test/112”这样路径高度重合的API端点。进一步观测这些近似的API端点,会发现它们往往也具有相同的用途。这些API端点往往仅有固定位置的路径参数不同,而路径参数的变量多达成百上千。

这类路径、用途高度重合的API端点若全盘列出,可能会造成API资产列表过于庞大的问题。充斥着这些冗余数据的海量列表给管理增加了难度,甚至难以完成人工确认。

网宿API资产发现过程,会持续分析这类高重合度的API端点,将这些端点在API资产列表中进行折叠,并将路径中的变量规范为路径参数,以进一步联动后续防护模块进行参数合规检测。

  1. 敏感数据暴露面清点

各类敏感数据在接口传输过程中飞速流转,有些敏感数据是必要传输内容,但有部分敏感数据因接口的过度暴露而遭到不必要的泄露。敏感数据暴露面的清点可有助发现此现象。

敏感数据识别引擎实时分析、判别请求数据与响应数据中流转的敏感参数信息,智能识别身份证、手机号、银行卡号等敏感数据,分析与统计全盘API敏感数据态势。

哪些API正暴露着敏感数据?暴露了哪一类敏感数据?其敏感等级分布如何?对这些敏感数据暴露面的清点与详尽的态势分析,能够帮助企业摆脱敏感数据“灯下黑”的困境。

综上所述,从全自动的API资产盘点,到API路径折叠与规范化再到进一步的敏感数据暴露面清点——网宿安全基于以上设计思路,在API防护产品上进行应用实践,实现了完整API资产的可知、可视、可管。

后续本系列还将结合网宿在API业务弱点防护、数据脱敏处理等环节上的实践,进一步探讨API敏感数据保护路线和方案,敬请关注~

本文内容的版权持有者为网宿科技股份有限公司(“网宿科技”),未经许可,不得转载。