rpcclient enumeration

Reading time: 3 minutes

tip

Ucz się i ćwicz AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Wsparcie HackTricks

Przegląd identyfikatorów względnych (RID) i identyfikatorów zabezpieczeń (SID)

Identyfikatory względne (RID) i Identyfikatory zabezpieczeń (SID) są kluczowymi komponentami w systemach operacyjnych Windows do unikalnego identyfikowania i zarządzania obiektami, takimi jak użytkownicy i grupy, w obrębie domeny sieciowej.

  • SID służą jako unikalne identyfikatory dla domen, zapewniając, że każda domena jest rozróżnialna.
  • RID są dołączane do SID, aby tworzyć unikalne identyfikatory dla obiektów w tych domenach. Ta kombinacja pozwala na precyzyjne śledzenie i zarządzanie uprawnieniami obiektów oraz kontrolą dostępu.

Na przykład, użytkownik o imieniu pepe może mieć unikalny identyfikator łączący SID domeny z jego specyficznym RID, reprezentowany w formatach szesnastkowym (0x457) i dziesiętnym (1111). Skutkuje to pełnym i unikalnym identyfikatorem dla pepe w obrębie domeny, takim jak: S-1-5-21-1074507654-1937615267-42093643874-1111.

Enumeracja z rpcclient

Narzędzie rpcclient z Samby jest wykorzystywane do interakcji z punktami końcowymi RPC przez nazwane potoki. Poniżej znajdują się polecenia, które można wydać do interfejsów SAMR, LSARPC i LSARPC-DS po nawiązaniu sesji SMB, często wymagających poświadczeń.

Informacje o serwerze

  • Aby uzyskać Informacje o serwerze: używa się polecenia srvinfo.

Enumeracja użytkowników

  • Użytkownicy mogą być wylistowani za pomocą: querydispinfo i enumdomusers.
  • Szczegóły użytkownika za pomocą: queryuser <0xrid>.
  • Grupy użytkownika za pomocą: queryusergroups <0xrid>.
  • SID użytkownika jest pobierany przez: lookupnames <username>.
  • Aliasy użytkowników za pomocą: queryuseraliases [builtin|domain] <sid>.
bash
# 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

Enumeracja grup

  • Grupy przez: enumdomgroups.
  • Szczegóły grupy z: querygroup <0xrid>.
  • Członkowie grupy przez: querygroupmem <0xrid>.

Enumeracja grup aliasów

  • Grupy aliasów przez: enumalsgroups <builtin|domain>.
  • Członkowie grupy aliasów z: queryaliasmem builtin|domain <0xrid>.

Enumeracja domen

  • Domeny używając: enumdomains.
  • SID domeny jest pobierany przez: lsaquery.
  • Informacje o domenie są uzyskiwane przez: querydominfo.

Enumeracja udostępnień

  • Wszystkie dostępne udostępnienia przez: netshareenumall.
  • Informacje o konkretnym udostępnieniu są pobierane z: netsharegetinfo <share>.

Dodatkowe operacje z SIDami

  • SIDy według nazwy używając: lookupnames <username>.
  • Więcej SIDów przez: lsaenumsid.
  • Cykliczne RIDy w celu sprawdzenia większej liczby SIDów wykonuje się przez: lookupsids <sid>.

Dodatkowe polecenia

PolecenieInterfejsOpis
queryuserSAMRPobierz informacje o użytkowniku
querygroupPobierz informacje o grupie
querydominfoPobierz informacje o domenie
enumdomusersEnumeruj użytkowników domeny
enumdomgroupsEnumeruj grupy domeny
createdomuserUtwórz użytkownika domeny
deletedomuserUsuń użytkownika domeny
lookupnamesLSARPCWyszukaj nazwy użytkowników do wartości SIDa
lookupsidsWyszukaj SIDy do nazw użytkowników (cykliczne RIDb)
lsaaddacctrightsDodaj prawa do konta użytkownika
lsaremoveacctrightsUsuń prawa z konta użytkownika
dsroledominfoLSARPC-DSUzyskaj informacje o głównej domenie
dsenumdomtrustsEnumeruj zaufane domeny w obrębie lasu AD

Aby lepiej zrozumieć jak działają narzędzia samrdump i rpcdump, powinieneś przeczytać Pentesting MSRPC.

tip

Ucz się i ćwicz AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Wsparcie HackTricks