К основному содержанию
скилл CX Codex

api-authorization-and-bola — скилл для Claude Code: тесты BOLA

Плейбук для проверки авторизации в API: доступ к чужим объектам, вызовы функций не по роли и скрытые записываемые поля.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add yaklang/hack-skills --skill api-authorization-and-bola -a claude-code
Открыть на GitHub

Что делает api-authorization-and-bola

Скилл задаёт порядок проверки авторизации на уровне объектов и функций. Сначала вы заводите два аккаунта, снимаете с первого цепочку create, read, update и delete, а потом повторяете те же запросы с токеном второго. Дальше идут соседние эндпоинты, вложенные ресурсы и другие HTTP-методы на том же маршруте.

Внутри — таблица поверхностей для теста: чтение объекта вида /api/v1/orders/123, вложенный ресурс /api/v1/users/1/invoices/9, админский маршрут /api/v1/admin/users, варианты PUT, PATCH и DELETE, а ещё скрытые поля JSON вроде role, org, verified и tier. Отдельный блок напоминает, что идентификаторы объектов прячутся в заголовках, cookie, аргументах GraphQL и вложенных объектах, а проверка родителя бывает на месте, тогда как дочерний ресурс её не имеет. Потому и стоит смотреть на методы, которые делят один маршрут, но защищены слабее.

Это наступательный скилл для тестирования безопасности, не для продакшена. Запускать его нужно только на своих стендах или там, где есть письменное разрешение: запросы с чужим токеном к живым данным — это уже реальный доступ, а не проверка. Если работа упирается в слой токенов, есть переход к ../api-auth-and-jwt-abuse/SKILL.md, для GraphQL и поиска скрытых параметров — к ../graphql-and-hidden-parameters/SKILL.md.

Какие задачи решает

  • проверить, отдаёт ли API чужой объект по прямому идентификатору
  • найти админские и внутренние функции, доступные обычной роли
  • поймать скрытые поля вроде role или verified, которые принимает запрос на обновление
  • сравнить защиту методов PUT, PATCH и DELETE на одном маршруте
  • проверить вложенный ресурс, у которого нет проверки родителя

Примеры запросов агенту

  • прогони плейбук api-authorization-and-bola по эндпоинту /api/v1/orders/{id} с двумя аккаунтами
  • проверь по скиллу, принимает ли PATCH /api/v1/users/1 поле role
  • используй api-authorization-and-bola: сравни доступ к /api/v1/users/1/invoices/9 с токенами A и B

Как установить api-authorization-and-bola

1Через Skills CLI (Vercel)

npx skills add yaklang/hack-skills --skill api-authorization-and-bola -a claude-code

2Вручную: положить файлы

~/.claude/skills/api-authorization-and-bola/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/api-authorization-and-bola/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора93

cors-cross-origin-misconfiguration Помогает тестировать ошибки CORS и проверять доверие к заголовкам Origin при передаче учётных данных. Пригодится при аудите API и поиске проблем с кэшированием. CX Codex +1 3 700установок injection-checking Скилл-роутер для тестирования инъекций: помогает выбрать нужный сценарий по тому, куда попадает ввод от атакующего. CX Codex +1 3 700установок kubernetes-pentesting Плейбук по пентесту Kubernetes: доступ к API-серверу, перебор RBAC, злоупотребление токенами service account, etcd, Kubelet API и побег из пода. CX Codex +1 3 700установок auth-sec Маршрутизатор проверок аутентификации и авторизации. Помогает агенту выбрать нужную ветку аудита до перехода к конкретным атакам. CX Codex +1 3 700установок vm-and-bytecode-reverse Плейбук по реверсу самописных виртуальных машин и байткода: находит диспетчер, разбирает опкоды, помогает писать дизассемблер. CX Codex +1 3 700установок websocket-security Помогает анализировать безопасность веб-сокетов, выявлять уязвимость CSWSH и тестировать handshake. Пригодится при аудите чатов, уведомлений и реального времени в веб-приложениях. CX Codex +1 3 800установок dangling-markup-injection Плейбук по dangling markup injection: когда HTML-инъекция есть, а JavaScript заблокирован, скилл показывает, как вытащить CSRF-токены и данные страницы через незакрытые теги. CX Codex +1 3 600установок dns-rebinding-attacks Скилл передаёт агенту плейбук по атакам класса DNS rebinding для обхода Same-Origin Policy. Он пригодится при пентесте приложений, обращающихся к внешним доменам из браузера жертвы. CX Codex +1 3 600установок

Похожие

testing-api-for-broken-object-level-authorization mahipal Проверяет REST и GraphQL API на уязвимости BOLA и IDOR через подмену идентификаторов объектов. Помогает найти ошибки разграничения доступа между пользователями. CX Codex +1 541установок unit-test-security-authorization giuseppe-trisciuoglio Скилл задаёт шаблоны юнит-тестов авторизации Spring Security: @PreAuthorize, @Secured, @RolesAllowed и свои permission evaluators. Пригодится, когда нужно проверить доступ по ролям без полного контекста Spring Security. CX Codex +1 3 700установок api-test-mode-design Samuel Berthe Проектирует тестовый режим и песочницу публичного API без риска для реальных данных и платежей. Пригодится при создании тестовых ключей, симуляции событий и подготовке к выходу в продакшен. CX Codex +1 7 800установок api-connector-builder affaan-m Скилл добавляет новый API-коннектор по шаблону существующих интеграций в репозитории. Пригодится, когда нужно расширить проект без второй архитектуры. CX Codex +1 4 500установок api-testing kindlmann Скилл для автотестов REST и GraphQL: проверяет формат ответов, коды статусов, заголовки, авторизацию и время отклика. Пригодится, когда фронтенд ломается от незаметного изменения схемы. CX Codex +1 1 300установок api-authentication secondsky Скилл для ИИ-агента, который помогает писать аутентификацию в API: JWT, OAuth 2.0, API-ключи, сессии и защитные заголовки. CX Codex +1 533установок

Рядом в теме «Безопасность»

Всё по теме «Безопасность» →

Вопросы о api-authorization-and-bola

Как установить api-authorization-and-bola в Claude?

Выполните npx skills add yaklang/hack-skills --skill api-authorization-and-bola -a claude-code. После этого файл скилла лежит в ~/.claude/skills/api-authorization-and-bola/SKILL.md.

Что делает api-authorization-and-bola?

Даёт пошаговый путь проверки авторизации API: BOLA на объектах, доступ к функциям не по роли, злоупотребление методами и управление скрытыми полями.

С какими скиллами он связан?

Для работы со слоем токенов есть переход к api-auth-and-jwt-abuse, для GraphQL и скрытых параметров — к graphql-and-hidden-parameters, для IDOR вне API — к idor-broken-object-authorization.

Исходный текст

SKILL.md · MIT
---
name: api-authorization-and-bola
description: >-
  API authorization and BOLA testing playbook. Use when APIs expose object identifiers, nested resources, hidden writable fields, or weak function-level authorization.
---

# SKILL: API Authorization and BOLA — Object Access, Function Access, and Mass Assignment

> **AI LOAD INSTRUCTION**: Use this skill when an API exposes object IDs, nested resources, or role-sensitive functions and you need a focused authorization test path: BOLA, BFLA, method abuse, and hidden field control.

## 1. CORE TEST LOOP

1. Create Account A and Account B.
2. As Account A, capture create, read, update, and delete flows.
3. Replay with Account B's token.
4. Test sibling endpoints, nested endpoints, and alternate HTTP verbs.

## 2. TEST SURFACES

| Surface | Example |
|---|---|
| object read | `/api/v1/orders/123` |
| nested object | `/api/v1/users/1/invoices/9` |
| admin or internal function | `/api/v1/admin/users` |
| update path | `PUT`, `PATCH`, `DELETE` variants |
| hidden JSON fields | `role`, `org`, `verified`, `tier` |

## 3. QUICK PAYLOADS

```json
{"role":"admin"}
{"isAdmin":true}
{"org":"target-company"}
{"verified":true}
```

## 4. WHAT TESTERS MISS

- object IDs in headers, cookies, GraphQL args, and nested objects
- alternate methods sharing the same route but weaker authz
- parent check present, child resource check missing
- admin docs revealing extra writable fields

## 5. NEXT ROUTING

- For JWT or token-layer abuse: [api auth and jwt abuse](../api-auth-and-jwt-abuse/SKILL.md)
- For GraphQL and hidden parameter discovery: [graphql and hidden parameters](../graphql-and-hidden-parameters/SKILL.md)
- For broader IDOR patterns outside APIs: [idor broken object authorization](../idor-broken-object-authorization/SKILL.md)

© yaklang · MIT · yaklang/hack-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой