Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/ricardojoserf/whoamialternatives
ReconocimientoRecopilación de InformaciónPost-ExplotaciónAnálisis de MalwareRed Teaming
GitHubricardojoserf/whoamialternatives

WhoamiAlternatives

Diferentes métodos para obtener el nombre de usuario actual sin usar whoami

Ver Repositorio
18819hace 2 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
WhoamiAlternatives — Diferentes métodos para obtener el nombre de usuario actual sin usar whoami | Kitploit

Alternativas a whoami

Algunos experimentos para obtener el nombre de usuario actual sin llamar a whoami.exe o binarios similares.


Método 1: PRTL_USER_PROCESS_PARAMETERS

Obtener las variables de entorno de la estructura PEB y analizarlas para encontrar el nombre de usuario.

  • La función NtQueryInformationProcess devuelve una estructura "PROCESS_BASIC_INFORMATION" que contiene un puntero a la dirección base del PEB.

  • La estructura PEB contiene un puntero "ProcessParameters" a una estructura RTL_USER_PROCESS_PARAMETERS.

  • De esa estructura se puede obtener un puntero "Environment" a las variables de entorno y un puntero "EnvironmentSize" al tamaño de las variables de entorno.

  • Leyendo el número de bytes indicado en "EnvironmentSize" desde la dirección "Environment" como texto UNICODE, analizar las variables de entorno e imprimir la llamada "USERNAME". Si desea todas las variables de entorno, consulte este repositorio

esquema

img


Método 2: LookupAccountSid

Obtener acceso a un token, encontrar el SID del usuario en formato cadena y traducirlo usando la función LookupAccountSid.

  • La función NtOpenProcessToken crea un token de acceso asociado al proceso actual.

  • La función NtQueryInformationToken obtiene información del token que creamos, usando el valor "tokenUser" (1) en el campo "TOKEN_INFORMATION_CLASS" obtenemos información sobre el nombre de usuario que se almacena en el puntero "TokenInformation".

  • La función ConvertSidToStringSid convierte el SID del nombre de usuario en formato binario a formato cadena.

  • La función LookupAccountSid toma el SID en formato cadena y devuelve el nombre de usuario.

esquema

img


Método 3: LsaLookupSids

Obtener acceso a un token y un objeto Policy y obtener el nombre de usuario con la función LsaLookupSids.

  • Las funciones NtOpenProcessToken y NtQueryInformationToken se usan como en el método 2, devuelven un puntero "TokenInformation" con el SID del usuario en formato binario.

  • La función LsaOpenPolicy crea un identificador al objeto Policy en el sistema actual.

  • La función LsaLookupSids toma un puntero al SID y devuelve una estructura LSA_TRANSLATED_NAME que contiene el nombre de usuario.

esquema

img


Método 4: NamedPipe

Crear una tubería con nombre (named pipe) y un hilo secundario, escribir y leer desde la tubería con nombre y obtener el nombre de usuario de la función no documentada NpGetUsername.

esquema

img


Método 5: ADSystemInfo

Obtener el nombre de usuario si el equipo está unido a un dominio usando la función CoCreateInstance como en el ejemplo de MSDN. Utiliza la clase ADSystemInfoClass y las interfaces ADSystemInfo y IADsADSystemInfo de ActiveDS.dll, que ya están en la carpeta del proyecto, por lo que no necesita la DLL.

Si no hay conexión con el AD:

img

Si hay conexión:

img


Fuente

Cuenta de Twitter de vx-underground

Descargar herramienta