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

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

@Leakinfo

Сегодня я покажу на примере детали атаки под названием Pass-the-Hash, выполняемой на Windows инфраструктуру. Возможно проведения атаки обусловлена тем, что при сетевом взаимодействии аутентификация производится не по паролю, а по хешу – то есть по сети передаётся именно хеш, что с одной стороны даёт безопасность – ведь пароль остаётся в секрете, а с другой стороны позволяет выполнить какие-то действия от имени произвольного пользователя не зная его пароля, а просто передав его настоящий хеш. 

Что потребуется для атаки Pass-the-Hash? 

Программное средство – mimikatz, весьма уникальная в своём роде утилита.

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

Потребуется валидный логин и NTLM-хеш. Топология у нас выглядит вот так:

Описание стенда 

  1. Сервер развёрнут на Windows Server 2012 R2 Standard, в прочем это не имеет большого значения, атака будет возможна и на версиях младше и старше.
  2. Рабочая станция введена в домен.
  3. В домене имеется глобальный пользователь “admin” с паролем 1qaz@WSX, но мы этого как будто бы не знаем.
  4. В домене создан общедоступный сетевой ресурс, на который разрешён доступ admin, остальные не могут даже просматривать каталог.

И предположим, что нам (по какой-то причине) известен NTLM-хеш пользователя admin. Как его получить? Способов несколько:

  1. Похацкали рабочую станцию и вытащили с неё дамп процесса lsass.exe, из которого вытащили хешированный (да и не только) пароль аутентифицированного доменного пользователя.
  2. Выкачали NTDS и распарсили его при помощи crackmapexec.
  3. Провели атаку прослушивания трафика через Responder. 

Да мало ли как ещё.. способов много. Итак, знаем хеш, логин. Попробуем получить доступ к шаре:

Атака Pass-the-Hash 

Шаг 1. 

На атакующей системе запустим mimikatz с правами администратора и выполним две команды в его интерактивной среде: 

privilege::debug — это получение привилегий, позволяющих вторгаться в память других процессов (например lsass.exe) 

sekurlsa::pth /user:admin /domain:LITLADMIN.RU /ntlm:хеш /run:cmd.exe

Шаг 2. 

После предыдущих действий у нас запустится процесс cmd.exe, с токеном пользователя LITLADMIN.RU\admin и от его имени мы без проблем можем подключить сетевой диск на ранее недоступную сетевую папку и посмотреть её содержимое.

Мы могли бы точно так же запустить не cmd.exe, а процесс explorer и работать в проводнике от имени удалённого пользователя без знания его пароля. 

Особенно это приятно, когда мы выяснили, что admin входит в группу доменных администраторов :). Вот такие вот дела.






Report Page