
Recuperar y mostrar información sobre sesiones de usuario activas en ordenadores remotos. No se requieren privilegios de administrador.
Recupera y muestra información sobre las sesiones de usuario activas en equipos remotos. No se requieren privilegios de administrador.
La herramienta utiliza el servicio de registro remoto para consultar la sección del registro HKEY_USERS en los equipos remotos. Identifica y extrae los Identificadores de Seguridad (SIDs) asociados con las sesiones de usuario activas, y los traduce a los nombres de usuario correspondientes, proporcionando información sobre quién ha iniciado sesión actualmente.
Si se proporciona el parámetro -CheckAdminAccess, recopilará sesiones autenticándose en los objetivos donde tenga acceso de administrador local utilizando Invoke-WMIRemoting (lo que probablemente obtendrá más resultados)
Es importante tener en cuenta que el servicio de registro remoto debe estar en ejecución en el equipo remoto para que la herramienta funcione correctamente. En mis pruebas, si el servicio está detenido pero su tipo de inicio está configurado como "Automático" o "Manual", el servicio se iniciará automáticamente en el equipo objetivo una vez que se consulte (esto es comportamiento nativo) y se recuperará la información de las sesiones. Si está configurado como "Deshabilitado", no se podrá recuperar información de sesiones del objetivo.
Cargar Invoke-SessionHunter en memoria
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/Leo4j/Invoke-SessionHunter/main/Invoke-SessionHunter.ps1')
Si se ejecuta sin parámetros ni modificadores, recuperará las sesiones activas de todos los equipos en el dominio actual consultando su registro remoto
Invoke-SessionHunter
Recopilar sesiones autenticándose en los objetivos donde tenga acceso de administrador local (el comando 'klist sessions' se ejecuta en los objetivos)
Invoke-SessionHunter -CheckAsAdmin
Opcionalmente, puede proporcionar credenciales en el siguiente formato
Invoke-SessionHunter -CheckAsAdmin -UserName "ferrari\Administrator" -Password "P@ssw0rd!"
Invoke-SessionHunter está diseñado para mantener fuera del alcance su máquina local, su usuario actual y el nombre de usuario proporcionado.
Como resultado, no aparecerán entre las sesiones recuperadas.
Si desea incluirlos en los resultados recuperados, proporcione los parámetros -ShowAll y/o -IncludeLocalHost.
Invoke-SessionHunter -ShowAll -IncludeLocalHost
Invoke-SessionHunter omitirá cualquier objetivo en el que el registro remoto no responda dentro de los 2000ms (2 segundos).
Tiene control sobre el tiempo de espera proporcionando el parámetro -Timeout | Valor predeterminado = 2000, aumente para redes más lentas.
Invoke-SessionHunter -Timeout 5000
Use el parámetro -Match para mostrar solo los objetivos donde tenga acceso de administrador y un usuario privilegiado haya iniciado sesión
Invoke-SessionHunter -Match
Todos los parámetros se pueden combinar
Invoke-SessionHunter -CheckAsAdmin -UserName "ferrari\Administrator" -Password "P@ssw0rd!" -Timeout 5000 -Match

Invoke-SessionHunter -Domain contoso.local
Invoke-SessionHunter -Targets "DC01,Workstation01.contoso.local"
Invoke-SessionHunter -Targets c:\Users\Public\Documents\targets.txt
Invoke-SessionHunter -Servers
Invoke-SessionHunter -Workstations
Invoke-SessionHunter -Hunt "Administrator"
Invoke-SessionHunter -RawResults
Nota: si un host no es accesible, puede quedarse colgado por un tiempo
Invoke-SessionHunter -NoPortScan