👥Как заполучить доступ к учетной записи локального администратора?

Аудит ИБ

Как получить пароль от учетной записи локального администратора?

Ранее мы писали о том как получить админский пароль в домене Active Directory. Но тогда речь шла о паролях администраторов домена.

В этой статье мы рассмотрим инструмент для проведения локальных атак повышения привилегий в системах Microsoft Windows. Инструмент называется localbrute.ps1 и представляет собой простой инструмент, написанный на PowerShell. Он не требует никаких сторонних модулей, а также мало весит, что делает его привлекательным дополнением к традиционным атакам на повышение привилегий, которые применяются  к различным сценариям тестирования на проникновение.

Зачем атаковать локальные учетные записи Windows?

Атаки на локальные учетные записи администраторы, такие как встроенная учетная запись “Administrator” или любая другая учетная запись, входящая в локальную группу “Администраторы”, могут быть довольно интересным вектором атаки, особенно если не включена политика по блокировке этих учетных записей, после заданного количества неудачных попыток входа А если нам это удастся подобрать пароль, то мы получим полный контроль над системой и сможем делать все те сочные вещи, которые мы любим делать, как пентестеры, например:

  • Отключить все средства защиты и контроля безопасности системы
    извлекать учетные данные в открытом виде из памяти и других мест (файлы, реестр и т.д.)
  • Запускать эксплойты для атаки на другие системы в сети
  • Устанавливать необходимое программное обеспечение
  • Получить доступ к защищенным областям системы для поиска конфиденциальной информации и многое другое.

Все из вышеуказанного  может помочь нам в горизонтальном продвижении дальше в инфраструктуре.

Атака на локальные учетные записи Windows не представляет собой ничего нового, однако в текущей статье мы НЕ ставим целью сделать это удаленно, используя всем изветстные инструменты тестирования на проникновение, такие как Metasploit smb_login scanner, Nmap smb-brute NSE script, CrackMapExec или т.д. Представленный нами инструмент PowerShell выполняет брутфорс локально на целевой системе, поэтому его использование довольно специфично.

Где этот инструмент может быть полезен?

Этот инструмент может быть полезен в тех случаях, когда мы уже получили доступ обычного пользователя на машине Windows и можем выполнять команды на ней – например, через RDP-сессию или через службы терминалов. Мы также можем использовать этот инструмент в случае, когда тестируем какую-то ограниченную или изолированную среду – например, среду VDI, где нам предоставили доступ только на уровне пользователя, и теперь мы должны проводить тестирование оттуда с ограниченным доступом к нашим любимым утилитам для пентестинга.

Другим примером может быть симуляция действий обиженого работника. Имея доступ к образцу рабочей станции сотрудника, возможно, укрепленной и защищенной различными средствами контроля и безопасности, сможем ли мы что-то сделать и нанести потенциальный ущерб организации?

Во всех этих случаях инструмент localbrute.ps1 может помочь нам в повышении привилегий.

Особенности инструмента

В двух словах, инструмент localbrute.ps1 выполняет автоматические попытки входа в систему локально в системе, используя встроенные функции Windows.

Ниже перечислены основные возможности инструмента:

  1. Выполняет атаки на вход в систему для любой выбранной локальной учетной записи, используя предоставленный список слов.
  2. Маленький и простой – его можно легко набрать вручную на клавиатуре
  3. Написан  PowerShell, и не требует дополнительных модулей
  4. Не обнаруживается решениями AV / EDR

Использование инструмента LocalBrute.ps1

1) Первое, что нам нужно сделать, это определить учетные записи локальных администраторов в системе

C помощью этой команды в cmd или ps мы можем найти членов группы локальных администраторов:

 

net localgroup administrators

 

 

2) Теперь, чтобы запустить инструмент localbrute, введем:

 

Import-Module .\localbrute.ps1 

# Usage: localbrute <Имя УЗ> <путь к файлу со словариком> [debug] 

# Пример: localbrute Administrator .\passwords.txt

 

 

Как Мы видим, пароль Ss123456! успешно получен

Как это работает?

Скрипт всего напросто итеративно просматривает предоставленный список слов (список паролей), строка за строкой и пытается аутентифицироваться под указанной учетной записью пользователя локально в системе. Он использует внутренние функции Windows DirectoryServices.AccountManagement на локальной машине. По сути, это позволяет нам тестировать аутентификацию для любой локальной учетной записи в нашей системе.

При прерывании (^C) инструмент записывает последнего кандидата на подбор пароля, который был отработан из данного списка слов для данного имени пользователя. Это позволяет инструменту продолжить (возобновить) атаку после перезапуска. В файле состояния также ведется учет уже скомпрометированных учетных записей.

Включим режим отладки (debug), чтобы увидеть, что именно делает инструмент.  Для примера запустим атаку на учетную запись itsecforu, затем прервем работу скрипта и запустим снова:

 

 

Как видно на скриншоте, инструмент продолжил свою работу с 118 слова из словаря, на нём была прервана работы. Однако обратите внимание на то, что если включен режим отладки, то скорость работы снижается примерно на 20-30%.

Заключение

Рассмотренный скрипт localbrute.ps1 – это простой инструмент перебора логинов, который может быть использован как дополнительный метод, при проведение атак повышения привилегий в системах Windows. Благодаря отсутствию политики блокировки локальных учетных записей, мы можем использовать его для проверки надежности паролей локальных привилегированных учетных записей и обнаружения учетных записей, настроенных на слабые пароли. Благодаря компактному размеру, он может пригодиться во время различных тестов на проникновение и симуляций атак.

Так что, всем LAPS!

LAPS – это инструмент Microsoft, который обеспечивает управление паролями локальных учетных записей компьютеров, подключенных к домену. Он устанавливает уникальный пароль для каждой учетной записи локального администратора и сохраняет его в Active Directory для легкого доступа.

¯\_(ツ)_/¯ Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.

Добавить комментарий