HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

为什么需要考虑 API 的安全性?

  • 2019-10-12
  • 本文字数:1975 字

    阅读完需:约 6 分钟

为什么需要考虑API的安全性?

各类企业在智能手机的应用程序中,越来越多地依赖 API 与客户端进行交互,但这种方式也有一些弱点。



随着网络攻击者继续利用易受攻击的人、过程和技术,他们的行动也瞄向了常规目标之外;似乎没有任何事情不在他们的目标范围之内,没有人能百分之百地免受他们的恶意攻击。


尽管组织机构在保护自己方面取得了进展,但是一旦一个组织被击破,其他的很快也就暴露了。


今天的攻击者尤其关注 API,它们正迅速成为新的攻击前沿阵地。最近的报告表明,到 2022 年,API 滥用将成为企业 web 应用程序中数据泄露的罪魁祸首。因此,保护 API 变得越来越重要。


虽然 API 安全这些概念还有些新,但是通过 API 执行攻击的行为并非最近才出现。多年来,大多数组织机构都遇到过类似的威胁,这些威胁正是针对其网络和面向 Internet 的应用程序。


现在,他们必须把精力集中在移动应用程序、API 和后端服务器上,因为网络攻击者过去采用了类似方法,把这些应用程序、API 和后端服务器作为了攻击目标。在讨论与今天的 API 相关风险之前,我们必须首先准确地理解是什么使它们显得独特和易受攻击。

基于 API 的应用程序与传统应用程序的对比

基于 API 的应用程序与传统应用程序有很大的不同。例如,在过去,用户/访问者会通过浏览器访问 web 服务器,而大多数“数据处理”是在服务器上执行的。但随着客户端设备变得越来越多样化,变得越来越强大——即有了更快的 CPU、更大内存、更多带宽等等——很多逻辑从后端服务器转移到了前端(即客户端设备本身),如下图所示。



在现代应用程序中,下游服务器更像是基于 API 的应用程序所使用数据的一个网关代理。在此实例中,渲染组件就是使用原始数据的客户端,而不是服务器本身。


例如,还记得在早些年,人们使用智能手机和传统网站预订机票。人们会在手机上打开浏览器,尝试使用航空公司网站,这些网站是专为大型电脑显示器而非小型智能手机屏幕设计的。


但这并没有带来很好的用户体验,所以公司开始更新他们的网站,使其对智能手机用户更加友好。尽管这改善了用户体验,但浏览网站和完成机票预订仍然相当麻烦。


因此,航空公司、酒店、汽车租赁公司等都开始开发自己的移动应用程序。人们预订航班时,不再试图从手机上的浏览器里打开该航空公司移动版网站,而是下载并安装该公司的移动应用程序,并直接从智能手机上使用该应用程序进行预订。那么,这带来了什么变化呢?


当使用航空公司的移动应用程序预订航班时,该应用程序使用 API 调用与后端服务器交互,主要用于获取航班时间表、可乘坐航班、价格和座位等数据。该应用程序还与用户进行交互,允许用户指定旅行日期、出发和到达城市、座位选择和购买选项。


在这种情况下,智能手机可以不使用浏览器,而是在移动应用程序内部执行了几乎所有的机票预订处理负载。尽管这极大地改善了使用智能手机时的机票预订体验,但也带来了一个问题:


API 是否也像基于浏览器的应用程序一样容易受到网络攻击?

与 API 相关的风险

不幸的是,API 也暴露在攻击之下,并且类似于基于浏览器的应用程序,基于 API 的应用程序在很大的程度上也存在着类似的安全问题。


但是,由于 API 暴露了移动应用程序的底层实现,并且用户的状态通常由客户端应用程序维护和监视,每个 HTTP 请求(对象 ID、过滤器等)中会发送更多的参数,所以有一些 API 的安全问题具有其独特性。在大多数情况下,这些问题导致的漏洞可以从以下三个方面来考虑:


  • 泄露敏感数据

  • 被拦截的通讯

  • 对后端服务器发起拒绝服务攻击(DoSS)

一个具有高尚动机的好项目

随着威胁范围的扩大和 API 使用的增加,我和 Inon Shkedy(Traceable.ai 的安全研究主管)带头领导了OWASP API十大安全项目。该项目旨在帮助组织、开发人员和应用程序安全团队更加了解 API 的风险。


这个项目之所以重要,是因为:“在当今应用程序驱动的世界中,创新的一个基本元素就是 API。从银行、零售、运输到物联网、自动驾驶汽车和智慧城市,API 是现代移动端、SaaS 和 web 应用程序的关键部分,我们可以在面向客户、面向合作伙伴和机构内部的应用程序中随处可见 API 的使用。从本质上讲,API 暴露了应用程序的逻辑和敏感数据,如个人身份信息(Personally Identifiable Information,简称 PII),正因为如此,它越来越多地成为攻击者的目标。没有安全的 API,快速创新将是不可能的。”


OWASP API 安全项目旨在开发、发布和跟踪组织在使用 API 时所面临的十大风险,类似于OWASP十大最关键的Web应用程序安全风险项目。从中断的对象级授权到不充分的日志记录和监视,这个列表汇总了企业面临的最关键的 API 风险,同时还提供了示例攻击场景和减轻这些威胁的建议。


所以,IT 团队、安全专业人员和开发人员都应该仔细阅读这个列表,以便更好地理解 API 带来的好处,同时了解在攻击者将目光投向这个新兴目标时,API 的实现所带来的潜在风险。


英文原文:


Why You Need to Think About API Security


2019-10-12 16:132476

评论

发布
暂无评论
发现更多内容

【架构篇】Supabase的Postgrest组件架构介绍

张文平

数据库 postgresql 缓存 多表联查 Postgrest

软件测试 | 奇安信秋招面试题1

测吧(北京)科技有限公司

测试

极光笔记 | 聊一聊推送系统中事件驱动架构的应用

极光JIGUANG

定义现代化实时数据仓库,SelectDB 全新产品形态全面发布

SelectDB

数据库 大数据 数据湖 数据分析 云数据库

亚信科技AntDB数据库 高并发、低延迟、无死锁,深入了解AntDB-M元数据锁的实现

亚信AntDB数据库

AntDB 国产数据库 AntDB数据库

RTC才是物联网企业的杀手锏!

X2Rtc

音视频 物联网 IoT RTC

流量治理的基石——基于字节码增强的全链路流量标签透传

华为云开源

微服务 微服务架构 字节码

文心一言 VS 讯飞星火 VS chatgpt (101)-- 算法导论9.3 7题

福大大架构师每日一题

福大大架构师每日一题

【聚梦想 创非凡】2023荣耀开发者沙龙 ● 广州站 精彩回顾

荣耀开发者服务平台

互联网 用户增长 云服务 生态合作 行业经验

未来PC将是云电脑? 算力优势成为关键

青椒云云电脑

云电脑

软件测试 | 奇安信秋招面试题2

测吧(北京)科技有限公司

测试

AI带来的新创浪潮

测吧(北京)科技有限公司

测试

软件测试 | 奇安信秋招面试题3

测吧(北京)科技有限公司

测试

你眼中的程序员 vs 程序员眼中的自己,是时候打破刻板印象了丨KubeCon 主题活动

阿里巴巴云原生

阿里云 容器 云原生 AIGC

真香!为什么设计行业流行部署云桌面?

青椒云云电脑

云桌面

混合项目管理:您需要知道的一切,从定义到实践

爱吃小舅的鱼

项目管理 看板 敏捷管理 混合项目管理

人工智能 | ChatGPT账号注册

测吧(北京)科技有限公司

测试

AI在生活中的惊人应用

测吧(北京)科技有限公司

测试

人工智能:走向智能化生活

测吧(北京)科技有限公司

测试

雨天出行也安心!用华为天气一眼便知未来雨势

最新动态

为什么需要考虑API的安全性?_语言 & 开发_Erez Yalon_InfoQ精选文章