rpcclient enumeration

Support HackTricks

Übersicht über Relative Identifiers (RID) und Security Identifiers (SID)

Relative Identifiers (RID) und Security Identifiers (SID) sind Schlüsselkomponenten in Windows-Betriebssystemen zur eindeutigen Identifizierung und Verwaltung von Objekten, wie Benutzern und Gruppen, innerhalb einer Netzwerkdomäne.

  • SIDs dienen als eindeutige Identifikatoren für Domänen und stellen sicher, dass jede Domäne unterscheidbar ist.

  • RIDs werden an SIDs angehängt, um eindeutige Identifikatoren für Objekte innerhalb dieser Domänen zu erstellen. Diese Kombination ermöglicht eine präzise Verfolgung und Verwaltung von Objektberechtigungen und Zugriffskontrollen.

Zum Beispiel könnte ein Benutzer namens pepe einen eindeutigen Identifikator haben, der die SID der Domäne mit seinem spezifischen RID kombiniert, dargestellt in sowohl hexadezimaler (0x457) als auch dezimaler (1111) Form. Dies ergibt einen vollständigen und einzigartigen Identifikator für pepe innerhalb der Domäne wie: S-1-5-21-1074507654-1937615267-42093643874-1111.

Enumeration mit rpcclient

Das rpcclient-Dienstprogramm von Samba wird verwendet, um mit RPC-Endpunkten über benannte Pipes zu interagieren. Nach der Herstellung einer SMB-Sitzung, die oft Anmeldeinformationen erfordert, können die folgenden Befehle an die SAMR-, LSARPC- und LSARPC-DS-Schnittstellen ausgegeben werden.

Serverinformationen

  • Um Serverinformationen zu erhalten: wird der Befehl srvinfo verwendet.

Auflistung von Benutzern

  • Benutzer können aufgelistet werden mit: querydispinfo und enumdomusers.

  • Details eines Benutzers durch: queryuser <0xrid>.

  • Gruppen eines Benutzers mit: queryusergroups <0xrid>.

  • Die SID eines Benutzers wird abgerufen durch: lookupnames <username>.

  • Aliases von Benutzern durch: 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

Enumeration of Groups

  • Gruppen mit: enumdomgroups.

  • Details einer Gruppe mit: querygroup <0xrid>.

  • Mitglieder einer Gruppe durch: querygroupmem <0xrid>.

Enumeration of Alias Groups

  • Aliasgruppen mit: enumalsgroups <builtin|domain>.

  • Mitglieder einer Aliasgruppe mit: queryaliasmem builtin|domain <0xrid>.

Enumeration of Domains

  • Domänen mit: enumdomains.

  • Die SID einer Domäne wird abgerufen durch: lsaquery.

  • Domäneninformationen werden erhalten durch: querydominfo.

Enumeration of Shares

  • Alle verfügbaren Freigaben mit: netshareenumall.

  • Informationen über eine spezifische Freigabe werden abgerufen mit: netsharegetinfo <share>.

Additional Operations with SIDs

  • SIDs nach Namen mit: lookupnames <username>.

  • Weitere SIDs durch: lsaenumsid.

  • RID-Zyklus zur Überprüfung weiterer SIDs wird durchgeführt mit: lookupsids <sid>.

Extra commands

Befehl

Schnittstelle

Beschreibung

queryuser

SAMR

Benutzerinformationen abrufen

querygroup

Gruppeninformationen abrufen

querydominfo

Domäneninformationen abrufen

enumdomusers

Domänenbenutzer auflisten

enumdomgroups

Domänengruppen auflisten

createdomuser

Einen Domänenbenutzer erstellen

deletedomuser

Einen Domänenbenutzer löschen

lookupnames

LSARPC

Benutzernamen zu SIDa Werten nachschlagen

lookupsids

SIDs zu Benutzernamen nachschlagen (RIDb Zyklus)

lsaaddacctrights

Rechte zu einem Benutzerkonto hinzufügen

lsaremoveacctrights

Rechte von einem Benutzerkonto entfernen

dsroledominfo

LSARPC-DS

Primäre Domäneninformationen abrufen

dsenumdomtrusts

Vertrauenswürdige Domänen innerhalb eines AD-Waldes auflisten

Um besser zu verstehen, wie die Tools samrdump und rpcdump funktionieren, sollten Sie Pentesting MSRPC lesen.

Support HackTricks

Last updated