配置不当,内部接口暴露
代码逻辑有缺陷,认证不到位
数据泄露……
API安全为什么越来越重要?
API,是一些应用程序为了方便互相调用,在开发过程中预先定义的接口,比如当你通过微信小程序访问一个购物平台时,小程序需要通过API去对接商城的库存、订单等系统。
过去由于数字化业务并不丰富,对于一个组织来说,内部API开发和调用的频率较低,与外部系统和应用的相互调用更少,因此API只是庞杂IT系统中一个微不足道的存在,其安全性更少有人关注。
但如今,越来越多的业务搬到了线上,对于组织来说,在互联网上提供服务需要调用更多其他外部接口,不同企业组织间的API相互调用不可避免的造成API暴露面增加,API安全愈发重要。
这些风险导致的最核心风险即是数据泄露,随着《数据安全法》、《个人信息保护法》的陆续出台和正式实施,API作为跟数据打交道的一个核心要素需要被重点关注。
企业做好API安全难在哪儿?
API的特点之一是跟企业组织的业务逻辑、业务场景、复杂程度密切相关。随着数字业务的迅速发展,也会直接导致API数量与安全诉求的直线上升。
现有API资产摸不清,新增API接口不知道
对于传统企业来说,系统往往十分庞杂,哪些接口被谁调用,基本不可能人工梳理出来;即使是诞生于API已广泛被关注的新兴企业,也不太能在每个版本上线前检查所有接口。理想状态下,业务需要在确认安全的状态下才应该上线,但事实上这是mission impossible,风险就此埋下。
此外,API的开发和维护通常由研发团队负责,而安全则由安全团队负责,双方之间的信息差,使得传统API网关手动方式上传接口信息的做法,势必产生大量“漏网之鱼”。
更加丰富的数字业务带来更加复杂的API管理
企业API安全建设对回路、聚合分析、宽带、计算资源的消耗都非常高,每一项数字业务的变动都有可能带来API数量、调用逻辑、重要程度的变化,每天可能会有数不清的API上线与失效,不能为了保障API安全而拒绝业务变动,也不能因为业务变动造成安全隐患,如何做好二者之间的平衡是必解之题。
阿里云原生API安全解决方案:高性能、超可控、极致缩放、极简高效
阿里云API安全是基于阿里云WAF产品构建的一套围绕API全方位的安全解决方案,可完全覆盖OWASP API top 10风险应对。在WAF上一键开启,免去复杂的部署成本,支持API资产的生命周期管理,并能够直接发挥其原生防御能力,进行恶意行为处置形成闭环的方案,减少跨产品操作成本,WAF产品的攻击阻断能力、访问频率限制、爬虫防护、账号安全专项防护、安全扫描防护、敏感数据防泄漏等能力均可作为API安全的处置能力,针对具体场景形成特性方案。
(数据参考OWASP API Security Top 10)
极致缩放
结合阿里云全球边缘站点网络,为最终用户提供尽可能低的 API 请求和响应延迟。限制流量并授权 API 调用,以确保后端操作能够承受流量高峰,并且不会不必要地调用后端系统。
如果一个客户一天5000QPS,会产生上百万日志条数,靠人力从上百万日志中排查API风险,难以想象,借助阿里云模型自动分析,数分钟内就可完成;
轻松监控
从阿里云控制面板监控有关 API 调用、数据延迟和错误率的性能指标和信息帮助客户更直观地监控对自身对服务的调用。本次控制台的优化,视觉方面使客户更清晰资产生命周期、更加便捷地定位预/报警与新/老API上下线情况、更加明显地透析数据风险。
从API资产发现、风险漏洞检测到异常行为检测自动化完成,用户只需要确认并处理告警;
灵活控制
无需在客户业务侧部署探测节点,采取旁路静态分析方式,对业务无影响,不会对业务数据造成污染。阿里云API安全方案依托云WAF,通过云域名原生接入,静态旁路分析方式,由于所有流量都经过WAF,Web API资产全量资产列表可视。
极简高效
无需配置一键开启、云端管理。充分利用云的原生优势,结合业务逻辑,无需任何配合或探针,即可发现问题、细节观察、处理闭环一键开启同时辅助优化业务逻辑。
【值得关注的是本次针对API控制台能力优化,使资产生命周期更加清晰、定位问题更加便捷、数据问题透出更加明显。】
阿里云通过自动分析API访问日志,创造性的为每一个API自动打上业务标签,从“接口类型+敏感等级+鉴权能力”三个维度,综合定义API接口重要程度,实现对API的分类分级管理。
目前阿里云提供近20种业务标签,基本覆盖客户常见业务类型。
API分类分级管理的另一个好处是可以辅助优化业务逻辑。例如,在防爬场景下,如果检测到某个接口被刷,可以看到接口对应的业务场景是什么,从而把告警中同质化的业务场景找出来进行优化。
API风险漏洞识别
阿里云API安全可以识别包括暴力破解、防爬等安全风险,并结合接口重要程度将风险分为高中低三级,覆盖交通、电商、金融保险、餐饮零售等不同行业需求。
同时可以主动且及时发现开发设计中存在的天然API暴露风险,数据泄露防患于未然。
从敏感数据视角出发的API调用异常监控
敏感数据识别是精准判断API调用是否会导致数据泄露的前提条件,以阿里云数据安全中心的敏感数据识别能力为基础,每一次API调用,都能清楚的看到是否涉及敏感数据,防止泄露事件发生。
同时,云上强大的算力可以摆脱传统通过规则来判断异常的做法,借助智能模型从IP来源、访问链路、访问过程使用的参数、获取的敏感数据类型等不同维度综合分析,极大降低误报和漏报。
客户实践
案例一:某第三方财务软件提供商,OA系统接口公网暴露风险
埋伏隐患:该客户一直未使用有效的API管控工具,对API资产及其保护机制不了解。而且团队安全意识薄弱,业务方认为只要做好接口权限控制,就算API开放到公网也不会有什么风险。
发现问题:通过接入阿里云API安全产品,客户发现其有上万个API接口存在,并检测到内部使用的OA办公系统某员工通讯录查询接口暴露在公网,且可未授权访问。通过该接口,就获取企业所有员工的姓名、联系方式、组织架构等核心敏感信息。
经核实,确认该客户存在API风险,阿里云立即采取安全措施:
- 通过WAF控制台,配置针对该API接口的ACL访问白名单(仅允许其企业办公网IP进行访问,封禁其他所有IP的访问);
- 将该信息通知负责该系统的业务团队进行整改,隔日业务团队修复了该接口未授权访问的漏洞;
- 根据API安全的分析结果,通过WAF对其所有内部使用的API接口配置ACL访问控制,限制访问来源
案例二:某餐饮企业 客户消费信息未授权访问
消费者的姓名、手机号等信息是《个人信息保护法》明确要保护的个人隐私数据,其消费数据更是企业的核心商业数据。
该客户通过接入阿里云API安全产品检测到其某个查询客户消费记录的接口可未授权访问,通过该接口,就可以根据手机号获取任意客户的姓名、联系方式、消费记录、消费习惯等企业及客户的核心敏感信息。
虽然该客户已经有意识在保护这部分数据,但由于接口鉴权部分的代码逻辑缺陷,表面上,接口的请求需要携带用于鉴权的身份字段,但实际代码中未对该字段进行校验,导致接口存在未授权访问、越权访问的风险。
客户关注到API风险漏洞告警和异常行为事件告警后,迅速联系阿里云安全团队展开排查并确认了该API风险漏洞的存在,第一时间确认该异常访问行为的攻击属性。安全团队立刻通过WAF控制台,封禁了所有针对该接口的访问以紧急止血,并将该信息通知该系统的业务团队进行整改,一周后业务团队修复该漏洞,接口重新启用提供服务,避免了一场潜在的数据泄露事件发生。