Bug bounty report formatting for HackerOne, Bugcrowd, Immunefi, and GitHub Security Advisories. Load after validate_finding succeeds and the finding needs to be submitted to a bounty program.
76
95%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Format validated findings as platform-ready bug bounty reports that survive triage. Optimized for acceptance rate, not word count. The standard this targets: 7.00 HackerOne signal — precision over volume.
Format: [Component]: [Vulnerability Class] via [Mechanism]
Good titles (from real accepted advisories):
zrok: WebDAV drive backend follows symlinks outside DriveRoot, enabling host filesystem read/writeParse Server: cloud function validator bypass via prototype chain traversalDirectus: TUS Upload Authorization Bypass Allows Arbitrary File Overwritelodash: Code Injection via _.template imports key namesAVideo: Unauthenticated SSRF via HTTP redirect bypass in LiveLinks proxyOpenFGA: Unauthenticated playground endpoint discloses preshared API keyRules:
Write to workspace/findings/BOUNTY-{finding_id}.md:
# {Title}
## Summary
{One paragraph. State what the bug is, where it lives (file:line or endpoint),
and what impact it has. Three sentences maximum.}
## Severity
**CVSS 3.1**: {full vector string} ({score} {severity_label})
| Metric | Value | Justification |
|--------|-------|---------------|
| AV | Network | Exploitable over HTTP |
| AC | Low | No special conditions |
| PR | None | No authentication required |
| UI | None | No user interaction |
| S | Unchanged | Impact limited to vulnerable component |
| C | High | Full read access to filesystem |
| I | None | No write capability demonstrated |
| A | None | No availability impact |
## Affected Version
- Package: {name}
- Version: {exact version or range}
- Commit: {commit hash if applicable}
## Steps to Reproduce
1. {Exact setup step — e.g., "Clone the repository: `git clone ...`"}
2. {Exact action — e.g., "Start the server: `npm start`"}
3. {Exact exploit — e.g., "Send the following request:"}
## Proof of Concept
\```bash
{Exact command that demonstrates the vulnerability}
\```
**Expected response (vulnerable):**
\```
{Exact output showing exploitation}
\```
**Baseline response (not vulnerable):**
\```
{Output from the same request without the payload}
\```
## Impact
{What an attacker can actually do with this bug. Only state impacts you
demonstrated in the PoC. Do NOT extrapolate to theoretical scenarios.}
## Remediation
{Specific code fix. Show the diff or the corrected code.}
\```diff
- const user = db.query(`SELECT * FROM users WHERE id=${req.params.id}`)
+ const user = db.query(`SELECT * FROM users WHERE id=$1`, [req.params.id])
\```Before writing the report, verify each item:
Component: VulnClass via Mechanism formatkg_query(kind="finding"))https://www.first.org/cvss/calculator/3.1#CVSS:3.1/...4484f85
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.