hacktricks/network-services-pentesting/pentesting-smb/rpcclient-enumeration.md

10 KiB

rpcclient enumeration

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Try Hard Security Group

{% embed url="https://discord.gg/tryhardsecurity" %}


Overview of Relative Identifiers (RID) and Security Identifiers (SID)

Los Identificadores Relativos (RID) y los Identificadores de Seguridad (SID) son componentes clave en los sistemas operativos Windows para identificar y gestionar de manera única objetos, como usuarios y grupos, dentro de un dominio de red.

  • Los SID sirven como identificadores únicos para dominios, asegurando que cada dominio sea distinguible.
  • Los RID se añaden a los SID para crear identificadores únicos para objetos dentro de esos dominios. Esta combinación permite un seguimiento y gestión precisos de los permisos de los objetos y los controles de acceso.

Por ejemplo, un usuario llamado pepe podría tener un identificador único que combina el SID del dominio con su RID específico, representado en formatos hexadecimal (0x457) y decimal (1111). Esto resulta en un identificador completo y único para pepe dentro del dominio como: S-1-5-21-1074507654-1937615267-42093643874-1111.

Enumeration with rpcclient

La utilidad rpcclient de Samba se utiliza para interactuar con puntos finales RPC a través de tuberías con nombre. A continuación, se presentan comandos que se pueden emitir a las interfaces SAMR, LSARPC y LSARPC-DS después de que se haya establecido una sesión SMB, a menudo necesitando credenciales.

Server Information

  • Para obtener Información del Servidor: se utiliza el comando srvinfo.

Enumeration of Users

  • Los usuarios se pueden listar usando: querydispinfo y enumdomusers.
  • Detalles de un usuario mediante: queryuser <0xrid>.
  • Grupos de un usuario con: queryusergroups <0xrid>.
  • El SID de un usuario se recupera a través de: lookupnames <username>.
  • Alias de usuarios mediante: queryuseraliases [builtin|domain] <sid>.
# Users' RIDs-forced
for i in $(seq 500 1100); do
rpcclient -N -U "" [IP_ADDRESS] -c "queryuser 0x$(printf '%x\n' $i)" | grep "User Name\|user_rid\|group_rid" && echo "";
done

# samrdump.py can also serve this purpose

Enumeración de Grupos

  • Grupos por: enumdomgroups.
  • Detalles de un grupo con: querygroup <0xrid>.
  • Miembros de un grupo a través de: querygroupmem <0xrid>.

Enumeración de Grupos Alias

  • Grupos alias por: enumalsgroups <builtin|domain>.
  • Miembros de un grupo alias con: queryaliasmem builtin|domain <0xrid>.

Enumeración de Dominios

  • Dominios usando: enumdomains.
  • El SID de un dominio se recupera a través de: lsaquery.
  • La información del dominio se obtiene mediante: querydominfo.

Enumeración de Recursos Compartidos

  • Todos los recursos compartidos disponibles por: netshareenumall.
  • La información sobre un recurso compartido específico se obtiene con: netsharegetinfo <share>.

Operaciones Adicionales con SIDs

  • SIDs por nombre usando: lookupnames <username>.
  • Más SIDs a través de: lsaenumsid.
  • Ciclado de RID para verificar más SIDs se realiza con: lookupsids <sid>.

Comandos extra

Comando Interfaz Descripción
queryuser SAMR Recuperar información del usuario
querygroup Recuperar información del grupo
querydominfo Recuperar información del dominio
enumdomusers Enumerar usuarios del dominio
enumdomgroups Enumerar grupos del dominio
createdomuser Crear un usuario de dominio
deletedomuser Eliminar un usuario de dominio
lookupnames LSARPC Buscar nombres de usuario a valores SIDa
lookupsids Buscar SIDs a nombres de usuario (ciclado de RIDb)
lsaaddacctrights Agregar derechos a una cuenta de usuario
lsaremoveacctrights Eliminar derechos de una cuenta de usuario
dsroledominfo LSARPC-DS Obtener información del dominio principal
dsenumdomtrusts Enumerar dominios de confianza dentro de un bosque AD

Para entender mejor cómo funcionan las herramientas samrdump y rpcdump deberías leer Pentesting MSRPC.

Try Hard Security Group

{% embed url="https://discord.gg/tryhardsecurity" %}

{% hint style="success" %} Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks
{% endhint %}