rpcclient enumeration

Support HackTricks

Panoramica degli Identificatori Relativi (RID) e degli Identificatori di Sicurezza (SID)

Identificatori Relativi (RID) e Identificatori di Sicurezza (SID) sono componenti chiave nei sistemi operativi Windows per identificare e gestire in modo univoco oggetti, come utenti e gruppi, all'interno di un dominio di rete.

  • SID fungono da identificatori unici per i domini, garantendo che ogni dominio sia distinguibile.

  • RID sono aggiunti ai SID per creare identificatori unici per gli oggetti all'interno di quei domini. Questa combinazione consente un tracciamento e una gestione precisi delle autorizzazioni e dei controlli di accesso degli oggetti.

Ad esempio, un utente di nome pepe potrebbe avere un identificatore unico che combina il SID del dominio con il suo specifico RID, rappresentato sia in formato esadecimale (0x457) che in formato decimale (1111). Questo risulta in un identificatore completo e unico per pepe all'interno del dominio come: S-1-5-21-1074507654-1937615267-42093643874-1111.

Enumerazione con rpcclient

L'utilità rpcclient di Samba è utilizzata per interagire con endpoint RPC tramite pipe nominate. Di seguito i comandi che possono essere emessi alle interfacce SAMR, LSARPC e LSARPC-DS dopo che una sessione SMB è stata stabilita, spesso richiedendo credenziali.

Informazioni sul Server

  • Per ottenere Informazioni sul Server: si utilizza il comando srvinfo.

Enumerazione degli Utenti

  • Gli utenti possono essere elencati utilizzando: querydispinfo e enumdomusers.

  • Dettagli di un utente con: queryuser <0xrid>.

  • Gruppi di un utente con: queryusergroups <0xrid>.

  • Il SID di un utente viene recuperato tramite: lookupnames <username>.

  • Alias degli utenti con: 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

Enumerazione dei Gruppi

  • Gruppi tramite: enumdomgroups.

  • Dettagli di un gruppo con: querygroup <0xrid>.

  • Membri di un gruppo attraverso: querygroupmem <0xrid>.

Enumerazione dei Gruppi Alias

  • Gruppi alias tramite: enumalsgroups <builtin|domain>.

  • Membri di un gruppo alias con: queryaliasmem builtin|domain <0xrid>.

Enumerazione dei Domini

  • Domini utilizzando: enumdomains.

  • Il SID di un dominio viene recuperato tramite: lsaquery.

  • Le informazioni sul dominio vengono ottenute con: querydominfo.

Enumerazione delle Condivisioni

  • Tutte le condivisioni disponibili tramite: netshareenumall.

  • Le informazioni su una condivisione specifica vengono recuperate con: netsharegetinfo <share>.

Operazioni Aggiuntive con SIDs

  • SIDs per nome utilizzando: lookupnames <username>.

  • Altri SIDs attraverso: lsaenumsid.

  • Ciclo RID per controllare più SIDs viene eseguito con: lookupsids <sid>.

Comandi extra

Comando

Interfaccia

Descrizione

queryuser

SAMR

Recupera informazioni sull'utente

querygroup

Recupera informazioni sul gruppo

querydominfo

Recupera informazioni sul dominio

enumdomusers

Enumera gli utenti del dominio

enumdomgroups

Enumera i gruppi del dominio

createdomuser

Crea un utente di dominio

deletedomuser

Elimina un utente di dominio

lookupnames

LSARPC

Cerca nomi utente per valori SIDa

lookupsids

Cerca SIDs per nomi utente (ciclo RIDb)

lsaaddacctrights

Aggiungi diritti a un account utente

lsaremoveacctrights

Rimuovi diritti da un account utente

dsroledominfo

LSARPC-DS

Ottieni informazioni sul dominio principale

dsenumdomtrusts

Enumera i domini di fiducia all'interno di una foresta AD

Per comprendere meglio come funzionano gli strumenti samrdump e rpcdump dovresti leggere Pentesting MSRPC.

Supporta HackTricks

Last updated