Testing playbook · intermediate

API Hunting Methodology

Discover, understand, and abuse API surface - usually where the real vulns hide.

apirestgraphql
Stable IDplaybook:api-huntingLast updatedLast verifiedLegacy review pendingProvenanceCurated workflow
Detection firstStop as soon as the evidence decisively supports or falsifies the hypothesis.

Every step requires authorization. Review side effects before running commands against a live system.

01

Discover endpoints

Pull JS, historical URLs, and Swagger/OpenAPI docs to build the endpoint map.

katana -u https://target.com -jc -silent | anew urls.txt; gau target.com | anew urls.txt
Evidence checkpointSave the request or command, raw result, timestamp, target, and a negative control before continuing.
02

Find hidden parameters

Infer undocumented parameters on interesting endpoints.

arjun -u https://target.com/api/v1/user -oT params.txt
Evidence checkpointSave the request or command, raw result, timestamp, target, and a negative control before continuing.
03

Probe authz per endpoint

Test every endpoint unauthenticated, as a low-priv user, and cross-tenant. BOLA/BFLA are the top API risks.

Evidence checkpointSave the request or command, raw result, timestamp, target, and a negative control before continuing.
04

Check versioning & docs

Old versions (/api/v1 vs /v2) and exposed Swagger often reveal deprecated, less-protected routes.

ffuf -u https://target.com/api/FUZZ -w api-wordlist.txt -mc 200,401,403
Evidence checkpointSave the request or command, raw result, timestamp, target, and a negative control before continuing.

Common guidance

  • GraphQL: try introspection, then batch/alias abuse and field-level authz.
  • Mass assignment: add extra JSON fields (role, is_admin) and see if they stick.

Mapped workflow tools

References

Version history: normalized permanent page created 2026-08-20.