1.概述
本文主要介绍api安全漏洞相关基础知识介绍和靶场crapi的环境搭建以及前七题的解题过程。
crapi是一个供车主注册和管理车辆的平台,是一个易受攻击的应用程序,crapi是一个用于学习和实践api安全性的api漏洞的集合。在这里可以遇到api安全的应用程序中的常见漏洞,基本包括OWASP API TOP 10的漏洞。比如失效的对象级别授权漏洞,失效的用户身份验证漏洞,过多的数据暴露漏洞,速率限制漏洞,失效的功能级别授权,批量分配,SSRF,注入以及未经身份验证的访问漏洞。
GitHub地址:https://github.com/OWASP/crAPI
2. API靶场crapi
2.1 环境搭建
靶场环境搭建文档:https://github.com/OWASP/crAPI/blob/develop/docs/setup.md
根据GitHub文档可知配置环境步骤为:
● curl -o docker-compose.yml https://raw.githubusercontent.com/OWASP/crAPI/develop/deploy/docker/docker-compose.yml
● docker-compose pull
● docker-compose -f docker-compose.yml --compatibility up -d
全都执行完毕后访问http://localhost:8888 即可:
环境配置成功即可进行测试
注:docker-compose最好使用最新版本,低版本会报错导致环境配置失败
2.2 解题
解题提示文档:https://github.com/OWASP/crAPI/blob/develop/docs/challenges.md
2.2.1 失效的对象级别授权漏洞
挑战1和挑战2为失效的对象级别授权漏洞
攻击者可以在发送的请求中改变对象的ID来攻击存在“失效的对象级授权” 漏洞的API。这将导致敏感数据的未授权访问。该问题在基于API的应