Skip to content
Commitpedia
Log in Join & edit

OWASP ZAP: a web application security scanner for testing your own applications

Zed Attack Proxy (ZAP) is a free web application security scanner and intercepting proxy maintained under the OWASP umbrella, used to find common vulnerabilities in applications you own or are authorised to test.

Drafted with AI from official documentation. Scripts were run in a test environment and repository links verified. Awaiting a human check. Did it work for you? Last edited Outdated?

Edit history of OWASP ZAP: a web application security scanner for testing your own applications: 1 recorded edit
Edit history · 1 edit
Type
Repo
Edits
1
Editors
1
First issued
15 Oct 2026
Last edit
15 Oct 2026
Source
zaproxy/zaproxy

zaproxy/zaproxy

Stars
15.9k
Forks
2.7k
Language
Java
Licence
Apache-2.0
Last push
15 Oct 2026

On GitHub: The ZAP by Checkmarx Core project

Open on GitHub

OWASP ZAP (about 16,000 stars on GitHub) is one of the most widely used free tools for finding security problems in web applications. Simon Bennetts released the first version in 2010 as a fork of the earlier Paros proxy; it became an OWASP flagship project and is now maintained by a core team led by Bennetts and Ricardo Pereira, with hundreds of contributors and a large add-on marketplace. The desktop application is written in Java and runs on Linux, macOS and Windows; a headless mode and a Docker image serve automation.

What it does

ZAP sits between your browser and the application as a proxy, records every request and response, and builds a map of the site. From that map it can run a passive scan, which only inspects traffic that already flowed and flags missing security headers, cookie flags, information leaks and similar issues, and an active scan, which sends crafted requests to look for cross-site scripting, SQL injection, path traversal, server-side request forgery and other weaknesses from the OWASP Top 10. A spider and an AJAX spider discover pages automatically, an API scan mode tests OpenAPI, SOAP and GraphQL definitions, and the automation framework describes a whole test run in a YAML file so it can be repeated in CI.

Who it is for

  • Developers who want to test their own application in a staging environment before release.
  • QA and DevOps teams that run a baseline scan against every deployment through the Docker image.
  • Security teams performing authorised penetration tests, where ZAP is a free alternative or complement to commercial proxies.
  • Learners, because the intercepting proxy shows exactly what a browser sends and receives, which makes web security tangible.

How to install and try it

Installers for each platform are on the download page, Homebrew has a cask, and the Docker images are the usual choice for automation. The baseline scan below runs the spider and passive rules only, which makes it safe to try against a development instance of your own application:

docker run --rm -t ghcr.io/zaproxy/zaproxy:stable zap-baseline.py -t http://host.docker.internal:8080

The report lists each alert with a risk level, the affected URLs, evidence and a link to the rule’s description. The documentation covers the desktop interface, authentication handling, the automation framework and the API.

Use it responsibly

An active scan sends attack payloads and can create records, trigger emails or overload a fragile server. Run ZAP only against applications you own or have written permission to test, and prefer a staging copy over production. Scanning a system without authorisation is illegal in most countries regardless of intent.

Credit

ZAP was created by Simon Bennetts and is maintained by the ZAP core team and contributors under the OWASP project and, since 2023, also as part of the Software Security Project under the Linux Foundation. It is published under the Apache License 2.0.

Did this work for you?

No votes yet. Be the first.

If it did not work, the report form below tells the editors what went wrong.

See also

History

Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.

  1. Dominik +2,972 chars

Report a problem

Something wrong, unsafe or copied? Tell the editors.
What is wrong?