AD hunt-ato
Поиск таксономии захвата учетных записей — 9 различных путей к ATO, плюс цепочки. Пути: (1) недостатки сброса пароля (перенаправление токена с инъекцией заголовка хоста, предсказуемый/числовой токен, утечка Referer, отсутствие срока действия/повторное использование), (2) смена электронной почты без повторной аутентификации, (3) CSRF при связывании учетной записи OAuth, (4) обход MFA (см. hunt-mfa-bypass), (5) фиксация сеанса, (6) манипуляции с JWT (подделка токена для другой личности; криптографические детали → hunt-jwt-crypto), (7) смена пароля без повышения уровня (цепочка с оракулом времени/длины входа), (8) брутфорс социального восстановления / секретного вопроса, (9) захват поддомена SSO по адресу redirect_uri OAuth. Цепочки: кража cookie + парольный оракул + отсутствие повышения уровня = постоянный ATO; свободный redirect_uri = кража кода аутентификации; захват dangling-CNAME по адресу redirect_uri = ATO. Проверка: демонстрация реального захвата тестовой учетной записи B из сеанса злоумышленника A; OOB/Collaborator подтверждают слепые шаги утечки токена. Используйте при поиске цепочек ATO, тестировании сброса пароля / смены электронной почты / MFA / OAuth / сеанса / JWT, или при построении цепочек примитивов, ведущих к критическим уязвимостям.
машинный переводПоказать оригиналСкрыть оригинал«Hunt account takeover taxonomy — 9 distinct paths to ATO, plus chains.…»
Hunt account takeover taxonomy — 9 distinct paths to ATO, plus chains. Paths: (1) password reset flaws (host-header injection redirects token, predictable/numeric token, Referer leak, no-expiry/reuse), (2) email change without re-auth, (3) OAuth account-link CSRF, (4) MFA bypass (per hunt-mfa-bypass), (5) session fixation, (6) JWT manipulation (forge token to another identity; crypto details → hunt-jwt-crypto), (7) password change without step-up (chain with login timing/length oracle), (8) social-recovery / security-question brute-force, (9) SSO subdomain takeover at OAuth redirect_uri. Chains: cookie theft + password oracle + no step-up = persistent ATO; lax redirect_uri = auth-code theft; dangling-CNAME takeover at redirect_uri = ATO. Validate: demonstrate real takeover of test account B from attacker A's session; OOB/Collaborator confirm blind token-leak steps. Use when hunting ATO chains, testing password reset / email change / MFA / OAuth / session / JWT, or chaining primitives toward Critical.
Поиск таксономии захвата учетных записей — 9 различных путей к ATO, плюс цепочки.
Как процесс D 48/100 · Процесс не доведён — слабые места: результат и критерий готовности, когда включается, входы и предусловия
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 1. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "sources" - заметка
frontmatter-keyнеизвестное поле фронтматтера "report_count"
Процессный рейтинг: все десять параметров 48/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 60Инструменты и файлы. Используются инструменты (node), но во frontmatter они не объявлены
- 100Шаги. Шагов: 12
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 3084 токенов
- 100Повторный запуск. Изменяющих операций нет
- 100Отчётность по ходу. Скилл сообщает о ходе работы
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Длина description 1015: рекомендуется 120–800 символов
- +3Формат ответа не описан: модель каждый раз решает сама
- +1Лицензия не указана
- +2Инструкции на одном языке
- +4Структура: 14 заголовков
- +3Пошаговые инструкции: 12 пунктов
- +4Есть примеры (9 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 79.