hunt-api-misconfig

Detect API mass assignment, prototype pollution, and HTTP verb tampering vulnerabilities.

Updated Sep 6, 2026
One-click install
npx skills add https://github.com/inventashif/helpful-code-sidekick --skill hunt-api-misconfig-inventashif
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: hunt-api-misconfig
Source: https://github.com/inventashif/helpful-code-sidekick/tree/main/scripts/hackerai/skills/bughunter/hunt-api-misconfig
Command: npx skills add https://github.com/inventashif/helpful-code-sidekick --skill hunt-api-misconfig-inventashif

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? APIs frequently trust client-supplied input too much, letting attackers escalate privileges through mass assignment, pollute JavaScript object prototypes, or bypass controls with HTTP verb tampering. This Skill gives security testers a structured methodology and concrete payloads to find and prove these API misconfiguration vulnerabilities during authorized bug bounty hunting. ## Core Features & Use Cases - Mass Assignment Testing: Send privileged fields like is_admin, role, and verified to profile, account, and reset endpoints to detect servers that blindly apply request bodies. - Prototype Pollution Hunting: Follow a five-step sequence from finding object-merge endpoints, injecting proto markers, triggering sinks, to escalating through learned gadget properties in Node.js applications. - Server-Side Parameter Pollution: Detect when user input is interpolated into backend REST URL paths, using path traversal and fragment truncation to reach other users' fields such as password reset tokens. - OData and Swagger Surface Attacks: Exploit OData $filter/$orderby WAF bypasses and exposed Swagger/OpenAPI specs to map hidden endpoints and build mass-assignment payloads. - Use Case: While testing a target's password reset flow, you discover the username parameter lands in a backend API path, traverse to another user's passwordResetToken field, and prove account takeover through the normal application flow. ## Quick Start Ask the AI to test the target's profile update endpoint for mass assignment by adding role and is_admin fields to the request body.

Frequently Asked Questions about hunt-api-misconfig

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I test an API for mass assignment vulnerabilities?

Send privileged fields such as is_admin, role, verified, or tenant_id in the body of profile, account, signup, or reset endpoints and check whether the server applies them. If the response or subsequent session reflects the elevated attribute, the endpoint blindly binds client input to the model.

How to find prototype pollution in a Node.js API?

Target JSON object-update endpoints like profile, settings, or preferences and inject __proto__ or constructor.prototype markers. Then trigger a separate sink endpoint and compare against baseline; changed defaults, errors, or job behavior confirm the polluted prototype reached a sink.

What is server-side parameter pollution in REST URL construction?

It occurs when user input is interpolated into a backend API path or query, such as /api/users/<username>. Sending metacharacters like %23, %2f, or ../ lets you traverse routes and append fragments like /field/passwordResetToken to read other users' sensitive fields.

Does this skill cover JWT algorithm confusion attacks?

It documents alg=none and RS256-to-HS256 confusion examples, but the frontmatter states JWT signature and crypto forging is owned by the hunt-jwt-crypto skill. This skill covers only non-crypto JWT handling, so use the dedicated skill for full JWT attacks.

Why does a WAF miss OData $filter injection payloads?

OData operators like startswith, substringof, and eq look unlike SQL keywords, so SQLi blacklist signatures never fire. Encoded variants like %24filter or double-encoded %2524filter, plus $batch multipart wrapping, further evade WAFs that only scan canonical outer requests.

When should I stop escalating a prototype pollution finding?

Stop at a controlled, non-destructive marker such as a polluted status code or JSON spacing property in production. Only read secrets or environment data when the scope explicitly authorizes it, and prove impact through admin job or rendering endpoints that consume polluted defaults.