135, 593 - Pentesting MSRPC
Treten Sie dem HackenProof Discord Server bei, um mit erfahrenen Hackern und Bug-Bounty-Jägern zu kommunizieren!
Hacking Einblicke Engagieren Sie sich mit Inhalten, die in den Nervenkitzel und die Herausforderungen des Hackens eintauchen
Echtzeit-Hack-Nachrichten Bleiben Sie auf dem Laufenden über die schnelllebige Hacking-Welt durch Echtzeitnachrichten und Einblicke
Neueste Ankündigungen Bleiben Sie informiert über die neuesten Bug-Bounties und wichtige Plattform-Updates
Treten Sie uns auf Discord bei und beginnen Sie noch heute mit den besten Hackern zusammenzuarbeiten!
Grundinformationen
Das Microsoft Remote Procedure Call (MSRPC) Protokoll, ein Client-Server-Modell, das es einem Programm ermöglicht, einen Dienst von einem Programm anzufordern, das sich auf einem anderen Computer befindet, ohne die Einzelheiten des Netzwerks zu verstehen, wurde ursprünglich aus Open-Source-Software abgeleitet und später von Microsoft entwickelt und urheberrechtlich geschützt.
Der RPC-Endpunkt-Mapper kann über TCP- und UDP-Port 135, SMB über TCP 139 und 445 (mit einer Null- oder authentifizierten Sitzung) und als Webdienst über TCP-Port 593 zugegriffen werden.
Wie funktioniert MSRPC?
Initiiert durch die Client-Anwendung, umfasst der MSRPC-Prozess den Aufruf einer lokalen Stub-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 remote ist, um sicherzustellen, dass das RPC durch den Netzwerk-Stack geliefert wird.
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F0xffsec.com%2Fhandbook%2Fimages%2Fmsrpc.png&width=768&dpr=4&quality=100&sign=42551849&sv=1)
Identifizierung exponierter RPC-Dienste
Die Exposition von RPC-Diensten über TCP, UDP, HTTP und SMB kann durch Abfragen des RPC-Standortdienstes und einzelner Endpunkte bestimmt werden. Tools wie rpcdump erleichtern die Identifizierung einzigartiger RPC-Dienste, die durch IFID-Werte gekennzeichnet sind und Details zu Diensten und Kommunikationsbindungen offenbaren:
Der Zugriff auf den RPC-Standortdienst erfolgt über spezifische Protokolle: 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 Nutzung von Metasploit-Modulen zur Überprüfung und Interaktion mit MSRPC-Diensten, wobei der Schwerpunkt hauptsächlich auf Port 135 liegt:
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
Benannte Pipe:
\pipe\lsarpc
Beschreibung: LSA-Schnittstelle, verwendet zur Auflistung von Benutzern.
IFID: 3919286a-b10c-11d0-9ba8-00c04fd92ef5
Benannte Pipe:
\pipe\lsarpc
Beschreibung: LSA-Verzeichnisdienste (DS) Schnittstelle, verwendet zur Auflistung von Domänen und Vertrauensbeziehungen.
IFID: 12345778-1234-abcd-ef00-0123456789ac
Benannte Pipe:
\pipe\samr
Beschreibung: LSA SAMR-Schnittstelle, verwendet zum Zugriff auf öffentliche SAM-Datenbankelemente (z. B. Benutzernamen) und zum Brute-Forcen von Benutzerpasswörtern unabhängig von der Kontosperrpolitik.
IFID: 1ff70682-0a51-30e8-076d-740be8cee98b
Benannte Pipe:
\pipe\atsvc
Beschreibung: Aufgabenplaner, verwendet zum Remotebefehle ausführen.
IFID: 338cd001-2244-31f1-aaaa-900038001003
Benannte Pipe:
\pipe\winreg
Beschreibung: Remote-Registry-Dienst, verwendet zum Zugriff auf und zur Modifikation der Systemregistrierung.
IFID: 367abb81-9844-35f1-ad32-98f038001003
Benannte Pipe:
\pipe\svcctl
Beschreibung: Dienststeuerungsmanager und Serverdienste, verwendet zum Remotestarten und -stoppen von Diensten und zum Ausführen von Befehlen.
IFID: 4b324fc8-1670-01d3-1278-5a47bf6ee188
Benannte Pipe:
\pipe\srvsvc
Beschreibung: Dienststeuerungsmanager und Serverdienste, verwendet zum Remotestarten und -stoppen von Diensten und zum Ausführen von Befehlen.
IFID: 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57
Benannte Pipe:
\pipe\epmapper
Beschreibung: DCOM-Schnittstelle, verwendet für Brute-Force-Passwortknacken und Informationssammlung über WM.
Identifizierung von IP-Adressen
Mit https://github.com/mubix/IOXIDResolver, stammt von Airbus research, ist es möglich, die ServerAlive2-Methode innerhalb der IOXIDResolver-Schnittstelle auszunutzen.
Diese Methode wurde verwendet, um Schnittstelleninformationen wie IPv6-Adressen von der HTB-Box APT zu erhalten. Siehe hier für den 0xdf APT-Bericht, der eine alternative Methode mit rpcmap.py von Impacket mit stringbinding (siehe oben) enthält.
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 aus dem Impacket-Framework verwendet wird.
Denken Sie daran, es mit den verschiedenen verfügbaren Objekten zu versuchen
ShellWindows
ShellBrowserWindow
MMC20
Port 593
Das rpcdump.exe von rpctools kann mit diesem Port interagieren.
Referenzen
Tritt dem HackenProof Discord Server bei, um mit erfahrenen Hackern und Bug-Bounty-Jägern zu kommunizieren!
Hacking Insights Engagieren Sie sich mit Inhalten, die in die Aufregung und Herausforderungen des Hackens eintauchen
Echtzeit-Hack-Nachrichten Bleiben Sie auf dem Laufenden mit der schnelllebigen Hack-Welt durch Echtzeit-Nachrichten und Einblicke
Neueste Ankündigungen Bleiben Sie informiert über die neuesten Bug-Bounties und wichtige Plattform-Updates
Tritt uns bei Discord und beginne noch heute mit den besten Hackern zusammenzuarbeiten!
Last updated