
Анализируйте и отслеживайте токены OAuth 2.0, OIDC и Microsoft Entra ID из перехватов Burp, mitmproxy или Chrome DevTools. Визуализируйте жизненные циклы токенов, обнаруживайте рискованные области доступа и экспортируйте токены для повторного воспроизведения через интерактивную панель управления.
Отслеживание токенов OAuth 2.0, OIDC и Microsoft Entra ID в перехваченном сетевом трафике. Принимает XML-экспорты Burp Suite, файлы потоков mitmproxy или живые потоки Chrome DevTools Protocol в единую базу данных SQLite, а затем предоставляет интерактивную веб-панель для фильтрации токенов, просмотра обменов, выявления рискованных областей действия (scopes), экспорта токенов для воспроизведения и визуализации жизненных циклов токенов в виде графов Mermaid.
Статус: TATS стабилен для персонального использования / использования в рамках проектов. Оптимизирован для экосистемы Microsoft 365 / Entra (FOCI, BroCI/NAA, сессионные cookie ESTSAUTH, обогащение через entrascopes.com), но работает с любым более-менее стандартным трафиком OAuth/OIDC.
Когда вы проксируете длительную сессию Microsoft 365 или Azure через Burp / mitmproxy, полученный перехват оказывается огромным, и большинство инструментов либо:
Этот инструмент извлекает каждый обнаруженный access / refresh / id токен, вычисляет их отпечатки для сопоставления одного и того же токена из разных источников, декодирует утверждения (claims) JWT, сопоставляет GUID клиентов / ресурсов Microsoft с entrascopes.com и отображает всю картину в виде единой панели — включая представление цепочек refresh-токенов, которое отслеживает кросс-приложенческие обмены FOCI и выдачу вложенных токенов BroCI.
Этот проект предназначен в первую очередь для исследований и обучения, но предоставляет такие возможности, как предпросмотр команд и экспорт токенов, которые могут поддержать некоторые наступательные инструменты.
ingest — XML-экспорт «Save items» из Burp Suitemitm — файл потоков .mitm из mitmproxy (HTTP и кадры WebSocket)cdp — живое подключение к Chrome / Edge через DevTools Protocol
(в реальном времени перехватывает расшифрованный TLS HTTP и кадры WebSocket
без проксирующего CA; отслеживает каждую существующую вкладку И каждую вкладку,
открытую во время запуска, через авто-подключение на уровне браузера)--append для слияния с существующей базой данных;
токены обновляются (upsert — счётчик использований + наблюдаемое время жизни
накапливаются), события и обмены добавляются, а source_tag строки фиксирует каждый
проход, в котором встречался токен.pip install mitmproxy).access_token, refresh_token, id_token) и
эвристики по именам cookie определяют тип токена.ESTSAUTH, ESTSAUTHPERSISTENT,
ESTSAUTHLIGHT, SignInStateCookie) явно распознаются как
refresh-эквивалентные токены (иначе они были бы неверно классифицированы
общей подсказкой cookie «auth»).foci
в ответах token-endpoint.brk_client_id, brk_redirect_uri и схемам перенаправления brk-<guid>://
в теле запроса.--enrich загружает firstpartyscopes.json и
resources.json с https://entrascopes.com/ и сопоставляет GUID appid /
azp / aud с понятными именами и кликабельными ссылками.upn / preferred_username /
unique_name / email / name с откатом к sub@iss или oid
и отдельным отображением групп только-приложений и неизвестных идентичностей. Каждая
строка идентичности показывает значок captures, когда пользователь встречается
в ≥2 source_tag (выживание между захватами — главный исследовательский сигнал
--append), а также диапазон first_seen → last_seen и кнопку
timeline, которая подсвечивает все токены этого пользователя на
вкладке диаграммы последовательности.appid / azp / client_id из тела формы
/ brk_client_id / brk_nested_id), встречающееся в
обменах, со значками FOCI / brokerable / broker / nested.aud, сопоставленное с именами
ресурсов entrascopes, где это возможно.tid с количеством токенов / пользователей / приложений.scp / scope /
roles каждого токена по курируемому списку наблюдения высокозначимых разрешений
Microsoft Graph и областей действия ресурсов Azure.(token, host), где
токен использовался на хосте, не соответствующем его утверждению aud
(указывает на утечку или неправомерное использование учётных данных).amr) — распределение pwd / mfa / pop /
smartcard.xms_cc=CP1),
привязку proof-of-possession (утверждение cnf, с обнаружением общего kid
между аудиториями), требования step-up аутентификации (acrs) и уровень
контекста аутентификации acr. Каждая строка кликабельна и фильтрует
вкладку Tokens, оставляя только токены с этим маркером.⚠ priv — исследовательский сигнал расширения привилегий
в стиле FOCI / BroCI.source_tag, чтобы видеть, сколько
строк пришло из каждого прохода приёма данных.