Browser-based DAST - Active Attack Parity
### Problem to solve Browser-based DAST should have feature parity in terms of active attacks with ZAP as its implemented today by GitLab, to where we can solely utilize Browser-based DAST for passive and active scans. ### Implementation In order to make Active Checks work we have to develop support for several keywords that are used to describe the checks. Those keywords are | Type | Issues Needing Functionality | Implementation | |------|------------------------------|----------------| | `match_response` | [required by 8 issues](https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=weight&state=opened&label_name%5B%5D=check%3A%3Aactive&label_name%5B%5D=dast-cwe-check-match-response) | https://gitlab.com/gitlab-org/gitlab/-/issues/333748+ | | `timing` | [required by 5 issues](https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=weight&state=opened&label_name%5B%5D=check%3A%3Aactive&label_name%5B%5D=dast-cwe-check-timing) | https://gitlab.com/gitlab-org/gitlab/-/issues/333750+ | | `callback` | [required by 5 issues](https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=weight&state=opened&label_name%5B%5D=check%3A%3Aactive&label_name%5B%5D=dast-cwe-check-callback) | https://gitlab.com/gitlab-org/gitlab/-/issues/333751+ | There are a total of [11 active checks](https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=weight&state=opened&label_name%5B%5D=check%3A%3Aactive) that are part of this epic. ### Status To see the research status of each rule, view this board: https://gitlab.com/groups/gitlab-org/-/boards/2838631?scope=all&label_name\\\[\\\]=check%3A%3Apassive #### Prioritization `match_response` and `timing` checks should be developed prior to `callback` checks #### Callback Server A number of active checks require the use of a callback server. The server needs to be accessible from both the DAST engine and the application under test. The callback server has to be developed and a method of deploying that callback server needs to be created. https://gitlab.com/gitlab-org/gitlab/-/issues/333630 The deployment of the callback server may vary based on customer requirements. ### Links and References [List of Rules and Status](https://docs.google.com/spreadsheets/d/1cQd0gtBltSpK7gyubLgBSQnGRQZ6YbjH6yiGVhgGEmc/edit#gid=1550798966) [Internal Planning Document](https://docs.google.com/document/d/1bzGXFsFXcK8kV2aBMJDv1SgyDzhd_1tff8OOPpgjNSg/edit#heading=h.316ctyeg44fh) ### Links / references See the [passive attack parity](https://gitlab.com/groups/gitlab-org/-/epics/5779 "Browser-based DAST - Passive Attack Parity")
epic