Create api fuzzer CI template
Problem
Scanners run using a CI template that is included by the customer. API Fuzzer doesn't have a template which prevents usage of the scanner.
Proposal
Create a template similar to the other scanners.
- Scanner configuration via environment variables
- Support optional images provided by the user: worker, target
- Support testing external targets
- Verifies feature is enabled
The most relevant template to mimic would be
Tasks:
-
Support pre/post scripts - FUZZAPI_D_PRE_SCRIPT - (optional) Pre script runs after docker login and docker network create, but before we start the scanning image container.
- FUZZAPI_D_POST_SCRIPT - (optional) Post script runs after scanning image container is started. This is the 1. [ ] Support target if provided (optional)
- FUZZAPI_D_TARGET_IMAGE
- FUZZAPI_D_TARGET_ENV
- FUZZAPI_D_TARGET_VOLUME
- FUZZAPI_D_TARGET_PORTS
-
Support worker if provided (optional) - FUZZAPI_D_WORKER_IMAGE
- FUZZAPI_D_WORKER_ENV
- FUZZAPI_D_WORKER_VOLUME
- FUZZAPI_D_WORKER_PORTS
-
Set defaults when possible -
Update features check for fuzzing -
Misc docker - FUZZAPI_D_NETWORK - (optional) Name of docker network, defaults to “testing-net” place to start your target(s) and kick off scanning if using our CLI tools.
-
Check into correct repo https://gitlab.com/gitlab-org/gitlab/-/tree/master/lib/gitlab/ci/templates/Security
Edited by Michael Eddington