2023年OWASP API安全指南 | 作者:sourav - Medium
文章目录
2023年OWASP API安全指南
OWASP 最近发布了 2023 版本的 API 安全系列,其中列出了最新的 API 安全前十名漏洞。本文将详细介绍这些漏洞,并分析它们的技术细节和潜在风险。
OWASP API 安全前十名漏洞列表
以下是 OWASP 2023 API 安全前十名漏洞的概要:
- 对象级授权中断(BOLA)
- 身份验证失败
- 破碎的对象属性级授权(BOPLA)
- 资源消耗不受限制
- 功能级别授权中断(BFLA)
- 不受限制地访问敏感业务流
- 服务器端请求伪造(SSRF)
- 安全配置错误
- 库存管理不当
- API 的不安全消耗
接下来,我们将逐一分析这些漏洞的技术细节。
对象级授权中断(BOLA)
BOLA 是指 API 提供者在授权控制中存在漏洞,导致用户能够访问不属于其权限范围的敏感信息。这种漏洞通常与不安全直接对象引用(IDOR)类似。
示例
以下 API 请求中,粗体部分的资源 ID 是潜在的攻击目标:
GET /api/用户/1GET /用户/帐户/查找?user_id=aE1230000POST /公司/账户/苹果/余额GET /admin/设置/帐户/**bman**
攻击者可以通过修改这些资源 ID 来尝试访问其他用户的数据,例如:
GET /api/资源/3GET /用户/帐户/查找?user_id=23
防护措施
- 实现严格的授权控制,确保用户只能访问与其权限相关的数据。
- 使用不可预测的资源标识符(如 UUID)代替简单的 ID。
身份验证失败
身份验证失败是指 API 无法有效验证用户身份,可能导致敏感信息泄露。
常见问题
- 弱密码策略:允许用户设置简单密码或更改密码时不进行额外验证。
- 凭证填充攻击:攻击者利用已泄露的凭证尝试登录,若未设置速率限制,攻击可能成功。
- 身份验证令牌泄露:在 URL 中暴露身份验证令牌。
防护措施
- 强制使用多因素身份验证(MFA)。
- 实施速率限制和防火墙。
- 避免在 URL 中传递敏感信息。
破碎的对象属性级授权(BOPLA)
BOPLA 是过度数据暴露和批量分配问题的结合。API 端点可能会暴露敏感对象的属性,或允许用户修改不应访问的属性。
示例
GET /api/用户/达明
{
"行动": "报告",
"uid": 44
}
上述响应可能返回用户的敏感数据,导致数据泄露。
防护措施
- 限制 API 响应中返回的数据,仅提供必要信息。
- 对用户可修改的属性进行严格验证。
资源消耗不受限制
API 缺乏资源和速率限制可能导致拒绝服务(DoS)攻击或高额财务损失。
常见问题
- 执行超时设置不当。
- 缺乏对上传文件大小、请求操作数的限制。
- 第三方服务支出限额未设置。
防护措施
- 设置合理的资源限制,如最大内存、超时时间等。
- 实施速率限制和 API 使用监控。
功能级别授权中断(BFLA)
BFLA 是指 API 功能的访问控制不足,攻击者可以执行其他角色的操作。
示例
攻击者通过修改以下请求:
DELETE /api/用户/21
{
"名字": "vicky"
}
将 /用户 更改为 /admin,可能获得管理员权限并删除用户。
防护措施
- 实现基于角色的访问控制(RBAC)。
- 验证用户权限是否匹配请求的功能。
服务器端请求伪造(SSRF)
SSRF 漏洞允许攻击者通过 API 请求访问内部资源。
示例
攻击者通过以下请求发送恶意 URL:
POST /api/profile/upload_picture
{
"picture_url": "http://example.com/profile_pic.jpg"
}
攻击者可能利用此漏洞进行端口扫描或访问敏感资源。
防护措施
- 验证用户输入的 URL,限制访问范围。
- 禁止 API 请求访问内部网络。
安全配置错误
安全配置错误可能导致数据泄露或系统被攻破。
常见问题
- 使用默认账户或凭据。
- 配置错误的 HTTP 头(如 X-Powered-By)。
- 缺乏输入净化,允许上传恶意文件。
防护措施
- 定期更新和修补系统漏洞。
- 禁用不必要的 HTTP 方法。
- 实施严格的输入验证和净化。
库存管理不当
暴露非生产或不受支持的 API 版本可能导致安全风险。
示例
攻击者通过测试以下路径发现旧版本 API:
/api/v1/帐户/api/v2/帐户
防护措施
- 定期清理和更新 API 文档。
- 禁用不再使用的 API 版本。
API 的不安全消耗
API 集成第三方服务时,若未遵循最小权限原则,可能导致数据泄露或被利用。
示例
攻击者利用第三方服务返回的恶意数据,触发 SQL 注入或其他漏洞。
防护措施
- 使用最小权限策略。
- 对第三方服务返回的数据进行验证。
总结
OWASP 2023 API 安全指南强调了 API 安全的重要性,并列出了常见的漏洞类型。开发者应根据这些漏洞采取相应的防护措施,例如加强授权控制、实施速率限制、验证用户输入等,以确保 API 的安全性和稳定性。
原文链接: https://medium.com/@sourav_chakraborty/a-guide-to-owasp-api-security-2023-574a9704ddb5
热门API
- 1. AI文本生成
- 2. AI图片生成_文生图
- 3. AI图片生成_图生图
- 4. AI图像编辑
- 5. AI视频生成_文生视频
- 6. AI视频生成_图生视频
- 7. AI语音合成_文生语音
- 8. AI文本生成(中国)