API在公司全业务快速使用给信息安全带来了巨大挑战
(一) API防护缺失已成数据安全最大风险敞口
根据 Imvision 发布的《Enterprise API Security Survey》报告中,80%的企业通过外部 API提供数据访问,企业利用的 API多种 多样,其中内部 API 的使用最普遍,即组织的开发人员内部使用的 API(71%的公司采取这种方式)。其次,B2B的外部 API(组织为其 业务合作伙伴开放的私有 API)占 63%,B2C的外部 API(消费者通过 移动应用程序使用的私有 API)占 53%。一般来说,80%的组织允许合 作伙伴(B2B)或用户(B2C)通过外部 API访问其数据。
———数据来自 Imvision:《Enterprise API Security Survey》报告
在国内,随着 5G、云计算、物联网的快速发展,加速了 API在各 领域的应用,目前已经在物联网、微服务、云原生等场景都得到了非 常广阔的应用。随着 5G、物联网技术落地,人类正进入万物互联时代, 从 IaaS 到 PaaS、SaaS,从 PC到移动 APP、各种 IoT 设备,API将无 处不在。
根据 Akamai的一项统计,API请求已占所有应用请求的 83%,预计 2024 年 API 请求命中数将达到 42 万亿次,但 API 安全威胁却比 API 调用增长更迅猛。API 安全公司 Salt Security 发布的《State of API Security Report, Q3 2021》报告指出,针对应用程序编程 接口的攻击流量正在以普通 API流量的三倍速度增长。报告发现,安 全问题在 API项目关注的名单中名列前茅,很少有受访者认为他们有 信心识别和阻止 API攻击。
随着 API在各种应用场景的广泛,近两年来因 API安全问题导致 的数据泄漏事件频频发生。国外,2021 年 4 月,Facebook 平台上的 5 亿用户数据泄漏,涉及信息包括用户昵称、邮箱、电话、家庭住址 等信息,事后判定为某在线业务的 API遭到误用,导致数据泄漏;国 内,2021 年 6 月,著名社交平台 LinkedIn(领英),有超过 7 亿用 户数据在暗网被出售,涉及用户的全名、性别、邮件以及电话号码、 工作职业等相关个人信息。据悉,部分数据也是通过 API 泄漏获取。 层出不穷的数据泄漏事件也给数字化转型中的企业带来巨大风险和 巨额损失的可能性。据 IBM 《数据泄漏成本报告》统计,数据泄漏的 平均成本为 386 万美元;涉及超过 5000 万条消费者记录时,补救成 本可能高达 3.92 亿美元。
API承载了应用各组件间数据的流动,成为数据交互最重要的传 输方式之一,也因此成为攻击者窃取数据的重点攻击对象。与此同时, 由于 API防护的缺失,组织对外暴露了哪些 API、对谁开放、API通 信中携带了哪些敏感数据、对方如何使用这些数据等问题都未得到应 有的重视。攻击者可以通过后端业务系统漏洞、接口暴露、安全配置 缺陷等直接攻击 API进行数据窃取,还可以利用 API的参数组合及各 参数值类型相对固定进行注入类攻击或通过参数与用户身份进行关 联进行越权类攻击。面对 API 安全威胁不断复杂化、多样化的趋势, 政府与企业等的数字化系统正在面临来自多方面严峻的安全挑战。
(二) API安全面临的主要安全问题
- 缺乏可见性
- API资产不可见
对企业内外已上线的 API 未做好全面的资产统计工作,导致企业 对 API 进行安全测评时遗漏了部分资产或长期未对相关应用进行维 护。一旦某类 API框架型漏洞爆发或被黑客入侵时无法及时定位到相 关应用节点,将错过最佳的应急响应时间。
- API访问行为不可见
高频访问行为:API接口在设计之初未对 API接口访问频率做限 制,使部分用户在短时间内可以访问大量 API接口,造成 API接口访 问频率过高,容易引起 API接口不稳定等风险。此外,当访问 API接 口时,API 接口数据缓存在浏览器中,容易造成大量敏感数据泄漏。
大量数据下载行为:API 接口未对用户某个时段内的下载次数、 下载内容大小等做限制,导致用户可以通过多次下载达到获取大量数 据的目的,容易造成大量敏感数据泄漏、隐私数据被贩卖等危险。
网络爬虫行为:如果将 API接口开放到公网上,且未设置反爬虫 机制,则攻击者可以使用假 IP 或修改 User-Agent 请求头隐匿身份, 通过信息收集获取企业内部系统账号,利用网络爬虫爬取账号权限以 及开放在公网上所有的 API接口数据,导致大量数据泄漏。
- 攻击面增加
随着云计算技术的广泛应用,越来越多的 SaaS 被迁移上云,在 为更多的用户提供服务的同时,也将 API暴露到云上。相较于传统数 据中心的单点调用,东西向和南北向都可能成为 API的攻击面。
单体应用的场景下,入口点只有一个,所有的请求都会从这个入
口点进来,在这个入口点去建立一组访问控制或者安全防护点,就可 以控制所有的风险。而在微服务场景下,业务逻辑不是在一个单一的 进程里,而是分散在很多进程里。每一个进程都有自己的入口点,导 致需要防范的攻击面比原来大得多。
- 缺少身份认证引入的攻击面
某些 API 在设计之初由于未充分考虑用户群体或者具体的使用 场景而未进行身份认证。身份认证的缺失导致相关 API 可被任意访 问,若相关 API涉及敏感数据则会埋下严重的数据泄漏的隐患。
- 输入参数未校验引入的攻击面
API 的参数组合及各参数值类型相对固定,这些参数也决定着 API返回的数据。若 API未对参数值的类型进行校验则可能会被攻击 者利用来进行注入类攻击;若攻击者未将参数与用户身份进行关联则 可能会导致越权类攻击。
- 明文传输引入的攻击面
API未对传输数据进行加密设计而直接进行明文传输,攻击者可 通过网络嗅探等手段直接获取 API的交互格式以及数据,通过对获取 的数据进行分析,并进行下一步的攻击。
- 权限设计不合理引入的攻击面 水平越权,由于服务端在接收到客户端请求数据后进行操作时没
有判断数据的所属对象,致使用户 A可以访问到属于同一角色的用户 B的数据。
垂直越权,由于服务端没有设置权限控制或权限控制存在缺陷,
导致恶意用户只要猜测到管理页面的 URL地址或者某些用于标识用 户角色的参数信息等,就可以访问或控制其他角色拥有的数据,达到 权限提升的目的。
数据权限,某些 API在设计时为兼容多个功能会将过多的数据杂 糅到一起返回至前端,然后由前端去筛选相关的数据。这导致 API返 回过多的数据,攻击者可通过流量拦截等手段获取 API原始返回的数 据,从而存在数据泄漏的隐患。
- 安全配置缺陷引入的攻击面 安全配置缺陷是最常见的安全问题,这通常是由于不安全的默认
配置、不完整的临时配置、开源云存储等,例如,错误的 HTTP标头 配置以及包含敏感信息的详细错误信息等问题所造成的。
- 代码漏洞引入的攻击面 缺乏统一规范、开发维护不当导致的安全漏洞等脆弱性因素可能
为 API带来严重安全隐患。不法分子可通过安全漏洞、恶性 Bug 等因 素获取敏感信息、造成服务器失陷。
- 使用易受攻击和过时的组件引入的攻击面 开发过程中引入开源或第三方插件、加载库、模块、框架等,引
用的开源软件或模块存在安全问题时,势必会导致代码中的漏洞、恶 意代码、“后门”等安全隐患被引入至 API接口中。
- 多种攻击隐患
- 利用漏洞攻击 服务请求伪造:恶意攻击者可以利用该类型漏洞对服务所在内
网环境进行探测、攻击内网/外网中的其他应用以及读取服务器中的 敏感信息等。
注入:该类型漏洞通常可以分为 SQL注入、代码注入以及命令 注入等,这种类型的漏洞危害性极高,可能导致的后果包括但不限于 敏感信息泄漏、服务器沦陷,一旦被利用给企业带来的损失无可估量。
安全配置错误:配置错误可以发生在一个应用的任何层面,包括 平台、Web 服务器、数据库、容器等。比如应用报错信息未处理直接 返回给调用端导致敏感信息泄漏。
认证和授权失败:用户的身份验证、身份管理和会话管理失败, 会产生与身份验证相关的攻击,例如:使用弱或无效的凭据恢复和 忘记密码流程、使用纯文本、加密或弱散列密码、用户会话或身份 验证令牌在注销或一段时间不活动期间未正确失效。
失效的访问控制:访问控制执行策略失效,可以使用户在其预 期权限之外进行功能操作或数据访问。策略失效通常会导致未经授 权的信息泄漏、修改或破坏所有数据或执行超出用户限制的业务功 能。例如:特权提升、强制以未经身份验证的用户身份浏览经过身 份验证的页面或以标准用户身份浏览特权页面。
加密失效:可能导致用户凭证未加密传输或密文容易被破解,例 如传输层没有使用 TLS加密导致嗅探、中间人劫持攻击。
未授权漏洞:一般是由于认证机制存在漏洞导致身份认证过程 被绕过或将特权接口对外网开放以及默认开放的 API未及时关闭等, 例如: Kubernetes 的 8080 端口、Docker 的 2375 端口的未授权访问等。
- 其他攻击手段 缺省口令:业务系统上线时,使用了厂商的缺省口令,且将业
务系统对外暴露,导致攻击者使用缺省的口令,直接登录业务系统 进行任何操作。
弱口令:弱口令存在被暴力破解、撞库、社会工程学攻击等风 险。例如:在某些业务系统中,口令设置长度较低、复杂度不足(数 字、大小写字母、特殊字符等)即为弱口令,
可用性攻击:API 接口未对用户或者访问 IP 进行速率限制时, 攻击者可持续高频地使用多个虚假用户或者 IP 对 API 进行访问, 从而严重消耗服务器资源,导致其他正常用户无法访问相关接口。
- 敏感数据泄漏
敏感信息泄漏:在实现 API接口时,未对 API接口返回数据进 行前后端脱敏处理,且数据以明文形式传输,一旦攻击者能够成功 截获流量并成功破解其传输数据,即可获取大量敏感信息,对企业 造成巨大危害。
个人信息泄漏:若企业内部人员、用户等将姓名、手机号、身 份证号码等个人信息直接暴露在公网上,攻击者可能会收集这些敏 感信息,用来制造社工库,存在被钓鱼、勒索等威胁。
数据脱敏失效:API 接口仅采用前端数据脱敏策略,且未对数 据进行加密传输,极易被攻击者截获流量,造成数据泄漏。若前后 端脱敏策略不一致,攻击者可以通过拼接数据的方式来获取原始数据,导致脱敏失效。
参考资料
信通院 应用程序接口-API数据安全研究报告-2020年
API在公司全业务快速使用给信息安全带来了巨大挑战相关推荐
- 加入新公司,怎样快速熟悉业务和项目?
转载自:https://www.toutiao.com/a6599078103778066947/?tt_from=weixin&utm_campaign=client_share&w ...
- 我是如何在一家独角兽公司做业务中台、数据中台的?8页ppt详解中台建设实践!...
点击"技术领导力"关注∆ 每天早上8:30推送 概述 中台这个词火爆挺久了.但从阿里 2015 年提出并开始实施,发展到目前为止,并没有「标准化」:换句话说,它跟「人工智能」,「 ...
- 选型宝访谈:如何借助API生态平台,一站式快速搞定APP开发?
写在前面 今天,移动技术层出不穷,微信生态日益丰富,企业是否还需要开发APP?怎样快速开发高性能.跨平台的APP?怎样实现从开发到测试,再到运营的APP全生命周期管理? 1 为什么APP 仍是移动互联 ...
- 从端到云——工业物联网项目全栈快速开发
作者:刘洪峰,网名叶帆,叶帆科技创始人兼CEO,前微软(中国).NET Micro Framework开发团队成员,微软全球最有价值专家(MVP),CSDN十大MVB.以微软.NET MF系统为核心, ...
- 中建五局电子合同:打通全业务数字化链路
中建五局成立于1965年,是世界500强第13位--中国建筑股份有限公司的全资骨干企业.以房屋建筑施工.基础设施建造.投资与房地产开发为主营业务,拥有房建.市政.公路"三特三甲"资 ...
- 拨开发展迷雾,将“智慧”嵌入全业务场景【2022戴尔科技峰会预告】
当世界慢了下来 有韧性的企业仍然会增长 行稳致远 数智远见者 2022戴尔科技峰会 8.25让我们一同开启"韧性"之旅 商场如战场. 如今,消费者的注意力是稀缺资源,零售行业对于消 ...
- 用友iuap技术平台:赋能企业业务快速创新,实现云原生自由
伴随着数字化.智能化转型的深化,企业对云原生的需要,不仅是采用以容器.服务网格.微服务.声明式API等云原生技术,而且要回到"云原生"定义的初衷上,让应用在云架构上构建,生于云. ...
- 阿里百度盛大等全业务布局揭秘
前言:腾讯科技本周连续推出<大棋局>策划,讲述腾讯.百度.阿里.搜狐.盛大.360等等互联网巨头接连进行"全业务布局"的背景原因和具体策略.未来 5年,我们很可能看到各 ...
- 入职新公司,如何快速上手公司业务?
最近很多小伙伴入职新公司,问我入职好如何快速上手自己负责的产品,这里说一下自己的看法: 1.了解一下公司的业务逻辑 可以通过请教别人的方式,了解一下公司的业务,请教的时候可以给别人买一杯咖啡啥的,谁都 ...
- 华为云张昆:支持全场景全业务,GaussDB加速企业数字化转型
云.AI.5G等技术驱动,数据库行业迎来新的需求,云数据库也在不断演进升级.依托华为云与华为云Stack,通过全栈软硬件优化,华为云GaussDB进行了进阶与革新,以统一的架构,支持关系型与非关系型的 ...
最新文章
- c3p0数据源配置抛出Could not load driverClass com.mysql.jdbc.Driver的解决方案
- JWT 和 JJWT,别再傻傻分不清了!
- 【Codeforces Round #430 (Div. 2) D】Vitya and Strange Lesson
- python 合并两个排序的链表(递归解法)
- python教程:可变长参数(*args、**kwargs)、返回值(return)
- 用友u8cloud使用教程_四大ERP供应商SAP、Oracle、用友、金蝶哪个好
- mysql savepoint语法_SAVEPOINT语法错误一例
- 云服务器显示隐藏文件,云服务器显示隐藏文件
- 经典算法题随机从连续的100个不重复数中取出100个不重复随机数
- 快速完成单片机毕业设计方法
- PHP 判断一个数是否是质数
- 神经计算棒是什么_这是太棒了
- 0602 信用卡防盗刷学习总结
- 用微信小程序加市面上的网络摄像头实现视频会议
- 基于微信小程序社区疫情防控系统
- NLP-文本向量化:Word Embedding 一般步骤【字符串->分词->词汇序列化->词汇向量化】
- 思维导图到底是什么-图说思维导图定义
- 华为手机下拉菜单变大_华为手机下拉菜单变少了 华为下拉通知栏变白色
- 信号与通信系统【期末复习提纲·绪论】
- PLSQL导入Excel遇到的奇怪问题
热门文章
- Chrome一直在更新的几个广告拦截插件
- android获取网络时间工具类,Android检测网络接口访问速度,ping接口获取访问时间平均值...
- Mac 录屏制作gif动图
- 十四届恩智浦智能车竞赛双车组-星夜兼程队2019回顾
- UR+RealSense手眼标定(eye-to-hand)
- node2vec文献出处_图表示学习入门2——Node2Vec
- 【网络】HTTP原理的简单理解
- 通过Cadence学拉扎维的第0天-工艺库的导入+共源电路仿真示例
- 使用PyHive操作Hive
- java springboot房地产信息管理系统