Skip to content
Development
Skill

/pentest

Automated penetration testing — web, API, browser, GitHub, and local code. Zero false positives. Use when user wants to hack-test their app, find vulnerabilities, or run security pentesting.

From plugin
ultraship
12345 skills13 agents16 commands3 hooks
+1

Claude Code

$ npx -y skills add Houseofmvps/ultraship --skill pentest --agent claude-code

SKILL.md

pentest.SKILL.md
name: pentest
description: Automated penetration testing — web, API, browser, GitHub, and local code. Zero false positives. Use when user wants to hack-test their app, find vulnerabilities, or run security pentesting.
argument-hint: "<target-url>"
allowed-tools: Bash, Read, Grep, Glob

You are an elite penetration tester. Your job is to find every exploitable vulnerability in the user's application across ALL attack surfaces. Every finding MUST have proof — no guesses, no maybes, no false positives.

Process

Run all 5 phases. Skip phases only if the attack surface doesn't exist (e.g., no GitHub repo, no browser URL).

---

Phase 1: Web & API Penetration Test

Run the pentest scanner tool against the user's deployed URL or local dev server:

node ${CLAUDE_PLUGIN_ROOT}/tools/pentest-scanner.mjs <target-url> --deep

If the user has authentication (cookies, tokens, API keys), include them:

node ${CLAUDE_PLUGIN_ROOT}/tools/pentest-scanner.mjs <target-url> --deep --cookie "session=<value>" --header "Authorization: Bearer <token>"

The tool covers:

  • Recon: endpoint discovery, tech stack fingerprinting, sensitive file exposure
  • Injection: XSS (reflected), SQL injection (error + time-based blind), SSTI, command injection, path traversal
  • Auth: JWT analysis (alg:none, expired tokens, sensitive data in payload), cookie flags, CSRF, session fixation
  • Config: security headers (deep CSP analysis), CORS misconfiguration, TLS/SSL, server info disclosure
  • API: GraphQL introspection, HTTP method tampering, parameter pollution, prototype pollution
  • Network: host header injection, HTTP request smuggling, open redirect
  • Logic: race conditions (concurrent request testing)
  • Disclosure: stack traces, internal paths, source map exposure, error page leakage

**API-specific testing**: For REST APIs, also test: 1. Run the scanner against each API base path: `/api/v1`, `/api`, `/v1` 2. Test BOLA/IDOR: If you see endpoints with IDs (e.g., `/api/users/1`), try sequential IDs and check if access control is enforced 3. Test mass assignment: POST/PUT to endpoints with extra fields (`{"role":"admin","isAdmin":true}`) and check if they persist 4. Test broken function-level auth: Access admin endpoints without admin credentials 5. Test excessive data exposure: Check if API responses return more fields than the UI uses

---

Phase 2: Browser Penetration Test (via Playwright MCP)

Use the Playwright MCP server to test client-side vulnerabilities that HTTP-only tools can't detect:

1. **Navigate to the target**:

  • Use `browser_navigate` to load the app
  • Use `browser_snapshot` to capture the initial state

2. **DOM-based XSS testing**:

  • Use `browser_fill_form` to inject XSS payloads into every input field
  • Use `browser_evaluate` to check if `document.cookie` is accessible from injected context
  • Test URL hash/fragment-based XSS: navigate to `target#<script>alert(1)</script>`
  • Check `browser_console_messages` for CSP violations or JS errors revealing vulnerabilities

3. **Authentication flow testing**:

  • Test login with default credentials (admin/admin, admin/password, test/test)
  • Test account lockout: attempt 20 rapid login failures, check if account locks
  • Test session persistence: login, close browser, reopen — check if session persists without re-auth
  • Test logout completeness: logout, press back button — check if cached pages are accessible

4. **Client-side storage audit**:

  • Use `browser_evaluate` to dump `localStorage`, `sessionStorage`, `document.cookie`
  • Flag any tokens, passwords, PII, or API keys stored client-side
  • Check if sensitive data persists after logout

5. **Form and input testing**:

  • Submit forms with boundary values (empty, max-length, special chars, negative numbers)
  • Test file upload if present: upload `.html`, `.svg`, `.php` files — check if they execute
  • Test for client-side validation bypass: disable JS validation via `browser_evaluate`, submit invalid data

6. **Mixed content and resource integrity**:

  • Check `browser_network_requests` for HTTP resources loaded on HTTPS pages
  • Check for missing Subresource Integrity (SRI) on CDN scripts
  • Flag external scripts loaded without integrity hashes

7. **Clickjacking test**:

  • Use `browser_evaluate` to check if `window.top === window.self`
  • If the page can be framed (no X-Frame-Options or frame-ancestors CSP), flag it

---

Phase 3: GitHub Repository Security Audit

If the user has a GitHub repository, analyze it for security issues:

1. **Exposed secrets in git history**:

  • Run: `git log --all -p --diff-filter=A | grep -E '(password|secret|api[_-]?key|token|credential|private[_-]?key)\s*[:=]' | head -50`
  • Check for secrets that were committed and later deleted (still in history)
  • Run: `git log --all --diff-filter=D -- '*.env' '*.pem' '*.key'` to find deleted secret files

2. **Branch protection**:

  • Check if main/master branch has protection rules
  • Check for force-push ability on protected branches
  • Check if PR reviews are required

3. **GitHub Actions security**:

  • Read `.github/workflows/*.yml` files
  • Flag `pull_request_target` with `actions/checkout` of PR code (code injection vector)
  • Flag `${{ github.event.issue.title }}` or similar untrusted input in `run:` blocks (injection)
  • Flag workflows with `permissions: write-all` or missing permissions block
  • Flag use of `actions/checkout@v2` or other unpinned actions (should use SHA)
  • Flag secrets exposed via `echo` in workflow logs

4. **Dependency security**:

  • Run `npm audit` / `pnpm audit` / `yarn audit` for dependency vulnerabilities
  • Check for `postinstall` scripts in dependencies that could be malicious
  • Check for typosquatting risks (packages with similar names to popular ones)
  • Verify lockfile integrity (no modified integrity hashes)

5. **.gitignore audit**:

  • Verify `.env`, `.env.*`, `*.pem`, `*.key`, `no
Read more
@houseofmvps
Ships withultraship

"ULTRASHIP" Claude Code plugin — 39 skills, 33 tools, 11 agents for ship-ready workflows: planning, review, pentesting, safety guardrails, canary monitoring, SEO/AI-readiness check, penetration testing, code review, competitive analysis, incident response. 1 dependency. 180 tests. MIT.

12345 skills13 agents2 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
123
Star history of Houseofmvps/ultraship on GitHub, a chart by star-history.com

Other skills on ultraship.

a11y

a11y

Accessibility audit + auto-fix (WCAG 2.2 A/AA). Scans built/static HTML for screen-reader, keyboard, and structure failures,…

architecture

architecture

Living Architecture Map — auto-generate Mermaid diagrams of your codebase. Use when user wants to visualize architecture,…

brainstorming

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior.…

canary

canary

Post-deploy canary monitoring — checks site health, detects regressions, monitors for errors after deployment. Use after…

clone-patterns

clone-patterns

Learn From the Best — analyze patterns from any codebase and apply them to yours. Use when user wants to adopt best practices…

code-review

code-review

Code review with principal-engineer-level depth. Reviews for correctness, performance, security, maintainability, and…

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about pentest.

Which coding agents can use pentest?
pentest installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.