pentest-web

pentest-web is a skill for Claude Code from fatihkan/badi. It costs 75 tokens per session (1,145 once invoked), scanned A, original, MIT.

A guide for testing web applications for common security weaknesses, including broken access controls, injection, cross-site scripting, request forgery, and authentication problems. It can review results from Burp or ZAP, tools that inspect web requests and responses.

In plain words
What is it for?
Use it to work through the OWASP Top 10 checklist, review Burp or ZAP output, and assess issues such as SQL injection, IDOR, SSRF, request smuggling, and session flaws.
Why use it?
It gives a systematic way to check a web application and separate likely findings from noisy scan results, while requiring a declared scope before live exploit steps.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: mentions Claude Code.

Needs its repository: it reads a path above its own folder, which exists only inside the repository. The line is # kid: ../../etc/passwd -> path traversal.

Part of the badi plugin — 81 skills, 86 commands, 30 agents, 7 hooks shipped together

Good fit Use it to work through the OWASP Top 10 checklist, review Burp or ZAP output, and assess issues such as SQL injection, IDOR, SSRF, request smuggling, and session flaws.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/fatihkan/badi
agentmods
npx agentmods add skills/fatihkan/badi/pentest-web

Made for: Claude Code.

Or install badi, the plugin that ships this one along with the rest of its 81 skills, 86 commands, 30 agents, 7 hooks.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for pentest-web

README.md
[![agentmods](https://agentmods.dev/badge/skills/fatihkan/badi/pentest-web.svg)](https://agentmods.dev/skills/fatihkan/badi/pentest-web)
Your own site
<a href="https://agentmods.dev/skills/fatihkan/badi/pentest-web"><img src="https://agentmods.dev/badge/skills/fatihkan/badi/pentest-web.svg" alt="Measured on agentmods" height="20"></a>
Per session 75 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,145 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 1 finding, up to high

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • high Privilege Escalation · line 101
    Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
    Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
How audits are shown
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.1 $0.00075 $0.01145
Opus 5 $0.00037 $0.00573
Sonnet 5 $0.00015 $0.00229
Haiku 4.5 $0.00007 $0.00114

Measured yesterday against content hash e73edefc0f79, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

pentest-web 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 yesterday.

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.

curl -sI https://<target> | grep -iE 'content-security-policy|x-frame-options|strict-transport|x-content-type'
.claude/skills-vault/pentest-web/SKILL.md · 118 lines

How it starts

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

pentest-web

Web app attack-surface advisory + Burp/ZAP output analysis + OWASP Top 10 methodology. Live exploit composing requires a scope declaration; no automatic exploit execution.

Triggers

  • "OWASP Top 10 test"
  • "review the Burp output"
  • "did we find a SQL injection"
  • "let's run an XSS test"
  • "can you look for SSRF / IDOR / auth bypass"
  • "request smuggling"

OWASP Top 10 Checklist

# Category Test Approach
A01 Broken Access Control Yatay/dikey IDOR, force browse, JWT manipulation
A02 Cryptographic Failures TLS config, password hash, sensitive data unencrypted
A03 Injection SQLi (in-band, blind, OOB), NoSQL, OS command, XPath
A04 Insecure Design Missing rate limit, business logic flaw
A05 Security Misconfig Default cred, verbose error, exposed admin panel
A06 Vulnerable Components Dependency CVE, framework version
A07 Auth Failures Brute force, password reset, session fix
A08 Software/Data Integrity Unsigned update, deserialization
A09 Logging Failures Bypass detection, audit gap
A10 SSRF Internal port reach, cloud metadata steal

Burp/ZAP Output Analysis

If the user pastes a Burp Pro/CE or ZAP report:

## Burp Active Scan — analysis

### True Positive
- High: SQL Injection in /api/users?id= (Time-based, MySQL)
  - Payload: `1' AND SLEEP(5)-- -`
  - Impact: Full DB read + potential RCE (if FILE priv exists)
- Medium: Reflected XSS in /search?q= (no CSP)

### False Positive (filtered out)
- Info: Server header reveals nginx — not an info leak, low fix priority
- Low: Cookie missing HttpOnly — server-only cookie, no JS access

### Suggested Manual Test
- IDOR check /api/users/{id} — auth bypass attempt
- Race condition /api/purchase (5 parallel requests)
- JWT alg=none + RSA key swap via alg=HS256

Common Methodology Flow

1. Recon: subfinder + httpx + wappalyzer
2. Crawl: ffuf / gobuster / katana (rate-limited)
3. Param discovery: paramspider / Arjun
4. Active probe: nuclei templates + manual Burp
5. Auth test: JWT decode + signature check + algorithm swap
6. Bizlogic: race, IDOR, price manipulation (hand off to pentest-bizlogic)
7. Report: OWASP severity + CVSS + remediation

Read the full file on GitHub · 118 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. yesterday First seen · 118 lines · 75 tokens per session scan A e73edefc0f79

Subscribe to this mod's changes

pentest-web is a skill published in the GitHub repository fatihkan/badi (7 stars, last pushed 2d ago), licensed MIT. It adds 75 tokens to every session and 1,145 once invoked, about $0.0004 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-09-06.

Related

Other skills, from other repositories

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

AvinashP/AgentsAtlas · 35 tokens

eval-agents

Audit Claude Code agents defined in .claude/agents/ for description specificity, model tier appropriateness, tools scoping, and system prompt quality. Detects dispatch ambiguity between agents, flags over-permissive tool grants, and checks for human-in-the-loop patterns that break programmatic orchestration. Use when…

FlorianBruniaux/claude-code-plugins · 93 tokens

issue-triage

3-phase issue backlog management with audit, deep analysis, and validated triage actions. Use when triaging GitHub issues, sorting bug reports, cleaning up stale tickets, or detecting duplicate issues. Args: 'all' to analyze all, issue numbers to focus (e.g. '42 57'), 'en'/'fr' for language, no arg = audit only.

FlorianBruniaux/claude-code-plugins · 81 tokens

git-ai-archaeology

Analyze AI config evolution in a git repo. Use when mapping AI adoption history, finding when configs were first introduced, charting commit velocity by month, or identifying maturity phases in a project's AI tooling.

FlorianBruniaux/claude-code-plugins · 47 tokens

landing-page-generator

Generate complete, deploy-ready landing pages from any repository. Use when creating a homepage for an open-source project, building a project website, converting a README into a marketing page, or standardizing landing pages across multiple repos.

FlorianBruniaux/claude-code-plugins · 48 tokens

review-pr

Perform a comprehensive code review of a pull request.

FlorianBruniaux/claude-code-plugins · 12 tokens