mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-21 10:33:36 +00:00
145 lines
9 KiB
Markdown
145 lines
9 KiB
Markdown
# 135, 593 - Pentesting MSRPC
|
|
|
|
<details>
|
|
|
|
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks beworben sehen möchten** oder **HackTricks im PDF-Format herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) Github-Repositorys senden.
|
|
|
|
</details>
|
|
|
|
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
Treten Sie dem [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) Server bei, um mit erfahrenen Hackern und Bug-Bounty-Jägern zu kommunizieren!
|
|
|
|
**Hacking-Einblicke**\
|
|
Beschäftigen Sie sich mit Inhalten, die sich mit dem Nervenkitzel und den Herausforderungen des Hackens befassen
|
|
|
|
**Echtzeit-Hack-News**\
|
|
Bleiben Sie mit der schnelllebigen Hacking-Welt durch Echtzeit-Nachrichten und Einblicke auf dem Laufenden
|
|
|
|
**Neueste Ankündigungen**\
|
|
Bleiben Sie über die neuesten Bug-Bounties und wichtigen Plattformupdates informiert
|
|
|
|
**Treten Sie uns auf** [**Discord**](https://discord.com/invite/N3FrSbmwdy) bei und beginnen Sie noch heute mit der Zusammenarbeit mit Top-Hackern!
|
|
|
|
## Grundlegende Informationen
|
|
|
|
Das Microsoft Remote Procedure Call (MSRPC)-Protokoll, ein Client-Server-Modell, das es einem Programm ermöglicht, einen Dienst von einem Programm auf einem anderen Computer anzufordern, ohne die spezifischen Details des Netzwerks zu verstehen, wurde ursprünglich aus Open-Source-Software abgeleitet und später von Microsoft entwickelt und urheberrechtlich geschützt.
|
|
|
|
Der RPC-Endpunktmapper kann über TCP und UDP-Port 135, SMB über TCP 139 und 445 (mit einer Null- oder authentifizierten Sitzung) und als Webservice über TCP-Port 593 zugegriffen werden.
|
|
```
|
|
135/tcp open msrpc Microsoft Windows RPC
|
|
```
|
|
## Wie funktioniert MSRPC?
|
|
|
|
Initiiert durch die Client-Anwendung, beinhaltet der MSRPC-Prozess das Aufrufen einer lokalen Stubb-Prozedur, die dann mit der Client-Laufzeitbibliothek interagiert, um die Anfrage an den Server vorzubereiten und zu übertragen. Dies beinhaltet die Umwandlung von Parametern in ein standardisiertes Network Data Representation-Format. Die Wahl des Transportprotokolls wird von der Laufzeitbibliothek bestimmt, wenn der Server entfernt ist, um sicherzustellen, dass die RPC über den Netzwerkstack übertragen wird.
|
|
|
|
![https://0xffsec.com/handbook/images/msrpc.png](https://0xffsec.com/handbook/images/msrpc.png)
|
|
|
|
## **Identifizierung von freigegebenen RPC-Diensten**
|
|
|
|
Die Freigabe von RPC-Diensten über TCP, UDP, HTTP und SMB kann durch Abfragen des RPC-Lokalisierungsdienstes und einzelner Endpunkte bestimmt werden. Tools wie rpcdump erleichtern die Identifizierung eindeutiger RPC-Dienste, die durch **IFID**-Werte gekennzeichnet sind, und offenbaren Dienstdetails und Kommunikationsbindungen:
|
|
```
|
|
D:\rpctools> rpcdump [-p port] <IP>
|
|
**IFID**: 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc version 1.0
|
|
Annotation: Messenger Service
|
|
UUID: 00000000-0000-0000-0000-000000000000
|
|
Binding: ncadg_ip_udp:<IP>[1028]
|
|
```
|
|
Der Zugriff auf den RPC-Lokalisierungsdienst wird über spezifische Protokolle ermöglicht: ncacn\_ip\_tcp und ncadg\_ip\_udp für den Zugriff über Port 135, ncacn\_np für SMB-Verbindungen und ncacn\_http für webbasierte RPC-Kommunikation. Die folgenden Befehle veranschaulichen die Verwendung von Metasploit-Modulen zur Überprüfung und Interaktion mit MSRPC-Diensten, wobei der Schwerpunkt hauptsächlich auf Port 135 liegt:
|
|
```bash
|
|
use auxiliary/scanner/dcerpc/endpoint_mapper
|
|
use auxiliary/scanner/dcerpc/hidden
|
|
use auxiliary/scanner/dcerpc/management
|
|
use auxiliary/scanner/dcerpc/tcp_dcerpc_auditor
|
|
rpcdump.py <IP> -p 135
|
|
```
|
|
Alle Optionen außer `tcp_dcerpc_auditor` sind speziell für das Targeting von MSRPC auf Port 135 konzipiert.
|
|
|
|
#### Bemerkenswerte RPC-Schnittstellen
|
|
|
|
* **IFID**: 12345778-1234-abcd-ef00-0123456789ab
|
|
* **Named Pipe**: `\pipe\lsarpc`
|
|
* **Beschreibung**: LSA-Schnittstelle, die zur Auflistung von Benutzern verwendet wird.
|
|
|
|
|
|
* **IFID**: 3919286a-b10c-11d0-9ba8-00c04fd92ef5
|
|
* **Named Pipe**: `\pipe\lsarpc`
|
|
* **Beschreibung**: LSA-Verzeichnisdienste (DS)-Schnittstelle, die zur Auflistung von Domänen und Vertrauensbeziehungen verwendet wird.
|
|
|
|
|
|
* **IFID**: 12345778-1234-abcd-ef00-0123456789ac
|
|
* **Named Pipe**: `\pipe\samr`
|
|
* **Beschreibung**: LSA SAMR-Schnittstelle, die zum Zugriff auf öffentliche SAM-Datenbankelemente (z. B. Benutzernamen) und zum Brute-Forcing von Benutzerpasswörtern unabhängig von der Kontosperrrichtlinie verwendet wird.
|
|
|
|
|
|
* **IFID**: 1ff70682-0a51-30e8-076d-740be8cee98b
|
|
* **Named Pipe**: `\pipe\atsvc`
|
|
* **Beschreibung**: Taskplaner, der zur Remoteausführung von Befehlen verwendet wird.
|
|
|
|
|
|
* **IFID**: 338cd001-2244-31f1-aaaa-900038001003
|
|
* **Named Pipe**: `\pipe\winreg`
|
|
* **Beschreibung**: Remote-Registrierungsdienst, der zum Zugriff auf und Ändern der Systemregistrierung verwendet wird.
|
|
|
|
|
|
* **IFID**: 367abb81-9844-35f1-ad32-98f038001003
|
|
* **Named Pipe**: `\pipe\svcctl`
|
|
* **Beschreibung**: Dienstkontrollmanager und Serverdienste, die zum Remote-Starten und Stoppen von Diensten und Ausführen von Befehlen verwendet werden.
|
|
|
|
|
|
* **IFID**: 4b324fc8-1670-01d3-1278-5a47bf6ee188
|
|
* **Named Pipe**: `\pipe\srvsvc`
|
|
* **Beschreibung**: Dienstkontrollmanager und Serverdienste, die zum Remote-Starten und Stoppen von Diensten und Ausführen von Befehlen verwendet werden.
|
|
|
|
|
|
* **IFID**: 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57
|
|
* **Named Pipe**: `\pipe\epmapper`
|
|
* **Beschreibung**: DCOM-Schnittstelle, die für Brute-Force-Passwort-Cracking und Informationsbeschaffung über WM verwendet wird.
|
|
|
|
### Identifizierung von IP-Adressen
|
|
|
|
Mit [https://github.com/mubix/IOXIDResolver](https://github.com/mubix/IOXIDResolver), das von [Airbus-Forschung](https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/) stammt, ist es möglich, die _**ServerAlive2**_-Methode innerhalb der _**IOXIDResolver**_-Schnittstelle zu missbrauchen.
|
|
|
|
Diese Methode wurde verwendet, um Schnittstelleninformationen als **IPv6**-Adresse vom HTB-Box _APT_ zu erhalten. Siehe [hier](https://0xdf.gitlab.io/2021/04/10/htb-apt.html) für den 0xdf APT-Bericht, der eine alternative Methode mit rpcmap.py von [Impacket](https://github.com/SecureAuthCorp/impacket/) mit _stringbinding_ enthält (siehe oben).
|
|
|
|
### Ausführen eines RCE mit gültigen Anmeldeinformationen
|
|
|
|
Es ist möglich, Remote-Code auf einer Maschine auszuführen, wenn die Anmeldeinformationen eines gültigen Benutzers verfügbar sind, indem [dcomexec.py](https://github.com/fortra/impacket/blob/master/examples/dcomexec.py) aus dem Impacket-Framework verwendet werden.
|
|
|
|
**Denken Sie daran, mit den verschiedenen verfügbaren Objekten zu versuchen**
|
|
* ShellWindows
|
|
* ShellBrowserWindow
|
|
* MMC20
|
|
|
|
|
|
## Port 593
|
|
|
|
Das **rpcdump.exe** von [rpctools](https://resources.oreilly.com/examples/9780596510305/tree/master/tools/rpctools) kann mit diesem Port interagieren.
|
|
|
|
## Referenzen
|
|
* [https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/](https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/)
|
|
* [https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/](https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/)
|
|
* [https://0xffsec.com/handbook/services/msrpc/](https://0xffsec.com/handbook/services/msrpc/)
|
|
|
|
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
Treten Sie dem [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) Server bei, um mit erfahrenen Hackern und Bug-Bounty-Jägern zu kommunizieren!
|
|
|
|
**Hacking Insights**\
|
|
Beschäftigen Sie sich mit Inhalten, die sich mit dem Nervenkitzel und den Herausforderungen des Hackens befassen
|
|
|
|
**Echtzeit-Hack-News**\
|
|
Bleiben Sie mit der schnelllebigen Hacking-Welt durch Echtzeitnachrichten und Einblicke auf dem Laufenden
|
|
|
|
**Neueste Ankündigungen**\
|
|
Bleiben Sie über die neuesten Bug-Bounties und wichtigen Plattformupdates informiert
|
|
|
|
**Treten Sie uns bei** [**Discord**](https://discord.com/invite/N3FrSbmwdy) bei und beginnen Sie noch heute mit der Zusammenarbeit mit Top-Hackern!
|