首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >crAPI - 存在漏洞的API项目

crAPI - 存在漏洞的API项目

作者头像
qife122
发布2025-06-16 10:08:48
发布2025-06-16 10:08:48
17200
代码可运行
举报
运行总次数:0
代码可运行

crAPI 是一个OWASP提供的故意设计存在漏洞的API项目,通过这个项目,可以安全地运行并训练自己识别和利用API中的安全漏洞。

项目概述

crAPI 模拟了一个汽车维修服务的B2C应用,采用微服务架构构建。用户可以通过Web界面进行注册、管理车辆、联系技师、购买配件以及在社区中互动。

主要功能

  • 用户认证系统:包含注册、登录、密码重置等功能,故意设计存在认证漏洞
  • 车辆管理:添加车辆、查看车辆位置、联系技师维修
  • 在线商店:购买汽车配件,使用优惠券,管理订单
  • 社区功能:发布帖子、评论互动
  • 漏洞挑战:内置15+个安全挑战,涵盖OWASP API安全十大风险

技术架构

crAPI 采用微服务架构,包含以下组件:

服务名称

技术栈

功能描述

web

OpenResty

主入口服务,Web界面

identity

Java

用户认证和授权管理

community

Go

社区博客和评论功能

workshop

Python

车辆维修工单管理

mailhog

-

邮件模拟服务

mongo

MongoDB

NoSQL数据库

postgres

PostgreSQL

SQL数据库

结构图如下:

安装指南

系统要求

  • Docker 和 docker-compose (版本1.27.0或更高)
  • 推荐配置:t2.micro机器(1 CPU, 1GB内存)

快速启动

使用预构建镜像:

代码语言:javascript
代码运行次数:0
运行
复制
# Linux
curl -o /tmp/crapi.zip https://github.com/OWASP/crAPI/archive/refs/heads/main.zip
unzip /tmp/crapi.zip
cd crAPI-main/deploy/docker
docker compose pull
docker compose -f docker-compose.yml --compatibility up -d

# Windows
curl.exe -o crapi.zip https://github.com/OWASP/crAPI/archive/refs/heads/main.zip
tar -xf .\crapi.zip
cd crAPI-main\deploy\docker
docker compose pull
docker compose -f docker-compose.yml --compatibility up -d

配置覆盖

可以通过修改.env文件或直接在命令中设置环境变量来覆盖默认配置:

代码语言:javascript
代码运行次数:0
运行
复制
LISTEN_IP="0.0.0.0" docker compose -f docker-compose.yml --compatibility up -d

使用说明

  1. 访问Web界面:http://localhost:8888
  2. 注册新账户
  3. 探索各项功能并尝试发现漏洞

示例API调用

获取用户车辆信息:

代码语言:javascript
代码运行次数:0
运行
复制
curl -X GET "http://localhost:8888/identity/api/v2/user/dashboard" \
-H "Authorization: Bearer YOUR_JWT_TOKEN"

漏洞挑战

crAPI 内置了多个安全挑战,涵盖以下漏洞类型:

  1. BOLA (Broken Object Level Authorization)
    • 访问其他用户的车辆详情
    • 查看其他用户的维修报告
  2. 认证漏洞
    • 重置其他用户密码
    • JWT令牌伪造
  3. 数据过度暴露
    • 查找泄露敏感信息的API端点
    • 发现视频的内部属性
  4. 速率限制
    • 通过"联系技师"功能实施DoS攻击
  5. BFLA (Broken Function Level Authorization)
    • 删除其他用户的视频

完整挑战列表请参阅挑战文档(challenges.md)

项目链接地址:https://github.com/OWASP/crAPI.git

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络安全技术点滴分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • crAPI 是一个OWASP提供的故意设计存在漏洞的API项目,通过这个项目,可以安全地运行并训练自己识别和利用API中的安全漏洞。
    • 项目概述
    • 主要功能
    • 技术架构
    • 结构图如下:
    • 安装指南
      • 系统要求
      • 快速启动
      • 配置覆盖
    • 使用说明
      • 示例API调用
    • 漏洞挑战
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档