stackhawk-hawkscan-high-iteration

A troubleshooting guide for recurring HawkScan, a web-application security scanner, findings involving content security policy, cross-origin access, authentication, and security headers. It defines basic fixes, verification commands, rescans, and when to stop and report the issue.

In plain words
What is it for?
Use it to fix and verify CSP, CORS, authentication, and missing-header findings, decide when a rescan is warranted, and escalate findings that remain unresolved.
Why use it?
It prevents repeated scan-and-fix loops by showing how to verify each change and setting limits for complex findings.

Cursor rule for Cursor

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add rules/stackhawk/agent-skills/stackhawk-hawkscan-high-iteration
Clone the repo
git clone --depth 1 https://github.com/stackhawk/agent-skills

Made for: Cursor.

Per session 92 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,428 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00092 $0.01428
Opus 5 $0.00046 $0.00714
Sonnet 5 $0.00018 $0.00286
Haiku 4.5 $0.00009 $0.00143

Measured 2d ago against content hash ce8832ad22b2, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

stackhawk-hawkscan-high-iteration scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

HawkScan high-iteration findings guide: per-finding fix guidance for CSP, CORS, Auth (unprotected endpoint), and Missing Security Headers. Covers why each finding fires, minimal done fix, curl verification command, resca
cursor/.cursor/rules/stackhawk-hawkscan-high-iteration.mdc · 138 lines

How it starts

The opening of the file, as written. The whole thing — 138 lines — stays where its author put it; the contents beside it link to each section on GitHub.

High-Iteration Findings Reference

Findings that commonly cause agents to loop. For each, "done" is defined — use the verify command before rescanning, and escalate at the threshold instead of continuing.

Contents


Escalation thresholds:

  • 2 rescans for complex policy/config findings: CSP, CORS, Auth
  • 1 rescan for simple additive fixes: Missing Security Headers

Iteration-limit note: Guard Rails says "max one fix-rescan cycle per task" — that applies to the autonomous loop as a whole. The escalation thresholds below apply within a single fix attempt for a specific finding. After escalating, report the finding rather than restarting the full loop.


Content Security Policy (CSP)

Why it fires: Missing Content-Security-Policy header, or header present but uses unsafe-inline, unsafe-eval, or wildcard (*) sources.

Minimal done fix:

  • HTML-serving routes: Add a CSP header eliminating wildcards and unsafe-* directives. Starter policy: Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self'
  • JSON/API endpoints that never serve HTML: Mark as false positive — CSP is inapplicable to non-HTML responses. Use the hawk op scan triage command from Step 5.

Verify before rescanning:

curl -sI <url> | grep -i content-security-policy

If this returns empty, the header isn't being sent — check middleware order and route scope before rescanning. Do not rescan until the header appears here.

Rescan expectation: 0 CSP findings for the fixed paths.

Escalate when: The header appears in curl -sI output but the scanner still fires after 2 rescans. Stop iterating; surface the specific directive the scanner objects to and ask the user.

Read the full file on GitHub · 138 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 138 lines · 92 tokens per session scan A ce8832ad22b2

Subscribe to this mod's changes

stackhawk-hawkscan-high-iteration is a cursor rule published in the GitHub repository stackhawk/agent-skills (15 stars, last pushed 12d ago), licensed MIT. It adds 92 tokens to every session and 1,428 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.