Muy buenas a todos! Recientemente "se
filtró" una ISO de la nueva versión del Sistema Operativo de Microsoft, más concretamente se
trata de Windows 11 Build 21996.1, la cual podemos levantar en una máquina virtual como de costumbre. El proceso de instalación es similar al que ya conocemos: tenemos el famoso asistente de instalación y luego se nos presentará un renovado asistente de configuración que debemos completar eligiendo las diferentes opciones que se nos proponen, para elegir cómo queremos compartir nuestra información...
Si
bien seguramente hay muchas cosas que todavía restan por pulir antes que liberen la versión definitiva y más
allá de algunos cambios visuales respecto a su antecesor, en esta
oportunidad queremos evaluar algunos aspectos de seguridad. En particular nos centraremos en las credenciales de usuarios.
Nuestro primer paso es recurrir a las herramientas de la colección de Impacket. Para ello haremos uso de secretsdump desde un equipo conectado a la red para obtener los hashes NTLM de los usuarios locales. Hay que tener en cuenta que para realizar esta tarea se debe contar con credenciales válidas de un usuario con privilegios que tenga permisos sobre RPC en el equipo objetivo.
Obtenemos un volcado de la SAM desde un equipo en la red mediante secretsdump
Luego procedemos a realizar pruebas en local. Lo primero que haremos será desactivar el mecanismo principal de control, el Windows Defender. Las opciones para desactivarlo se mantienen sin cambios, tanto utilizando la interfaz gráfica, como comandos de PowerShell:
> Set-MpPreference -DisableRealtimeMonitoring $true
Luego procedemos a hacer uso de la herramienta mimikatz del gran gentilkiwi. Lo primero que detectamos es que podemos acceder a la SAM sin inconvenientes y de manera habitual.
Obtenemos la SAM localmente mediante mimikatz
La limitación aparece cuando queremos acceder a la información del proceso lsass para obtener las credenciales que están cargadas en memoria.
Intento fallido de obtener credenciales desde proceso lsass
Como alternativa, podemos realizar un volcado de la memoria del proceso desde el Task Manager, para eso lo iniciamos como administrador y generamos el fichero desde el menú contextual
Generando el volcado del proceso LSASS
Pero al cargar el fichero en mimikatz mediante minidump y tratar de acceder a la información, obtenemos el mismo mensaje de error.
Otro intento fallido...
Podríamos
pensar que se encuentra activada la protección sobre lsass, por lo que
procedemos a cargar el driver de mimikatz para desactivar esta
característica. Si bien el driver se carga sin problema y se elude la protección, no logramos
acceder a la información y obtenemos el mismo error.
Intento luego de desbloquear protección con driver
Como dato extra, podemos ver que en el registro no se encuentra la clave RunAsPPL que establece que deben protegerse las credenciales cargadas en memoria.
Registro: HKLM\SYSTEM\CurrentControlSet\Control\Lsa
Probablemente se trata de problemas en el parseo, debido a cambios relativos a la nueva versión, esto ha ocurrido anteriormente al liberarse nuevas versiones del sistema operativo que obligan a adaptar la herramienta, podemos ver que en esta issue se menciona el problema.
Algo similar ocurre para los casos de lsassy y crackmapexec, ambos ejecutados desde una máquina remota conectada a la red.
Mensaje de error de signature tanto para lsassy como para CrackMapExec
En conclusión, podemos intuir que los métodos de gestión de credenciales no han sufrido cambios desde la anterior versión de Windows, tanto para los hashes en la SAM, como los que se mantienen en memoria en el proceso lsass.exe. Por el momento, no podemos hacer uso de mimikatz y otras herramientas para acceder a algunas credenciales, pero confiamos en los investigadores y desarrolladores para que puedan hacer los ajustes necesarios para que funcionen en esta nueva versión, tal como ha ocurrido con los distintos builds en ocasiones anteriores.
Saludos!!
No hay comentarios:
Publicar un comentario