hunt-shadow-api

Enumerate API version history and behaviorally diff old versus current endpoints for security regressions.

1|Updated Aug 21, 2026
One-click install
npx skills add https://github.com/marcboggs/BMAD-AppSec-Orchestrator --skill hunt-shadow-api-marcboggs
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: hunt-shadow-api
Source: https://github.com/marcboggs/BMAD-AppSec-Orchestrator/tree/main/.claude/skills/hunt-shadow-api
Command: npx skills add https://github.com/marcboggs/BMAD-AppSec-Orchestrator --skill hunt-shadow-api-marcboggs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Old API versions, deprecated routes, and undocumented endpoints often stay reachable without receiving the security fixes applied to the current version, creating shadow and zombie API attack surface that standard testing misses. ## Core Features & Use Cases - Version Surface Enumeration: Probes path-based, header-based, and subdomain-based API versioning to find every live version of an API. - Spec Discovery and Diffing: Pulls current and archived OpenAPI/Swagger specs (including via the Wayback Machine) and diffs endpoint inventories to find zombie routes. - Behavioral Regression Testing: Compares auth strength, rate limiting, input validation, and field exposure between old and current versions of the same operation. - Use Case: During an authorized engagement, you find a mobile app hardcoding calls to /api/v1/ while the web app uses /api/v2/. This skill walks you through confirming v1 is live, diffing its spec against v2, and testing whether v1 accepts expired tokens or skips rate limits. ## Quick Start Ask the agent to enumerate all reachable API versions on the authorized target and behaviorally diff the oldest live version against the current one for auth, rate-limit, and validation regressions.

Frequently Asked Questions about hunt-shadow-api

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

FAQPage Schema
How do I find shadow or zombie API endpoints on a target?▼

Enumerate versioned paths like /v1/, /beta/, and /legacy/ with curl, probe header-based versioning via X-API-Version or Accept headers, and check versioned subdomains. Any response other than 404 indicates a live version worth testing further.

How to diff two OpenAPI specs to find removed endpoints?▼

Extract path keys from each spec with jq, sort them, and use comm to list paths present only in the older spec. Then confirm each candidate is still reachable against the old base URL to identify zombie endpoints.

Can the Wayback Machine help find deprecated API documentation?▼

Yes, the Wayback Machine CDX API often retains archived Swagger and OpenAPI specs after the live links are removed. Query web.archive.org/cdx with wildcard patterns for swagger and openapi paths on the target domain.

What counts as a real finding versus a false positive in API version diffing?▼

A finding requires a security-relevant regression such as weaker auth, missing rate limits, or laxer validation on the old version. Cosmetic response-shape differences, version strings, and static deprecation notices are informational only.

When should I not use API version diffing?▼

Skip it when the target has a single API version with no version history, since there is nothing to diff. In that case, proceed directly to exploitation-focused testing of the one existing surface.