4.9 KiB
Delegação Irrestrita
Aprenda hacking na AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
- Você trabalha em uma empresa de cibersegurança? Gostaria de ver sua empresa anunciada no HackTricks? ou gostaria de ter acesso à última versão do PEASS ou baixar o HackTricks em PDF? Confira os PLANOS DE ASSINATURA!
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Adquira o swag oficial do PEASS & HackTricks
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-me no Twitter 🐦@carlospolopm.
- Compartilhe seus truques de hacking enviando PRs para o repositório hacktricks e repositório hacktricks-cloud.
Delegação Irrestrita
Esta é uma funcionalidade que um Administrador de Domínio pode configurar em qualquer Computador dentro do domínio. Então, toda vez que um usuário fizer login no Computador, uma cópia do TGT desse usuário será enviada dentro do TGS fornecido pelo DC e salva na memória no LSASS. Portanto, se você tiver privilégios de Administrador na máquina, poderá despejar os tickets e se passar pelos usuários em qualquer máquina.
Portanto, se um administrador de domínio fizer login em um Computador com a funcionalidade de "Delegação Irrestrita" ativada, e você tiver privilégios de administrador local dentro dessa máquina, você poderá despejar o ticket e se passar pelo Administrador de Domínio em qualquer lugar (escalada de privilégios de domínio).
Você pode encontrar objetos de Computador com esse atributo verificando se o atributo userAccountControl contém ADS_UF_TRUSTED_FOR_DELEGATION. Você pode fazer isso com um filtro LDAP de ‘(userAccountControl:1.2.840.113556.1.4.803:=524288)’, que é o que o powerview faz:
# Listar computadores sem restrições
## Powerview
Get-NetComputer -Unconstrained #DCs sempre aparecem, mas não são úteis para escalada de privilégios
## ADSearch
ADSearch.exe --search "(&(objectCategory=computer)(userAccountControl:1.2.840.113556.1.4.803:=524288))" --attributes samaccountname,dnshostname,operatingsystem
# Exportar tickets com Mimikatz
privilege::debug
sekurlsa::tickets /export #Forma recomendada
kerberos::list /export #Outra forma
# Monitorar logins e exportar novos tickets
.\Rubeus.exe monitor /targetuser:<username> /interval:10 #Verificar a cada 10s por novos TGTs
Carregue o ticket do Administrador (ou usuário vítima) na memória com Mimikatz ou Rubeus para um Pass the Ticket.
Mais informações: https://www.harmj0y.net/blog/activedirectory/s4u2pwnage/
Mais informações sobre Delegação Irrestrita em ired.team.
Forçar Autenticação
Se um atacante for capaz de comprometer um computador permitido para "Delegação Irrestrita", ele poderia enganar um servidor de impressão para fazer login automaticamente nele salvando um TGT na memória do servidor.
Em seguida, o atacante poderia realizar um ataque Pass the Ticket para se passar pela conta de computador do servidor de impressão.
Para fazer um servidor de impressão fazer login em qualquer máquina, você pode usar SpoolSample:
.\SpoolSample.exe <printmachine> <unconstrinedmachine>
Se o TGT for de um controlador de domínio, você pode realizar um ataque DCSync e obter todos os hashes do DC.
Mais informações sobre esse ataque em ired.team.
Aqui estão outras maneiras de tentar forçar uma autenticação:
{% content-ref url="printers-spooler-service-abuse.md" %} printers-spooler-service-abuse.md {% endcontent-ref %}
Mitigação
- Limitar logins de DA/Admin para serviços específicos
- Definir "A conta é sensível e não pode ser delegada" para contas privilegiadas.