2021-12-17-永安在线-OWASP_API_Top_10解读_52页_13mb
报告摘要
OWASP API Top 10 总结
介绍
OWASP (Open Web Application Security Project) 是一个开源、非盈利的全球性安全组织,成立于2001年,专注于应用软件安全研究。其API安全项目组负责维护API Top 10列表,该列表识别和解释API最常见的10个安全风险。OWASP中国广东分会由肖文棣领导,致力于推动API安全在中国的发展,其成员包括资深安全专家、企业代表和社区志愿者。APITop 10基于社区协作,用于指导开发和运维团队改进API安全实践。
API Top 10 风险解读
以下是OWASP API Top 10的风险总结,每个风险包含攻击场景和预防措施:
-
API1: 失效的对象级授权
攻击场景:通过自定义请求头部或SQL注入获取未授权数据(如商户利润表)。
预防:使用不可预测的ID、基于用户策略的授权机制,并进行充分测试。 -
API2: 失效的用户身份认证
攻击场景:暴力破解密码或重置流程端点被利用。
预防:多因素认证、反暴力机制、定时锁定账户、使用标准认证协议(如OAuth)。 -
API3: 过度的数据暴露
攻击场景:API返回敏感数据或使用toJSON方法泄露信息。
预防:避免客户端过滤、服务器端验证数据范围、实施schema-based响应检查。 -
API4: 资源缺失与速率限制
攻击场景:上传大文件或使用字符串查询绕过限制。
预防:在服务器端限制请求频率和输入数据大小,使用Docker等工具资源管理。 -
API5: 失效的功能级别授权
攻击场景:未经授权访问管理功能(如创建管理员用户)。
预防:强制显式授权、使用角色继承机制、隔离管理端点。 -
API6: 批量分配
攻击场景:通过注入参数控制文件操作或API行为(如视频转换)。
预防:白名单输入验证、参数绑定、避免使用危险函数。 -
API7: 安全配置错误
攻击场景:暴露默认配置或遗留文件,导致PII泄露。
预防:标准化部署流程、禁用默认端口、加密通信、实施统一日志格式。 -
API8: 注入
攻击场景:注入命令或SQL语句控制设备或数据库。
预防:参数化查询、输入过滤、输出编码、数据类型严格验证。 -
API9: 资产管理不当
攻击场景:部署未维护的API版本或重置机制漏洞。
预防:清点所有API环境、实施外部防火墙、定期安全审查。 -
API10: 日志和监控不足
攻击场景:API密钥泄露后无警报,导致数据被访问。
预防:记录所有错误和可疑活动、统一日志格式、使用SIEM系统警报。
安全思考
OWASP API Top 10与传统OWASP Top 10(如失效的访问控制对比注入失败)有部分重叠。核心安全原则包括:区分认证与授权、通过威胁建模设计安全、最小化权限和攻击面、强调输入验证与输出编码以防范注入、并确保持续监控和日志记录。API安全应从设计阶段入手,采用最小化原则和开源工具,避免自定义算法以减少脆弱点。
此总结基于演讲内容,涵盖主要风险、案例和缓解策略,旨在提供简洁的API安全指导。
试读结束,高清完整版pdf/doc/ppt,请点下载