В этой статье мы рассмотрим сценарий сброса пароля администратора домена Active Directory. Эта возможность может понадобиться в случаях утраты прав доменного администратора вследствие, например, «забывчивости» или намеренного саботажа увольняющегося админа, атаки злоумышленников и т.д. Для успешного сброса пароля администратора домена необходимо иметь физический или удаленный доступ к консоли сервера (ILO, iDRAC или консоль VMware vSphere/Hyper-V/Proxmox, в случае использования виртуального DC).
В данном примере мы будем сбрасывать пароль администратора на контроллере домене с Windows Server 2019. Если в сети несколько контроллеров домена, рекомендуется выполнять процедуру на сервере с FSMO ролью PDC (Primary Domain Controller).
Сброс пароля администратора домена, если вы не знаете пароль DSRM
Загрузите ваш сервер с любого установочного диска Windows (это может быть установочная USB флешка с Windows, или ISO образ).
- На экране выбора параметров установки Windows нажмите сочетание клавиш
Shift+F10
чтобы открыть командную строку; - Теперь нужно понять, какая буква назначена разделу, на которои хранится ваш Windows Server. Выполните команду:
wmic logicaldisk get volumename,name
В данном примере видно, что ваш офлайн образ Windows Server находится на диске C:. Именно это букву диска мы будем использовать в следующих командах;Если этот способ не помог вам однозначно определить диск в Windows, последовательно выполните:diskpart
->list disk
->list vol
- Создадим резервную копию оригинального файла utilman.exe:
copy C:\windows\system32\utilman.exe C:\windows\system32\utilman.exebak
- Теперь нужно заменить файл utilman.exe файлом cmd.exe:
copy c:\windows\system32\cmd.exe c:\windows\system32\utilman.exe /y
- Извлеките загрузочный образ (USB/ISO) и перезагрузите хост:
wpeutil reboot
- После загрузки контроллера домена нажмите на экране входа кнопку «Специальные возможности» (Easy of access) чтобы открыть окно командной строки;
- Выполните команду
whoami
, чтобы уведитесь что командная строка запущена от имени NT Authority\SYSTEM; - Выведите информацию о пользователе administrator:
Net user administrator
- В этом примере видно, что этот пользователь входит в группу Domain admins, и сейчас он отключен:
Account active: No
- Включите аккаунт администратора домена:
net user administrator /active:yes
- Теперь вы можете сбросить пароль администратора домена или любого другого аккаунта:
net user administrator *
Задайте новый пароль администратора (обратите внимание, что новый пароль должен соответствовать доменной политике паролей); - Еще раз загрузите сервер с установочного диска и замените файл utilman.exe исходным файлом (чтобы не оставлять лазейку в безопасности сервера):
copy c:\windows\system32\utilman.exebak c:\windows\system32\utilman.exe /y
- Перезагрузите контроллер домена в обычном режиме и проверьте, что теперь вы можете войти на DC с новым паролем администратора домена.Этот способ сброса пароля в Windows описан в этой статье.
Сброс пароля администратора на виртуальном контроллере домена
Если у вас используются виртуальный контроллер домена, запущенный на любом из гипервизоров (ESXi, Hyper-V, Proxmox), можно сбросить пароль администратора с помощью PowerShell модуля DSInternals.
Для этого:
- Отключите ВМ с DC и подключите ее диск (vhdx,vmdk, и т.п.) к любой другой ВМ с Windows. Назначьте букву диска, например E:;
- Установите модуль DSInternals из галереи PowerShell:
Install-Module DSInternals –Force
Модули PowerShell можно устанавливать в офлайн режиме без подключений к Интернету. - Получите загрузочный ключ (boot key) с помощью которого шифруются хэши паролей в базе AD (ntds.dit):
$bootkey= Get-BootKey -SystemHiveFilePath "E:\Windows\System32\config\SYSTEM"
- Теперь можно получить информацию о любом аккаунте в базе данных AD:
Get-ADDBAccount -SamAccountName 'Administrator' -DBPath "E:\Windows\NTDS\ntds.dit" -BootKey $bootkey
- Если учетная запись администратора домена отключена, включите ее и задайте новый пароль:
Enable-ADDBAccount -SamAccountName 'Administrator' -DBPath "E:\Windows\NTDS\ntds.dit"
Set-ADDBAccountPassword -SamAccountName 'administrator' -DBPath "E:\Windows\NTDS\ntds.dit" -BootKey $bootkey
- Отключите виртуальный диск от ВМ и включите контроллер домена;
- После его включения новый пароль администратора домена будет реплицирован на все DC.
Как сбросить пароль администратора домена через DSRM?
Если вы знаете пароль администратора DSRM, нужно загрузить ваш DC в режиме DSRM (сервер загружается с отключенными службами AD), выбрав соответствующую опцию в меню расширенных параметров загрузки.
На экране входа в систему ведите имя локального пользователя (administrator) и его пароль (пароль DSRM режима).
В данном примере имя контроллера домена – DC01.
Проверим, под каким пользователем выполнен вход в системе, для этого выполним команду:whoami /user
USER INFORMATION ---------------- User Name SID ================== ============================================ dc01\administrator S-1-5-21-3244332244-383844547-2464936909-500
Как вы видите, мы работаем под локальным админом.
Следующий шаг – смена пароля учетной записи администратора Active Directory (по умолчанию это учетная тоже называется Administrator). Чтобы сбросить пароль администратора домена мы создим отдельную службу, которая при запуске из-под SYSTEM сбрасывает в Active Directory пароль учетной записи Administrator:sc create ResetADPass binPath= "%ComSpec% /k net user administrator P@ssw0rd1" start= auto
Проверьте, что служба создана:sc qc ResetADPass
[SC] QueryServiceConfig SUCCESS SERVICE_NAME: ResetADPass TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : C:\Windows\system32\cmd.exe /k net user administrator P@ssw0rd1 LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : ResetADPass DEPENDENCIES : SERVICE_START_NAME : LocalSystem
Перезагрузите контроллер домена в нормальном режиме:shutdown -r -t 0
Во время загрузки созданная нами служба изменит пароль учетной записи админа домена на P@ssw0rd1. Теперь вы можете войти на DC под этой учетной записью и паролем.whoami /user
USER INFORMATION ---------------- User Name SID ===================== ============================================ corp\administrator S-1-5-21-1737425439-783543262-1234318981-500
Осталось удалить созданную наму службу Windows:sc delete ResetADPass
[SC] DeleteService SUCCESS
Итак, в этой статье мы разобрались, как можно сбросить пароль администратора домена AD. Еще раз отметим о важности обеспечения физической безопасности вашей IT инфраструктуры. Если кто-то кроме известного круга лиц имеет доступ к физическим серверам контроллеров домена, он может легко сбросить пароль любого пользователя или администратора. Если вам нужно разместить DC в менее доверенных локациях, рекомендуем использовать RODC (read-only domain controller).