agentleFS
Mikacr1138Mikacr1138/claude-bug-bounty/skills/triage-validation/SKILL.md

triage-validation

Skill3 starsChanged 8 months agoMITView on GitHub

Finding validation before writing any report — 7-Question Gate (all 7 questions), 4 pre-submission gates, always-rejected list, conditionally valid with chain table, CVSS 3.1 quick reference, severity decision guide, report title formula, 60-second pre-submit checklist. Use BEFORE writing any report. One wrong answer = kill the finding and move on. Saves N/A ratio.

We split this skill into the rules it gives an agent

5 rules. 5 are common, 0 are distinctive, and 0 are very specific to this project.

  • 5

    Common

    Most of the 11 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Common:

    Ask IN ORDER. One wrong answer = STOP immediately.

    line 16
  2. Common:

    Check the NEVER SUBMIT list below.

    line 94
  3. Common:

    Run in sequence. ALL 4 must PASS.

    line 100
  4. Common:

    5-minute rule: If you can't fill in Q1's template in 5 minutes → move on

    line 233
  5. Common:

    Design doc test: If it's documented behavior → kill it immediately

    line 237

“Common” is measured: kept by at least 6 in 10 of the 11 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

TRIAGE & VALIDATION

One wrong answer = STOP. Kill it. Move on.

"N/A hurts your validity ratio. Informative is neutral. Only submit what passes all 7 questions."


THE 7-QUESTION GATE

Ask IN ORDER. One wrong answer = STOP immediately.


Q1: Can an attacker use this RIGHT NOW, step by step?

Complete this template:

1. Setup:   I need [own account / another user's ID / no account]
2. Request: [exact HTTP method, URL, headers, body — copy-paste ready]
3. Result:  I can [read / modify / delete] [exact data shown in response]
4. Impact:  The real-world consequence is [account takeover / PII read / money stolen]
5. Cost:    Time: [X minutes], Capital: [$0 / $X subscription required]

If you CANNOT write step 2 as a real HTTP request → KILL IT.


Q2: Is the impact on the program's accepted impact list?

Go to the program page. Find "Vulnerability Types" or "Out of Scope."

Common tiers:

  • Critical: Any-user ATO without interaction, RCE, SQLi with data exfil, admin auth bypass
  • High: Mass PII exfil, privilege escalation, internal SSRF with data, stored XSS all users
  • Medium: IDOR on specific user non-critical data, XSS on sensitive page requiring click
  • Low: Non-sensitive info disclosure, clickjacking with PoC

If your bug maps to a listed exclusion → KILL IT.


Q3: Is the root cause in an in-scope asset?

Confirm:

  • Vulnerable domain is on the in-scope list (not *.internal.target.com)
  • It's a production asset (not staging/dev unless explicitly in scope)
  • It's not a third-party service the company just uses (not Stripe, Salesforce, Google Auth)

If out-of-scope → KILL IT.


Q4: Does it require privileged access that an attacker can't realistically get?

  • "Admin can do X" = centralization risk = KILL IT (on 99% of programs)
  • "Non-admin can do X that only admin should do" = valid
  • "Requires physical access / MFA device" = usually invalid
  • "Requires compromised victim account to work" = questionable, low severity at best

Q5: Is this already known or accepted behavior?

Search:

  1. Program's HackerOne/Bugcrowd disclosed reports: Ctrl+F endpoint name + bug class
  2. GitHub issues on target repo: is:issue label:security ENDPOINT_NAME
  3. Changelog/CHANGELOG.md — does it mention this behavior?
  4. API docs / design docs — is it documented as intended?

If acknowledged/design decision → KILL IT.


Q6: Can you prove impact beyond "technically possible"?

  • XSS → show actual cookie theft or session hijack, not just alert(1) or alert(document.domain)
  • SSRF → hit an internal endpoint that returns data, not just DNS ping
  • SQLi → show actual data exfil from a real table, not just error message
  • IDOR → show actual other-user's data in response, not just a 200 status code

If you can only show "technically possible" → DOWNGRADE severity, not kill.


Q7: Is this a known-invalid bug class?

Check the NEVER SUBMIT list below. If it's on this list without a chain → KILL IT.


4 PRE-SUBMISSION GATES

Run in sequence. ALL 4 must PASS.

Gate 0: Reality Check (30 seconds)

[ ] Bug is REAL — confirmed with actual HTTP requests, not code reading alone
[ ] Bug is IN SCOPE — checked program scope page explicitly
[ ] Reproducible from scratch — can reproduce starting from fresh session
[ ] Evidence ready — screenshot, response body, or video

Gate 1: Impact Validation (2 minutes)

[ ] Can answer: "What can attacker DO that they couldn't before?"
[ ] Answer is more than "see non-sensitive data" (unless program pays for info disclosure)
[ ] Real victim: another user's data, company's data, financial loss
[ ] Not relying on victim doing something unlikely

Gate 2: Deduplication Check (5 minutes)

[ ] Searched HackerOne Hacktivity for this program + similar bug title/endpoint
[ ] Searched GitHub issues for target repo
[ ] Read most recent 5 disclosed reports for this program
[ ] Not a "known issue" in their changelog or public docs
[ ] Google: "TARGET_NAME ENDPOINT_NAME bug bounty"

Gate 3: Report Quality (10 minutes)

[ ] Title: [Bug Class] in [Endpoint] allows [actor] to [impact]
[ ] Steps to Reproduce: copy-pasteable HTTP request
[ ] Evidence: screenshot/video of actual impact (not just 200 status)
[ ] Severity: matches CVSS 3.1 score AND program's severity definitions
[ ] Remediation: 1-2 sentences of concrete fix
[ ] NEVER used "could potentially" or "may allow"

NEVER SUBMIT LIST

Submitting these destroys your validity ratio.

Missing CSP / HSTS / security headers
Missing SPF / DKIM / DMARC
GraphQL introspection alone (no auth bypass, no IDOR demonstrated)
Banner / version disclosure without working CVE exploit
Clickjacking on non-sensitive pages (no sensitive action PoC)
Tabnabbing
CSV injection (no actual code execution shown)
CORS wildcard (*) without credential exfil proof of concept
Logout CSRF
Self-XSS (only exploits own account)
Open redirect alone (no ATO or OAuth theft chain)
OAuth client_secret in mobile app (known, expected)
SSRF DNS callback only (no internal service access or data)
Host header injection alone (no password reset poisoning PoC)
Rate limit on non-critical forms (search, contact, login with Cloudflare)
Session not invalidated on logout
Concurrent sessions
Internal IP in error message
Mixed content
SSL weak ciphers
Missing HttpOnly / Secure cookie flags alone
Broken external links
Autocomplete on password fields
Pre-account takeover (usually — very specific conditions required)

CONDITIONALLY VALID — CHAIN REQUIRED

Build the chain first, prove it works end to end, THEN report.

Standalone FindingChain RequiredValid Result
Open redirect+ OAuth redirect_uri → auth code theftATO (Critical)
Clickjacking+ sensitive action + working PoCMedium
CORS wildcard+ credentialed request exfils user PIIHigh
CSRF+ sensitive action (transfer funds, change email, delete account)High
Rate limit bypass+ OTP/reset token brute force succeedsMedium/High
SSRF DNS-only+ internal service access + data returnedMedium
Host header injection+ password reset email uses injected hostHigh
Prompt injection+ reads other user's data (IDOR)High
S3 bucket listing+ JS bundles contain API keys or OAuth secretsMedium/High
Self-XSS+ CSRF to trigger it on victim without their knowledgeMedium
Subdomain takeover+ OAuth redirect_uri registered at that subdomainCritical
GraphQL introspection+ auth bypass mutation or IDOR on node()High

CVSS 3.1 QUICK REFERENCE

Common Score Examples

FindingScoreSeverityVector
IDOR read PII, any user, auth required6.5MediumAV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
IDOR write/delete, any user7.5HighAV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Auth bypass → admin panel9.8CriticalAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Stored XSS → cookie theft, stored8.8HighAV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N
SQLi → full DB dump8.6HighAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
SSRF → cloud metadata9.1CriticalAV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N
Race → double spend7.5HighAV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N
GraphQL auth bypass8.7HighAV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
JWT none algorithm9.1CriticalAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Metric Quick Guide

What you haveMetricValue
Exploitable over internetAVNetwork (N)
No special timing or raceACLow (L)
Free account neededPRLow (L)
No login neededPRNone (N)
Admin neededPRHigh (H)
No victim actionUINone (N)
Victim must clickUIRequired (R)
Reads all dataCHigh (H)
Reads some dataCLow (L)
Modifies all dataIHigh (H)
Crashes serviceAHigh (H)
Affects only appSUnchanged (U)
Affects browser/OS/cloudSChanged (C)

KILL FAST RULES

The goal is to QUICKLY disqualify bad leads so you hunt real bugs:

  1. 5-minute rule: If you can't fill in Q1's template in 5 minutes → move on
  2. Precondition count: More than 2 preconditions simultaneously required → kill it
  3. Impact test: "What does attacker walk away with?" — if nothing tangible → kill it
  4. Admin bypass: "Admin can do X" is NEVER a bug → kill it immediately
  5. Design doc test: If it's documented behavior → kill it immediately
  6. Rabbit hole signal: 30+ min on Q6 with no reproducible PoC → kill it

ANTI-PATTERNS THAT LOSE MONEY

Writing a report before confirming the bug exists (most common)
Submitting theoretical impact without proof
"The API returns more fields than necessary" (sensitivity matters — is it actually sensitive?)
Chaining A+B into one report when they're separate bugs (two separate payouts)
Reporting B saying "similar to A in my other report" — fresh Gate 0 for every bug
Overclaiming severity — triagers trust you less next time
Under-describing impact — triager doesn't understand why it matters

Download now (ZIP)

  • Other versions12 projects use a version of this.

    Word for word · 1

    1. conjure-3301/skills★ 0100% same

    Wrote their own version · 3

    1. SubhiSec/claude-ai-cyber-security-skills★ 45same name
    2. 0xGhostCAT/claude-ai-cyber-security-skills★ 41same name
    3. ivRodriguezCA/MobHunt★ 37same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • Used alongsideProjects with it also use meme-coin-audit, graphql-audit and 10 more.

    Other files people use alongside this one.

    Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
    • hhjkjkjkSkill

      meme-coin-audit

      Meme coin and token security audit — rug pull detection (honeypot, hidden mint, fee manipulation, LP lock bypass), Solana SPL token analysis (freeze authority, mint authority, metadata mutability), Token-2022 extension risks (transfer hooks, permanent delegate), DEX liquidity pool attacks (sandwich amplification, LP drain, bonding curve exploits), pump.fun/Raydium/Jupiter integration risks, token_scanner.py automation, and real exploit examples from 2024-2025. Use for any token audit, rug pull assessment, meme coin security review, or pre-investment due diligence.

      Also in 7 projects that use this

    • awarexoneSkill

      graphql-audit

      GraphQL security hunting — introspection abuse, field suggestion enumeration (clairvoyance), batching DoS, IDOR via aliasing, auth bypass, injection via arguments, subscription abuse, depth/complexity bombs, and WAF bypass. Covers graphw00f fingerprinting, GraphQLmap, graphql-cop, and inql. Use when a target exposes a /graphql, /api/graphql, or GQL-over-HTTP endpoint.

      Also in 4 projects that use this

    • hhjkjkjkSkill

      bb-methodology

      Use at the START of any bug bounty hunting session, when switching targets, or when feeling lost about what to do next. Master orchestrator that combines the 5-phase non-linear hunting workflow with the critical thinking framework (developer psychology, anomaly detection, What-If experiments). Routes to all other skills based on current hunting phase. Also use when asking "what should I do next" or "where am I in the process.

      Also in 7 projects that use this

    • awarexoneSkill

      cicd-security

      CI/CD pipeline security hunting — GitHub Actions workflow injection, secret exfiltration, self-hosted runner poisoning, dependency confusion, OIDC token theft, and supply chain attacks. Covers sisakulint scanning, manual workflow analysis, and chaining CI/CD bugs into critical findings. Use when a target has public repos, GitHub Actions, CircleCI, Jenkins, or GitLab CI.

      Also in 4 projects that use this

    • jessefmooreSkill

      mobile-pentest

      Mobile application penetration testing — Android/iOS static/dynamic analysis, Frida instrumentation, SSL pinning bypass, root/jailbreak detection bypass, deep-link abuse, exported components, insecure storage, biometric bypass

      Also in 4 projects that use this

    • +1 more from hhjkjkjk
    • +6 more from awarexone
  • In this repository8 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.