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

112 lines
9.9 KiB
Markdown

# rpcclient enumeration
{% hint style="success" %}
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
{% endhint %}
### 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 kompletnym i unikalnym identyfikatorem dla pepe w domenie, takim jak: `S-1-5-21-1074507654-1937615267-42093643874-1111`.
### **Enumeracja z rpcclient**
Narzędzie **`rpcclient`** z Samba 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** za pomocą: `enumdomgroups`.
* **Szczegóły grupy** z: `querygroup <0xrid>`.
* **Członkowie grupy** przez: `querygroupmem <0xrid>`.
#### Enumeracja grup aliasów
* **Grupy aliasów** za pomocą: `enumalsgroups <builtin|domain>`.
* **Członkowie grupy aliasów** z: `queryaliasmem builtin|domain <0xrid>`.
#### Enumeracja domen
* **Domeny** przy użyciu: `enumdomains`.
* **SID domeny jest pobierany** przez: `lsaquery`.
* **Informacje o domenie są uzyskiwane** za pomocą: `querydominfo`.
#### Enumeracja udostępnień
* **Wszystkie dostępne udostępnienia** za pomocą: `netshareenumall`.
* **Informacje o konkretnym udostępnieniu są pobierane** z: `netsharegetinfo <share>`.
#### Dodatkowe operacje z SID-ami
* **SID-y według nazwy** przy użyciu: `lookupnames <username>`.
* **Więcej SID-ów** przez: `lsaenumsid`.
* **Cykliczne RID-y w celu sprawdzenia większej liczby SID-ów** są wykonywane przez: `lookupsids <sid>`.
#### **Dodatkowe polecenia**
| **Polecenie** | **Interfejs** | **Opis** |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| queryuser | SAMR | Pobierz informacje o użytkowniku |
| querygroup | Pobierz informacje o grupie | |
| querydominfo | Pobierz informacje o domenie | |
| enumdomusers | Enumeruj użytkowników domeny | |
| enumdomgroups | Enumeruj grupy domeny | |
| createdomuser | Utwórz użytkownika domeny | |
| deletedomuser | Usuń użytkownika domeny | |
| lookupnames | LSARPC | Wyszukaj nazwy użytkowników do wartości SID[a](https://learning.oreilly.com/library/view/network-security-assessment/9781491911044/ch08.html#ch08fn8) |
| lookupsids | Wyszukaj SID-y do nazw użytkowników (cykliczne RID[b](https://learning.oreilly.com/library/view/network-security-assessment/9781491911044/ch08.html#ch08fn9)) | |
| lsaaddacctrights | Dodaj prawa do konta użytkownika | |
| lsaremoveacctrights | Usuń prawa z konta użytkownika | |
| dsroledominfo | LSARPC-DS | Uzyskaj informacje o głównej domenie |
| dsenumdomtrusts | Enumeruj zaufane domeny w obrębie lasu AD | |
Aby **lepiej zrozumieć**, jak działają narzędzia _**samrdump**_ **i** _**rpcdump**_, powinieneś przeczytać [**Pentesting MSRPC**](../135-pentesting-msrpc.md).
{% hint style="success" %}
Ucz się i ćwicz Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Ucz się i ćwicz Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Wsparcie dla HackTricks</summary>
* Sprawdź [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podziel się trikami hackingowymi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów github.
</details>
{% endhint %}