OWASP ZAP
What is the purpose of OWASP ZAP?
OWASP ZAP, also known as Zed Attack Proxy, is an open-source web application security testing tool. It works as an intercepting proxy for manual testing and also provides automated passive scanning, active scanning, crawling, API testing, reporting, and CI/CD-friendly automation.
ZAP is especially useful for web application assessments because it can sit between a browser and the target application, observe traffic, identify security issues, and automate repeatable dynamic application security testing workflows.
Here are the primary uses of OWASP ZAP:
-
Intercepting Proxy Testing: ZAP proxies browser traffic so testers can inspect, modify, replay, and analyze HTTP and HTTPS requests during manual web application testing.
-
Passive Security Scanning: The tool reviews observed traffic without sending attack payloads, making it useful for early feedback, CI checks, and safer baseline analysis.
-
Active Vulnerability Scanning: ZAP can actively test discovered URLs and parameters for common web vulnerabilities. Active scanning can change application state, so it should be used only on owned or explicitly authorized targets.
-
Application Crawling: ZAP can discover application paths with the traditional spider and the AJAX spider, which is useful for modern JavaScript-heavy applications.
-
API Security Testing: The tool can import API definitions such as OpenAPI, SOAP, and GraphQL sources, then scan the discovered endpoints.
-
CI/CD Automation: ZAP supports Docker scan scripts and the Automation Framework, allowing teams to run repeatable web security checks in pipelines.
-
Reporting and Triage: ZAP produces alerts, risk ratings, evidence, request and response data, and reports that can support vulnerability validation and remediation.
Core Features
- Intercepting proxy for manual web testing
- Passive and active scanning
- Traditional spider and AJAX spider crawling
- OpenAPI, GraphQL, and SOAP import workflows
- Automation Framework and Docker scan scripts
- Authentication, context, and session handling
- HTML, JSON, XML, and Markdown reporting
Data sources
- HTTP and HTTPS requests and responses
- Browser proxy traffic, cookies, and sessions
- Target URLs and spidered paths
- OpenAPI, GraphQL, and SOAP definitions
- ZAP contexts, sessions, and automation YAML files
- Passive and active scan alerts
Common OWASP ZAP Commands
1. Show ZAP Help
- This command displays command-line options for the installed ZAP launcher.
zap.sh -h