---
name: web-app-security-review
description: >-
  Use when: performing defensive web application security review, web-app
  vulnerability triage, web-app threat-model review, or validation of web-app
  security fixes. Do not use for routine implementation, style review, generic
  debugging, conceptual security explanations, or non-web targets.
argument-hint: "Describe the web-app artifact (PR, code, design, or vuln report), scope, threat model, and tests or evidence context."
user-invocable: true
---

# Web App Security Review

Use for defensive, evidence-based review of web application code, PRs, designs, vulnerability reports, and security fixes.

## Safety

Do not run, fetch, open, install, or click reporter-controlled scripts, links, attachments, dependencies, or repro steps, including as a later conditional step. Prefer maintainer-controlled reproductions, inert excerpts, safe local fixtures, and static reasoning. Active testing needs explicit authorization for target, environment, account, timing, test type, and command provenance. If context is missing, return `Verdict: BLOCK` with open questions.

## Steps

1. Scope the artifact and evidence basis.
2. Map actors, tenants, data, entry points, and trust boundaries.
3. Trace untrusted input, credentials, and authority checks.
4. Review access control, auth/session/OAuth/JWT, injection/XSS/CSRF/XXE/deserialization, SSRF/redirects, browser/CORS/headers, uploads/downloads/path construction, APIs/GraphQL/WebSockets/webhooks, secrets/logging/privacy, dependencies/cloud, and DoS/ReDoS.
5. Classify each issue with severity `CRITICAL`, `HIGH`, `MEDIUM`, or `LOW`, and classification `Confirmed issue`, `Likely risk`, `Open question`, `Accepted tradeoff`, `Test gap`, or `Defense-in-depth`.

## Output

Return `Verdict`, `Scope`, `Trust map`, `Findings`, `Checklist coverage`, `Focused deep-dive areas`, `Regression tests`, and `Residual risk`.

Verdict mapping:

- `BLOCK`: confirmed `CRITICAL`, uncompensated `HIGH`, unresolved required context, or missing validation for a security-sensitive fix.
- `CONCERNS`: lower severity, compensated risk, owned follow-up, or non-blocking test/hardening gap.
- `CLEAN`: no material findings after applicable checklist items and regression evidence are reviewed; never return `CLEAN` when required context or regression evidence is missing.

Use [references/WORKFLOW.md](references/WORKFLOW.md) for the full checklist and evidence standards.
