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

10 KiB

Enumerazione rpcclient

Impara l'hacking AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!

Cos'è un RID

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

Gli Identificatori Relativi (RID) e gli 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.

  • I SID fungono da identificatori univoci per i domini, garantendo che ciascun dominio sia distinguibile.
  • I RID vengono aggiunti ai SID per creare identificatori univoci per gli oggetti all'interno di quei domini. Questa combinazione consente un tracciamento preciso e una gestione delle autorizzazioni degli oggetti e dei controlli di accesso.

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

Enumerazione con rpcclient

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

Informazioni sul Server

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

Enumerazione degli Utenti

  • Gli Utenti possono essere elencati utilizzando: i comandi 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 tramite: 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 tramite: querydominfo.

Enumerazione delle Condivisioni

  • Tutte le condivisioni disponibili tramite: netshareenumall.
  • Le informazioni su una specifica condivisione vengono recuperate con: netsharegetinfo <share>.

Operazioni Aggiuntive con SID

  • SID per nome utilizzando: lookupnames <username>.
  • Altri SID tramite: lsaenumsid.
  • Il ciclismo RID per controllare più SID viene eseguito tramite: lookupsids <sid>.

Comandi Extra

Comando Interfaccia Descrizione
queryuser SAMR Recupera informazioni 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 i nomi utente nei valori SIDa
lookupsids Cerca i SID nei nomi utente (ciclo RIDb)
lsaaddacctrights Aggiunge diritti a un account utente
lsaremoveacctrights Rimuove diritti da un account utente
dsroledominfo LSARPC-DS Ottieni informazioni sul dominio primario
dsenumdomtrusts Enumera i domini fidati all'interno di un bosco AD

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

Impara l'hacking AWS da zero a esperto con htARTE (HackTricks AWS Red Team Expert)!