Skip to content

Add new DAST internal API for site validations [RUN ALL RSPEC] [RUN AS-IF-FOSS]

What does this MR do?

this merge request introduces a new ee-only internal api for updating dast site validation status for on-demand dast scans. this api will be called from a custom image running in a docker container on a runner to indicate the status of a validation.

Why?

Motivation

currently site validation takes place in a sidekiq job, which isn't always guaranteed to be on the same network as the target application. this prevents customers from performing active scans against targets that aren't accessible from their gitlab instance. moving validation to the runner allows these to be more easily brought into alignment.

Internal API

dast site validation is used as a foot-gun to help prevent customers from scanning the wrong target application. it does not present a security risk to allow this api to be publicly accessible but, since dast on-demand is not yet a mature feature and we do not think this functionality would be useful to customers directly, we've chosen to introduce a new internal api (see context).

Related Issue(s)

Conformity

Availability and Testing

Security

Does this MR contain changes to processing or storing of credentials or tokens, authorization and authentication methods or other items described in the security review guidelines? If not, then delete this Security section.

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Philip Cunningham

Merge request reports

Loading