SKILLEMALL.ai

CB exploiting-mass-assignment-in-rest-apis

Обнаруживает и эксплуатирует массовое присваивание (автоматическое связывание) в REST API путем внедрения неожиданных или скрытых параметров (например, role, isAdmin, plan) в запросы на создание/обновление, используя Burp Suite Intruder, Arjun и param-miner для поиска связываемых полей в конечных точках на основе ORM (Rails, Django, Laravel, Spring). Используйте при тестировании REST API на повышение привилегий или обход авторизации через непреднамеренное связывание параметров.

машинный переводПоказать оригиналСкрыть оригинал«Discovers and exploits mass assignment (autobinding) in REST APIs by i…»

Discovers and exploits mass assignment (autobinding) in REST APIs by injecting unexpected or hidden parameters (e.g. role, isAdmin, plan) into create/update requests, using Burp Suite Intruder, Arjun, and param-miner to find bindable fields on ORM-backed endpoints (Rails, Django, Laravel, Spring). Use when testing REST APIs for privilege escalation or authorization bypass via unintended parameter binding.

mukul975/Anthropic-Cybersecurity-Skills Agent Skills автор: mukul975 Apache-2.0 4 файла · 1 скрипт тело ≈ 2 139 токенов Открыть источникgithub.com↗ проанализирован 5 дн назад

Обнаруживает и эксплуатирует массовое присваивание (автоматическое связывание) в REST API путем внедрения неожиданных или скрытых параметров (например, role…

Как процесс B 67/100 · Почти готов — слабые места: когда включается, ошибки и развилки, повторный запуск

ПроцедураБезопасностьтип и темы размечены автоматически по тексту скилла
JSON
Технический рейтинг
C
87/100
безопасность, качество, тесты
Безопасность 60%
93
Качество 40%
78
Прогон на моделях
не было
Процессный рейтинг
B
67/100
Почти готов
Ошибки и развилки вес 10
0
Отчётность по ходу вес 2
0
Когда включается вес 12
20
три самых слабых из десяти параметров · все десять

Как улучшить

    Для прогона на моделях — необязательно
    • Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
    • spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.

    Находки guard · 7

    ✓ Критических и высоких находок нет

    Средние и низкие: 7
    • низкая Рискованное назначение intent-offensive-security references/api-reference.md:13
      Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
      | `role` / `isAdmin` | Privilege escalation |
    • низкая Рискованное назначение intent-offensive-security SKILL.md:8
      Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
      REST APIs for privilege escalation or authorization bypass via unintended
    • низкая Рискованное назначение intent-offensive-security SKILL.md:42
      Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
      - During bug bounty hunting on applications with CRUD API operations
    • низкая Рискованное назначение intent-offensive-security SKILL.md:77
      Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
      ### Step 2 — Test Privilege Escalation via Role Fields
    • низкая Рискованное назначение intent-offensive-security SKILL.md:216
      Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
      1. **Admin Privilege Escalation** — Inject `"role":"admin"` or `"isAdmin":true` in profile update to gain administrative access
    • низкая Рискованное назначение intent-offensive-security SKILL.md:233
      Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)
      | 1 | PATCH /api/users/me | role | "user" | "admin" | Privilege Escalation |

    Ещё 1 совпадений отнесены к цитатам в документации скилла по безопасности и не считаются находками.

    Просканировано файлов: 4. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.

    По спецификации Agent Skills

    • заметка frontmatter-key неизвестное поле фронтматтера "domain"
    • заметка frontmatter-key неизвестное поле фронтматтера "subdomain"
    • заметка frontmatter-key неизвестное поле фронтматтера "nist_csf"
    • заметка frontmatter-key неизвестное поле фронтматтера "mitre_attack"

    Процессный рейтинг: все десять параметров 67/100

    • 0Ошибки и развилки. Линейный процесс без обработки сбоев
    • 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
    • 20Когда включается. Не сказано, при каком запросе скилл включается
    • 30Повторный запуск. Изменяющих операций: 1, без проверки текущего состояния
    • 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
    • 70Входы и предусловия. Входные данные и предусловия перечислены
    • 100Инструменты и файлы. Внешние инструменты не нужны
    • 100Шаги. Шагов: 16
    • 100Согласованность. Имя и обязательные поля на месте
    • 100Стоимость исполнения. Тело инструкции 2139 токенов

    Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.

    Сигналы качества

    • +5В description нет примеров фраз, по которым скилл должен срабатывать
    • +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
    • -41 справочных файлов, но SKILL.md на них не ссылается: модель их не откроет
    • -31 из 1 скриптов не упомянуты в SKILL.md
    • +2Инструкции на одном языке
    • +3Длина description 408 символов: достаточно сигнала, не съедает бюджет
    • +4Структура: 14 заголовков
    • +3Пошаговые инструкции: 16 пунктов
    • +3Формат ответа описан явно
    • +4Есть примеры (7 блоков кода)
    • +1Лицензия указана

    База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 78.