
vAPI — это Уязвимый и Некорректно Запрограммированный Интерфейс (Vulnerable Adversely Programmed Interface), представляющий собой самодостаточное API, которое имитирует сценарии OWASP API Top 10 через упражнения.
vAPI — это уязвимый программный интерфейс (Vulnerable Adversely Programmed Interface), самодельный API, имитирующий сценарии OWASP API Top 10 в форме упражнений.
docker-compose up -d
cd <ваша-директория-хостинга>
git clone https://github.com/roottusk/vapi.git
Импортируйте vapi.sql в базу данных MySQL
Настройте учетные данные БД в vapi/.env
Выполните следующую команду (Linux)
service mysqld start
Перейдите в каталог vapi и выполните
php artisan serve
vAPI.postman_collection.json в PostmanvAPI_ENV.postman_environment.json в PostmanИЛИ
Используйте общедоступное рабочее пространство
https://www.postman.com/roottusk/workspace/vapi/
Перейдите по адресу http://localhost/vapi/ для просмотра документации
После отправки запросов обратитесь к тестам Postman или окружению для получения сгенерированных токенов.
Helm можно использовать для развертывания в пространстве имен Kubernetes. Чарт находится в папке vapi-chart. Для чарта требуется один секрет с именем vapi со следующими значениями:
DB_PASSWORD: <пароль базы данных>
DB_USERNAME: <имя пользователя базы данных>
Пример команды установки Helm: helm upgrade --install vapi ./vapi-chart --values=./vapi-chart/values.yaml
*** Важно ***
MYSQL_ROOT_PASSWORD в строке 232 файла values.yaml должен совпадать с таковым в строке 184 для корректной работы.
HITB Cyberweek 2021, Abu Dhabi, UAE
[2] https://dsopas.github.io/MindAPI/references/
[3] https://dzone.com/articles/api-security-weekly-issue-132
[4] https://owasp.org/www-project-vulnerable-web-applications-directory/
[5] https://github.com/arainho/awesome-api-security
[1] https://cyc0rpion.medium.com/exploiting-owasp-top-10-api-vulnerabilities-fb9d4b1dd471 (Отчет по vAPI 1.0)
[2] https://www.youtube.com/watch?v=0F5opL_c5-4&list=PLT1Gj1RmR7vqHK60qS5bpNUeivz4yhmbS (Турецкий язык) (Прохождение vAPI 1.1)
[3] https://medium.com/@jyotiagarwal3190/roottusk-vapi-writeup-341ec99879c (Отчет по vAPI 1.1)
Иконка и баннер используют изображение с Flaticon