
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 <your-hosting-directory>
git clone https://github.com/roottusk/vapi.git
vapi.sql을 MySQL 데이터베이스에 가져오세요.
vapi/.env에서 DB 자격 증명을 설정하세요.
다음 명령을 실행하세요 (Linux)
service mysqld start
vapi 디렉터리로 이동하여 다음을 실행하세요
php artisan serve
vAPI.postman_collection.json 가져오기vAPI_ENV.postman_environment.json 가져오기또는
공개 워크스페이스 사용
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
*** 중요 ***
values.yaml의 232번 줄에 있는 MYSQL_ROOT_PASSWORD가 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 라이트업)