Skills for Real Engineers. Straight from my .agents directory.
hunt-exceptional-conditions
Agent skill fromelementalsouls/Claude-BugHunter
Hunt mishandling of exceptional conditions — feed an endpoint malformed/unexpected input (wrong type, broken JSON, oversized field, null byte) and make it fail OPEN or leak internals: a verbose stack-trace / framework error page that discloses ORM internals, server file paths, library versions, or a language traceback. Use on any input-accepting endpoint (JSON APIs, forms, query params). Medium-High when the leak exposes internal structure that arms a deeper attack.
How to install hunt-exceptional-conditions
npx skills add elementalsouls/Claude-BugHunter# or add only this skill to Claude Code: copy the folder
skills/hunt-exceptional-conditions/
# into
~/.claude/skills/hunt-exceptional-conditions/ (all projects)
.claude/skills/hunt-exceptional-conditions/ (one project)
1# HUNT-EXCEPTIONAL-CONDITIONS — Verbose Errors / Fail-Open (A10:2025)23## What actually pays45Well-built apps catch errors and return a clean, generic message. A broken app,6when handed input it didn't expect, throws an unhandled exception and renders a7**developer error page** straight to the client — leaking the stack trace, the8ORM/query internals, server-side file paths, and framework/library versions.9That disclosure is the finding (and it arms SQLi/RCE/path attacks next).1011## Recon1213Any endpoint that parses input is a candidate; the richest are:1415```16JSON APIs that expect typed fields: POST /api/* with {numbers, ids, enums}17Endpoints with numeric/id path or query params: /item/{id}, ?page=, ?quantity=18Search / filter / sort params19File or content-type sensitive uploads20```2122## Attack — send what the code didn't anticipate2324Take a known-good request and break ONE assumption at a time:2526- **Wrong type:** a field the app expects to be a number/string is sent as an27 array or object — `{"rating":"x","comment":[1,2,3]}`, `{"quantity":{}}`.28- **Malformed body:** truncated/!invalid JSON, an unterminated string, a stray29 brace, a wrong/missing Content-Type.30- **Boundary/oversized:** a very long string, a huge/negative/overflow number.31- **Null byte / control chars** embedded in a value.3233```34POST /api/Feedbacks {"rating":"notanumber","comment":[1,2,3]}35GET /item/' OR /item/%00 (also exercises the error path)36```37…
Excerpt shown under the repository's MIT license.
More skills in Claude-BugHunter
Similar skill repositories
Public repository for Agent Skills
Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Production-grade engineering skills for AI coding agents.
The open-source app everyone uses to manage agents at work
The design vocabulary for your coding agent. Steer with polish and bolder, review with critique and audit, catch AI slop before it ships.
