dast_scan
Run dynamic security scans against a live web app: OWASP ZAP spider/passive or active checks and Nuclei CVE detection run in parallel, with optional authentication, then save a consolidated report.
Instructions
Perform Dynamic Application Security Testing (DAST) against a running web application. Runs OWASP ZAP (spider + passive/active scan) and Nuclei (CVE/template detection) in parallel on the Kali machine. Supports unauthenticated and authenticated scans (HTTP Basic, Bearer token, Cookie injection, Form-based login). Generates a versioned consolidated report saved on Kali.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| token | No | Bearer token (auth_type=bearer) | |
| password | No | Password for basic or form auth | |
| username | No | Username for basic or form auth | |
| auth_type | No | "none" = unauthenticated. "basic" = HTTP Basic/Digest (username + password). "bearer" = Authorization: Bearer <token>. "cookie" = Cookie header injection. "form" = form-based login via ZAP Automation Framework. | none |
| login_url | No | Login page URL (auth_type=form) | |
| scan_type | No | "baseline" = passive spider + passive scan (fast, non-intrusive). "full" = full active scan with attack payloads (thorough, slower). "api" = API-focused scan (uses zap-api-scan.py) | baseline |
| run_nuclei | No | Run Nuclei for CVE and template-based detection in parallel with ZAP. | |
| target_url | Yes | Target web application URL. Example: "http://192.168.1.10" or "https://app.example.com" | |
| ajax_spider | No | Enable AJAX spider for Single Page Applications (React, Angular, Vue). Slower but finds more endpoints. | |
| cookie_value | No | Full Cookie header value, e.g. "sessionid=abc123; csrftoken=xyz" (auth_type=cookie) | |
| password_field | No | Form field name for password (auth_type=form). Default: "password" | |
| username_field | No | Form field name for username (auth_type=form). Default: "username" | |
| login_success_regex | No | Regex to detect successful login in response body (auth_type=form). Default: "logout" |