“LSASS Shtinkering” é uma técnica específica de dumping de memória do processo Local Security Authority Subsystem Service (LSASS) em sistemas Windows, explorada por atacantes para extrair credenciais de forma furtiva pois utiliza WER (Windows Error Reporting) para forçar o sistema a gerar um dump completo do LSASS sem alertar soluções tradicionais de EDR, afinal os métodos “tradicionais” são facilmente detectáveis, como mimikatz com sekurlsa::logonpasswords.
Curiosidade : “shtinker” (שְׁטִינְקֶר) vem hebraico israelense e significa “dedo-duro” ou “X-9”, ou seja, alguém que delata os outros, um “snitch”. – Asaf Gilboa (Security Researcher) / Ron Ben-Yizhak (Security Researcher) que apresentaram esse ataque na Def Con 30.
Evasão de EDRs e antivírus
A técnica não usa ferramentas comuns como
procdump,mimikatzourundll32, que são amplamente monitoradas por EDRs.
Não é necessário explorar vulnerabilidades nem injetar código no LSASS.
O dump é feito pelo próprio WerFault.exe, um processo legítimo e assinado pela Microsoft. Isso torna o dump mais difícil de ser detectado ou bloqueado por regras baseadas em hash, nome de processo ou comportamento comum.O LSASS pode estar rodando como PPL, o que bloqueia acesso a ferramentas como Mimikatz., Mas se o atacante tiver privilégios de SYSTEM e handles válidos, o WER ainda consegue gerar o dump.
Como Funciona o LSASS Shtinkering
A técnica consiste em enganar o Windows Error Reporting para acreditar que o LSASS sofreu uma falha, induzindo o serviço a gerar o dump automaticamente. Isso é feito em várias etapas:
– Criação de Handles Herdáveis
O processo atacante deve obter handles herdáveis com permissões:
PROCESS_VM_READPROCESS_QUERY_LIMITED_INFORMATIONTHREAD_QUERY_LIMITED_INFORMATION
LSASS (Local Security Authority Subsystem Service): Processo crítico do Windows que gerencia autenticações e Single Sign-On (SSO). Saiba mais LSASS Dump, Pass-The-Hash e Pass-The-Ticket
– Comunicação via ALPC (Advanced Local Procedure Call)
Utiliza uma API interna para enviar uma mensagem do processo atacante para o serviço WER, simulando uma exceção crítica (crash report).
– Execução do WerFault.exe
O próprio WerFault.exe é invocado automaticamente pelo WER para realizar o MiniDumpWriteDump() do processo alvo.
– Dump Gerado sem Crash
Diferente de técnicas como procdump ou comsvcs.dll, essa abordagem não termina ou trava o LSASS.
Pré-requisitos Técnicos
Para executar a técnica com sucesso, são necessários:
- Executar o processo atacante como NT AUTHORITY\SYSTEM
- Configurar o registro para dumps completos:
Reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps" /v DumpType /D 2Em nossa POC vaos executar o nanodump usando o NT AUTHORITY\SYSTEM a melhor maneira de fazer isso em uma prova de conceito é usando o PsExec
psexec -i -s cmd.exeEu preferi arriscar um ataque local com stick keys que ainda funciona bem.
copy C:\Windows\System32\sethc.exe C:\Windows\System32\sethc.exe.baktakeown /f C:\Windows\System32\sethc.exeicacls C:\Windows\System32\sethc.exe /grant %username%:Fcopy C:\Windows\System32\cmd.exe C:\Windows\System32\sethc.exeVocê pode usar o https://github.com/deepinstinct/Lsass-Shtinkering/tree/main compilado para execução.

Ou executar o nanodump https://github.com/fortra/nanodump como System, que foi exatamente o que eu fiz !!

Referência
- https://learn.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps
- https://media.defcon.org/DEF%20CON%2030/DEF%20CON%2030%20presentations/Asaf%20Gilboa%20-%20LSASS%20Shtinkering%20Abusing%20Windows%20Error%20Reporting%20to%20Dump%20LSASS.pdf
- https://github.com/fortra/nanodump
- https://github.com/deepinstinct/Lsass-Shtinkering/tree/main

Seja o primeiro a comentar