testing-api-for-broken-object-level-authorization

Tests REST and GraphQL APIs for BOLA/IDOR vulnerabilities by swapping object identifiers between authenticated users.

4|Updated Apr 28, 2026
One-click install
npx skills add https://github.com/braydos-h/BreachPilot --skill testing-api-for-broken-object-level-authorization-braydos-h
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: testing-api-for-broken-object-level-authorization
Source: https://github.com/braydos-h/BreachPilot/tree/main/skills/testing-api-for-broken-object-level-authorization
Command: npx skills add https://github.com/braydos-h/BreachPilot --skill testing-api-for-broken-object-level-authorization-braydos-h

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires requests, and includes scripts (resource) and references (resource) components.

What problem does it solve? APIs often authenticate users but fail to verify per-object authorization, letting one authenticated user read, modify, or delete another user's data by changing an object ID in the request. This Skill provides a systematic workflow to detect these Broken Object Level Authorization (BOLA/IDOR) flaws, the top risk in the OWASP API Security Top 10 2023. ## Core Features & Use Cases - Horizontal privilege escalation testing: Replay requests with one user's token against another user's object IDs across GET, PATCH, DELETE, and batch endpoints. - Object ID classification and enumeration: Identify sequential integers, UUIDs, encoded values, slugs, and composite IDs, then probe predictable ranges for unauthorized access. - Automated detection support: Configure Burp Suite Autorize for replay-based detection and run the included Python agent script to execute read/write/delete tests and produce a JSON findings report. - Use Case: During an authorized assessment of an e-commerce API, use two test accounts to discover that GET /api/v1/orders/{id} returns any customer's order and PATCH /api/v1/addresses/{id} allows modifying other users' addresses, then document findings with severity and remediation guidance. ## Quick Start Ask the agent to test the target API for BOLA by providing the base URL, two user tokens, and the victim's object IDs so it can run horizontal read and write tests and generate a findings report.

Frequently Asked Questions about testing-api-for-broken-object-level-authorization

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

FAQPage Schema
How do I test an API for BOLA or IDOR vulnerabilities?▼

Authenticate as two different users, capture each user's object IDs, then replay User A's requests while substituting User B's IDs across GET, PATCH, and DELETE endpoints. A 200 response returning another user's data confirms BOLA.

What tools detect broken object level authorization automatically?▼

The Autorize Burp Suite extension replays each request with a second user's token and flags authorization bypasses. OWASP ZAP's Access Control add-on and ffuf for ID enumeration at scale are open-source alternatives.

Do UUIDs prevent BOLA vulnerabilities in APIs?▼

No. UUIDs reduce ID predictability but do not enforce authorization. UUIDs can leak through API responses, logs, or URLs, so per-object ownership checks at the data access layer are still required.

Can I test GraphQL APIs for object-level authorization flaws?▼

Yes. Query nodes by global relay IDs belonging to another user, or traverse relationships like user(id) to reach nested orders and payment data. Missing resolver-level authorization checks expose the same BOLA risk as REST.

When should I not run BOLA tests against an API?▼

Never test without written authorization from the API owner, since BOLA testing involves accessing other users' data. Also avoid production environments where write or delete tests could damage real customer data.