13518219792

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

我们一起聊聊API安全

许多组织更关注于快速的API和应用程序交付,而忽视了API安全保护,这也是近几年来API攻击和数据泄露的主要原因。本文将从API常见类型、API攻击、API安全测试、API安全建设这几个角度做简单分享。

常见API类型

分类

描述

安全现状

公有型API

支持任何人从任何地方访问服务,被暴露在互联网中

网络限制少,认证和授权可能存在,可能不存在

开放API

频繁出现在金融业相关的开放银行倡议中,促进特定行业的创新和提高服务整合

认证和委托授权都是有的

私有型API

通常在数据中心或私有云网络环境中部署和运行,以运营管理、内部服务支撑为主

认证和授权可能存在,但是也有可能认为攻击暴露面有限,而被忽视

合作伙伴API

向特定的外部供应商提供对内部API的有限访问,以推动数字供应链

访问程度控制权位于内部和外部API之间,可能通过API网关管控,但缺少安全方面的考虑

API攻击

说到API攻击不得不说,开放式Web应用程序安全项目(OWASP)的非营利组织,多年来应用安全十大排名在安全行业中经常被引用。

在2019年,OWASP发布了API Security Top 10,描述了十个最常见的API缺陷。

它作为培训和提高认识的辅助工具非常有用,也可以作为一个轻量级的分类标准,对API中的问题进行分类,下面将从用例和预防展开说明。

1.API1:2019-失效的对象级别授权

攻击者在 API 调用中将自己资源的ID替换为属于另一个用户的资源的 ID。缺乏适当的授权检查允许攻击者访问指定的资源。这种攻击也称为IDOR(InsecureDirect Object Reference)。

用例:

预防:

2.API2:2019-失效的用户身份验证

较弱的API身份验证允许攻击者冒充其他用户的身份。

用例:

· 被视为“内部”的未受保护API· 弱密码、纯文本密码、弱哈希密码、共享密码或默认密码· 缺失验证码或没有账号锁定机制,攻击者可以对同一用户账号进行暴力破解· URL中包含令牌凭证和密码· 接受未签名或弱签名的JWT令牌(“alg”:“none”),或未校验令牌过期时间。

预防:

· 检查所有可能的方式来对所有API进行身份验证· 使用标准身份验证、令牌生成、密码存储和多因素身份验证 (MFA)· 使用短期访问令牌· 验证您的应用程序(以便知道谁在与您交谈)· 对身份验证使用更严格的速率限制,并实施锁定策略和弱密码检查· 使用OWASP Authentication Cheat Sheet(身份验证备忘单)https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Authentication_Cheat_Sheet.md。

3.API3:2019-过度的数据暴露

API可能会暴露比客户端合法需要之外的更多数据。

用例:

预防:

4.API4:2019-资源缺乏和速率限制

API无法防止过多的调用和载荷大小。攻击者会使用拒绝服务 (DoS),造成API无响应或不可用。

用例:

预防:

5.API5:2019-失效的功能级授权

攻击者找出“隐藏”的管理API方法并直接调用它们。

用例:

预防:

6.API6:2019-批量分配

在API中容易利用批量分配,因为,它们通过设计公开了应用程序隐含的实现方法以及属。

性名称。现代框架鼓励开发人员使用来自客户端的输入自动绑定到代码变量和内部对象中的功能。攻击者可以使用这种方法来更新或覆盖开发人员从未打算公开的敏感对象属性。

用例:

攻击者可以通过仔细阅读配套文档,来推测出对象的属性、查找到不同的 API 端点、或在请求负载中发掘额外的属性,进而对它们进行篡改。

· 与权限相关的属性:user.isadmin、 user.isvip仅应由管理员设置· 与流程相关的属性:user.cash仅应在付款验证后在内部设置· 内部属性:article.created_time仅应在应用程序内部设置。

预防:

7.API7:2019-安全配置错误

API 服务器的不良配置允许攻击者利用它们

用例:

预防:

8.API8:2019-注入

攻击者通过任何可用的注入方法(如,直接输入、参数、集成服务等)向API提供恶意数据,并期望这些恶意数据被发送至解释器执行。

用例:

预防:

9.API9:2019-资产管理不当

攻击者通过发现API的非生产版本(例如,临时的、测试版或更早期的版本),他们没有如生产环境API那样受到良好保护,将通过这些渠道进行发起攻击。

用例:

预防:

10.API10:2019-日志和监视不足

缺乏适当的日志记录、监控和警报会导致攻击和攻击者被忽视。

用例:

预防:

中文详细


分享标题:我们一起聊聊API安全
URL地址:http://cdbrznjsb.com/article/copcpsg.html

其他资讯

让你的专属顾问为你服务