Kerberoast
Last updated
Last updated
Use Trickest para construir e automatizar fluxos de trabalho facilmente, impulsionados pelas ferramentas comunitárias mais avançadas do mundo. Acesse hoje:
Kerberoasting foca na aquisição de tickets TGS, especificamente aqueles relacionados a serviços operando sob contas de usuário no Active Directory (AD), excluindo contas de computador. A criptografia desses tickets utiliza chaves que se originam de senhas de usuário, permitindo a possibilidade de quebra de credenciais offline. O uso de uma conta de usuário como serviço é indicado por uma propriedade "ServicePrincipalName" não vazia.
Para executar Kerberoasting, é essencial uma conta de domínio capaz de solicitar tickets TGS; no entanto, esse processo não exige privilégios especiais, tornando-o acessível a qualquer um com credenciais de domínio válidas.
Kerberoasting visa tickets TGS para serviços de conta de usuário dentro do AD.
Tickets criptografados com chaves de senhas de usuário podem ser quebrados offline.
Um serviço é identificado por um ServicePrincipalName que não é nulo.
Nenhum privilégio especial é necessário, apenas credenciais de domínio válidas.
Ferramentas de Kerberoasting normalmente solicitam RC4 encryption
ao realizar o ataque e iniciar solicitações TGS-REQ. Isso ocorre porque RC4 é mais fraco e mais fácil de quebrar offline usando ferramentas como Hashcat do que outros algoritmos de criptografia, como AES-128 e AES-256.
Hashes RC4 (tipo 23) começam com $krb5tgs$23$*
enquanto AES-256 (tipo 18) começam com $krb5tgs$18$*
`.
Ferramentas multifuncionais, incluindo um dump de usuários kerberoastable:
Enumerar usuários Kerberoastable
Técnica 1: Solicitar TGS e despejá-lo da memória
Técnica 2: Ferramentas automáticas
Quando um TGS é solicitado, o evento do Windows 4769 - Um ticket de serviço Kerberos foi solicitado
é gerado.
Use Trickest para construir e automatizar fluxos de trabalho facilmente, impulsionados pelas ferramentas comunitárias mais avançadas do mundo. Acesse hoje:
Se você tiver permissões suficientes sobre um usuário, você pode torná-lo kerberoastable:
Você pode encontrar ferramentas úteis para ataques de kerberoast aqui: https://github.com/nidem/kerberoast
Se você encontrar este erro do Linux: Kerberos SessionError: KRB_AP_ERR_SKEW(Clock skew too great)
é por causa do seu horário local, você precisa sincronizar o host com o DC. Existem algumas opções:
ntpdate <IP do DC>
- Obsoleto a partir do Ubuntu 16.04
rdate -n <IP do DC>
Kerberoasting pode ser realizado com um alto grau de furtividade se for explorável. Para detectar essa atividade, deve-se prestar atenção ao ID de Evento de Segurança 4769, que indica que um ticket Kerberos foi solicitado. No entanto, devido à alta frequência deste evento, filtros específicos devem ser aplicados para isolar atividades suspeitas:
O nome do serviço não deve ser krbtgt, pois este é um pedido normal.
Nomes de serviços que terminam com $ devem ser excluídos para evitar incluir contas de máquina usadas para serviços.
Pedidos de máquinas devem ser filtrados excluindo nomes de contas formatados como machine@domain.
Apenas pedidos de ticket bem-sucedidos devem ser considerados, identificados por um código de falha de '0x0'.
Mais importante, o tipo de criptografia do ticket deve ser 0x17, que é frequentemente usado em ataques de Kerberoasting.
Para mitigar o risco de Kerberoasting:
Assegure que Senhas de Contas de Serviço sejam difíceis de adivinhar, recomendando um comprimento de mais de 25 caracteres.
Utilize Contas de Serviço Gerenciadas, que oferecem benefícios como mudanças automáticas de senha e Gerenciamento Delegado de Nome Principal de Serviço (SPN), aumentando a segurança contra tais ataques.
Ao implementar essas medidas, as organizações podem reduzir significativamente o risco associado ao Kerberoasting.
Em setembro de 2022, uma nova forma de explorar um sistema foi revelada por um pesquisador chamado Charlie Clark, compartilhada através de sua plataforma exploit.ph. Este método permite a aquisição de Tickets de Serviço (ST) via uma solicitação KRB_AS_REQ, que notavelmente não requer controle sobre nenhuma conta do Active Directory. Essencialmente, se um principal for configurado de tal forma que não exija pré-autenticação—um cenário semelhante ao que é conhecido no campo da cibersegurança como um ataque AS-REP Roasting—essa característica pode ser aproveitada para manipular o processo de solicitação. Especificamente, ao alterar o atributo sname dentro do corpo da solicitação, o sistema é enganado para emitir um ST em vez do padrão Ticket Granting Ticket (TGT) criptografado.
A técnica é totalmente explicada neste artigo: Postagem no blog da Semperis.
Você deve fornecer uma lista de usuários porque não temos uma conta válida para consultar o LDAP usando esta técnica.
Use Trickest para construir e automatizar fluxos de trabalho facilmente, impulsionados pelas ferramentas comunitárias mais avançadas do mundo. Acesse hoje:
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)