AC hunt-shadow-api
Поиск скрытой / зомби / недокументированной поверхности API (OWASP API9 Improper Inventory Management) — перечисление полной истории версий API (пути v1/v2/beta/legacy, версионирование на основе заголовков и поддоменов), получение и сравнение всех доступных спецификаций OpenAPI/Swagger (включая те, которые можно найти только через Wayback Machine), и поведенческое сравнение старых и текущих версий на предмет регрессий аутентификации/ограничения скорости/валидации, а не только различий в форме ответа. Отличается от hunt-api-misconfig, который занимается эксплуатацией после получения спецификации или конечной точки (массовое назначение, JWT, OData, атаки Swagger-chain); отличается от hunt-subdomain, который занимается обнаружением на уровне хоста. Этот навык сам по себе занимается рабочим процессом инвентаризации версий и поведенческого сравнения. Используйте, когда у цели есть версионированные пути API, несколько спецификаций, журнал изменений, ссылающийся на устаревшие конечные точки, или мобильное приложение, чьи жестко закодированные серверные вызовы выглядят старше, чем у текущего веб-приложения.
машинный переводПоказать оригиналСкрыть оригинал«Hunt shadow / zombie / undocumented API surface (OWASP API9 Improper I…»
Hunt shadow / zombie / undocumented API surface (OWASP API9 Improper Inventory Management) — enumerate the full API version history (v1/v2/beta/legacy paths, header- and subdomain-based versioning), pull and diff every reachable OpenAPI/Swagger spec (including ones only findable via the Wayback Machine), and behaviorally diff old vs. current versions for auth/rate-limit/validation regressions rather than just response-shape differences. Distinct from hunt-api-misconfig, which owns exploitation once you have a spec or endpoint (mass assignment, JWT, OData, Swagger-chain attacks); distinct from hunt-subdomain, which owns host-level discovery. This skill owns the version-inventory and behavioral-diff workflow itself. Use when the target has versioned API paths, multiple specs, a changelog referencing deprecated endpoints, or a mobile app whose hardcoded backend calls look older than the current web app's.
Поиск скрытой / зомби / недокументированной поверхности API (OWASP API9 Improper Inventory Management) — перечисление полной истории версий API (пути…
Как процесс C 51/100 · Есть пробелы — слабые места: результат и критерий готовности, входы и предусловия, ошибки и развилки
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 2
✓ Критических и высоких находок нет
Средние и низкие: 2
✓ Guard не нашёл подозрительного поведения. 2 совпадений — это строки атак, процитированные в документации самого скилла по безопасности.
Просканировано файлов: 1. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "sources" - заметка
frontmatter-keyнеизвестное поле фронтматтера "report_count" - заметка
edit-residueв тексте есть пометки об устаревшем (строки 4, 29, 38, 43, 56, 80): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия
Процессный рейтинг: все десять параметров 51/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 3, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (web), но во frontmatter они не объявлены
- 85Шаги. Шагов: 19, расплывчатых формулировок: 1
- 100Когда включается. Сказано, когда применять и когда не применять
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 1823 токенов
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +3Длина description 915: рекомендуется 120–800 символов
- +3Формат ответа не описан: модель каждый раз решает сама
- +1Лицензия не указана
- +2Инструкции на одном языке
- +4Описание говорит, когда скилл НЕ применять
- +4Структура: 9 заголовков
- +3Пошаговые инструкции: 19 пунктов
- +4Есть примеры (4 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 83.