MR
Mayur Rathi
@sickn33
⭐ 47.3k GitHub stars

hunt-exceptional-conditions

hunt-exceptional-conditions is an code AI skill with a core value of Hunt mishandling of exceptional conditions. It helps developers solve real-world problems in the code domain, boosting efficiency, automating repetitive tasks, and optimizing workflows.

Hunt mishandling of exceptional conditions

Last verified on: 2026-10-06

Quick Facts

Category code
Works With Claude
Source sickn33/antigravity-awesome-skills
Stars ⭐ 47.3k
Last Verified 2026-10-06
Risk Level Low
mkdir -p ./skills/hunt-exceptional-conditions && curl -sfL https://raw.githubusercontent.com/sickn33/antigravity-awesome-skills/main/skills/hunt-exceptional-conditions/SKILL.md -o ./skills/hunt-exceptional-conditions/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

> **⚠️ AUTHORIZED USE ONLY**

> This skill is for educational purposes or authorized security assessments only.

> You must have explicit, written permission from the system owner before using this tool.

> Misuse of this tool is illegal and strictly prohibited.


> **Mandatory confirmation gate**

> Before running any command that probes, exploits, changes, persists on, extracts data from, or attempts credential access against a target:

> 1. Ask the user to state the exact target URL, IP, account, or resource.

> 2. Ask the user to confirm written authorization and the permitted scope.

> 3. Show the exact command(s) and explain their expected effect.

> 4. Wait for explicit confirmation in the current conversation.

>

> Without that confirmation, remain read-only and provide defensive guidance only. Prefer a sandbox, disposable VM, or controlled lab.


# HUNT-EXCEPTIONAL-CONDITIONS — Verbose Errors / Fail-Open (A10:2025)


What actually pays


Well-built apps catch errors and return a clean, generic message. A broken app,

when handed input it didn't expect, throws an unhandled exception and renders a

**developer error page** straight to the client — leaking the stack trace, the

ORM/query internals, server-side file paths, and framework/library versions.

That disclosure is the finding (and it arms SQLi/RCE/path attacks next).


Recon


Any endpoint that parses input is a candidate; the richest are:


text
JSON APIs that expect typed fields:  POST /api/* with {numbers, ids, enums}
Endpoints with numeric/id path or query params:  /item/{id}, ?page=, ?quantity=
Search / filter / sort params
File or content-type sensitive uploads

Attack — send what the code didn't anticipate


Take a known-good request and break ONE assumption at a time:


- **Wrong type:** a field the app expects to be a number/string is sent as an

array or object — `{"rating":"x","comment":[1,2,3]}`, `{"quantity":{}}`.

- **Malformed body:** truncated/!invalid JSON, an unterminated string, a stray

brace, a wrong/missing Content-Type.

- **Boundary/oversized:** a very long string, a huge/negative/overflow number.

- **Null byte / control chars** embedded in a value.


text
POST /api/Feedbacks   {"rating":"notanumber","comment":[1,2,3]}
GET  /item/' OR /item/%00   (also exercises the error path)

Watch the RESPONSE BODY, not just the status: a 500 (or even a 200/400) whose

body contains a stack trace or framework error page is the signal.


What counts as a leak (the success signal)


A finding is confirmed when the response body contains a cross-framework error-disclosure signature:


- **Node/Express + Sequelize:** `SequelizeDatabaseError`, `node_modules/sequelize`,

a JS stack with internal paths.

- **PHP:** `<b>Warning</b> ... /var/www/.../file.php on line N`.

- **Python:** `Traceback (most recent call last)`, `werkzeug.exceptions`.

- **Java:** `at com.app.Foo(Foo.java:42)` stack frames.

- **.NET:** `Server Error in '/' Application`, a `[System.XxxException: ...]` YSOD.


A clean JSON error (`{"error":"Invalid input"}`) with no internals is NOT a

finding — that's correct handling. Disclosure of internal structure is.


Validation discipline


- Capture the exact leaked artifact (path, ORM class, version, stack frame) —

that's the evidence. "It returned 500" alone is not disclosure.

- Note what the leak enables next (e.g. a disclosed SQL error → hunt-sqli; a

disclosed absolute path → hunt-lfi).


When to Use


- You have explicit, written authorization to assess the target in scope, and the task matches this skill's vulnerability class or technique within a bug-bounty or penetration-test engagement.

- You need the recon, exploitation, or validation workflow described below — executed strictly inside the approved scope.


Limitations


- Authorized scope only: the confirmation gate above is mandatory before any probing, exploitation, or credential-access command.

- Docs-only import: upstream helper scripts, commands, engine, and research assets are not bu

🎯 Best For

  • Claude users
  • Software engineers
  • Development teams
  • Tech leads

💡 Use Cases

  • Code quality improvement
  • Best practice enforcement

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply hunt-exceptional-conditions to Your Work

    Open your project in the AI assistant and ask it to apply the skill. Start with a small module to verify the output quality.

  4. 4

    Review and Refine

    Review AI suggestions before committing. Run tests, check for regressions, and iterate on the skill output.

❓ Frequently Asked Questions

Is hunt-exceptional-conditions compatible with Cursor and VS Code?

Yes — this skill works with any AI coding assistant including Cursor, VS Code with Copilot, and JetBrains IDEs.

Do I need specific dependencies for hunt-exceptional-conditions?

Check the install command and Works With section. Most code skills only require the AI assistant and your codebase.

How do I install hunt-exceptional-conditions?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/hunt-exceptional-conditions/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Skipping validation

Always test AI-generated code changes, even for simple refactors.

Missing dependency updates

Check if the skill requires updated dependencies or new packages.

🔗 Related Skills