Еще раз, чтобы напомнить, где мы находимся и куда хотим попасть. Мы контролируем wley пользователя, хэш NTLMv2 которого мы восстановили, запустив Responder ранее в ходе оценки. К счастью для нас, этот пользователь использовал слабый пароль, и мы смогли взломать хэш в автономном режиме с помощью Hashcat и получить значение открытого текста. Мы знаем, что можем использовать этот доступ для запуска цепочки атак, в результате которой мы получим контроль над adunn пользователем, который может выполнить атаку DCSync, что даст нам полный контроль над доменом, позволяя нам извлекать хэши паролей NTLM для всех пользователей в домене и повышать привилегии до администратора домена / предприятия и даже добиться закрепления. Чтобы выполнить цепочку атак, мы должны сделать следующее:
wley пользователя, чтобы изменить пароль для damundsen пользователяdamundsen пользователь и используйте GenericAll права для добавления пользователя, которого мы контролируем, в Help Desk Level 1 группуInformation Technology группе и используйте GenericAll права для получения контроля над adunn пользователемИтак, сначала мы должны пройти аутентификацию от имени wley и принудительно изменить пароль пользователя damundsen. Мы можем начать с открытия консоли PowerShell и аутентификации от имени wley пользователя. В противном случае мы могли бы пропустить этот шаг, если бы мы уже работали от имени этого пользователя. Для этого мы можем создать PSCredential object.
Тактика злоупотребления ACL
PS C:\\htb> $SecPassword = ConvertTo-SecureString 'transporter@4' -AsPlainText -Force
PS C:\\htb> $Cred = New-Object System.Management.Automation.PSCredential('INLANEFREIGHT\\wley', $SecPassword)
Далее мы должны создать объект SecureString, который представляет пароль, который мы хотим установить для целевого пользователя damundsen.
Тактика злоупотребления ACL
PS C:\\htb> $damundsenPassword = ConvertTo-SecureString 'Pwn3d_by_ACLs!' -AsPlainText -Force
Наконец, мы воспользуемся функцией Set-DomainUserPassword PowerView для изменения пароля пользователя. Нам нужно использовать -Credential флаг с объектом учетных данных, который мы создали для wley пользователя. Лучше всегда указывать флаг -Verbose, чтобы получать обратную связь о выполнении команды должным образом или как можно больше информации об ошибках. Мы могли бы сделать это с хоста атаки Linux, используя такой инструмент, как pth-net, который является частью pth-toolkit.
Тактика злоупотребления ACL
PS C:\\htb> cd C:\\Tools\\
PS C:\\htb> Import-Module .\\PowerView.ps1
PS C:\\htb> Set-DomainUserPassword -Identity damundsen -AccountPassword $damundsenPassword -Credential $Cred -Verbose
VERBOSE: [Get-PrincipalContext] Using alternate credentials
VERBOSE: [Set-DomainUserPassword] Attempting to set the password for user 'damundsen'
VERBOSE: [Set-DomainUserPassword] Password for user 'damundsen' successfully reset
Мы видим, что команда успешно завершена, изменив пароль для целевого пользователя при использовании учетных данных, которые мы указали для wley пользователя, которого мы контролируем. Далее нам нужно выполнить аналогичный процесс для аутентификации в качестве damundsen пользователя и добавить себя в Help Desk Level 1 группу.