it-swarm.com.de

Wie ist die Reihenfolge der Windows-RPC-Ports 135, 137, 139 (und höherer Ports)? Was ändert sich mit Port 145?

Kann jemand erklären, wann und wie oft jeder der Windows RPC-Ports verwendet wird? Die "Kern", die ich verstehe, sind:

  • Port 135
  • Port 137
  • Port 139
  • Höhere Ports, die im "Katalog" von Port 135 veröffentlicht werden

Dann hörte ich, dass Port 145 in den Mix kam, um die Dinge mit NBT/TCP "besser zu machen", aber ich bin mir nicht sicher, wie dies in die Sequenz eines Windows-Clients passt, der eine RPC-Aktion initiiert.

Kann mir jemand helfen, mein Verständnis der RPC-Ports ein für alle Mal zu verbessern?

10

Dieser TechNet-Artikel ist fantastisch , ich empfehle Ihnen, ihn mit einem Lesezeichen zu versehen. Es listet die von verschiedenen Windows-Diensten verwendeten Ports auf und ist recht gründlich.

In früheren Windows-Versionen als Vista/2008 wurde NetBIOS für den Dienst "RPC Locator" verwendet, der die RPC-Namensdienstdatenbank verwaltete. In Vista/2008 und darüber hinaus ist der RPC Locator-Dienst jedoch nicht mehr erforderlich oder nützlich. Es ist ein Überbleibsel. Ab diesem Zeitpunkt werde ich nur noch über MSRPC unter Vista/2008 + sprechen.

Die Ports 137, 138 und 139 sind für NetBIOS und werden nicht für die Funktionalität von MSRPC benötigt.

Alle von RPC verwendeten Ports sind wie folgt:

RPC EPM                  TCP 135 
RPC over HTTPS           TCP 593 
SMB (for named pipes)    TCP 445
Ephemeral Range, Dynamic *

Andere Anwendungen, wie z. B. Remotedesktop-Gateway, verwenden RPC über HTTP-Proxy und verwenden Port 443 usw.

Obwohl der Artikel, auf den ich oben verlinkt habe, die NetBIOS-Ports auflistet, sind diese Legacy-Ports und für RPC nicht erforderlich, vorausgesetzt, Sie können die Namensauflösung auf andere Weise (DNS) erreichen und der Remotedienst selbst ist nicht von NetBIOS abhängig.

Port 145 ist falsch. Es wird für nichts verwendet. Wo immer Sie gehört haben, dass es "die Dinge besser macht", ist falsch.

Basic MSRPC verwendet die Ports 135 und den hoch nummerierten Dynamikbereich. Dieser hoch nummerierte Dynamikbereich umfasst die Ports 1024-5000 unter XP/2003 und darunter und 49152-65535 unter Vista/2008 und höher. Sie können diesen Portbereich auch als kurzlebige Ports bezeichnen.

Sie können einen benutzerdefinierten Portbereich definieren, wenn Sie dies wünschen:

reg add HKLM\SOFTWARE\Microsoft\Rpc\Internet /v Ports /t REG_MULTI_SZ /f /d 8000-9000
reg add HKLM\SOFTWARE\Microsoft\Rpc\Internet /v PortsInternetAvailable /t REG_SZ /f /d Y
reg add HKLM\SOFTWARE\Microsoft\Rpc\Internet /v UseInternetPorts /t REG_SZ /f /d Y

Und/oder

netsh int ipv4 set dynamicport tcp start=8000 num=1001
netsh int ipv4 set dynamicport udp start=8000 num=1001
netsh int ipv6 set dynamicport tcp start=8000 num=1001
netsh int ipv6 set dynamicport udp start=8000 num=1001

Der TCP-Port 135 ist der MSRPC-Endpunkt-Mapper. Sie können anonym an diesen Port eines Remotecomputers binden und entweder alle auf diesem Computer verfügbaren Dienste (Endpunkte) auflisten oder anfordern, auf welchem ​​Port ein bestimmter Dienst ausgeführt wird, wenn Sie wissen, wonach Sie suchen.

Lassen Sie mich Ihnen ein Beispiel für die Abfrage des RPC Enpoint Mapper zeigen:

C:\>PortQry.exe -n 192.168.1.1 -e 135

Querying target system called:

 192.168.1.1

Attempting to resolve IP address to a name...    

IP address resolved to Host01.labs.myotherpcisacloud.com

querying...

TCP port 135 (epmap service): LISTENING

Using ephemeral source port
Querying Endpoint Mapper Database...
Server's response:

UUID: d95afe70-a6d5-4259-822e-2c84da1ddb0d
ncacn_ip_tcp:192.168.1.1[49152]

UUID: 12345778-1234-abcd-ef00-0123456789ac
ncacn_np:192.168.1.1[\\pipe\\lsass]

UUID: 12345778-1234-abcd-ef00-0123456789ac
ncacn_ip_tcp:192.168.1.1[49159]

UUID: 6b5bdd1e-528c-422c-af8c-a4079be4fe48 Remote Fw APIs
ncacn_ip_tcp:192.168.1.1[49158]

UUID: 367abb81-9844-35f1-ad32-98f038001003
ncacn_ip_tcp:192.168.1.1[49157]

UUID: 12345678-1234-abcd-ef00-0123456789ab
ncacn_ip_tcp:192.168.1.1[49155]

UUID: 0b6edbfa-4a24-4fc6-8a23-942b1eca65d1
ncacn_ip_tcp:192.168.1.1[49155]

UUID: ae33069b-a2a8-46ee-a235-ddfd339be281
ncacn_ip_tcp:192.168.1.1[49155]

UUID: 4a452661-8290-4b36-8fbe-7f4093a94978
ncacn_ip_tcp:192.168.1.1[49155]

UUID: 76f03f96-cdfd-44fc-a22c-64950a001209
ncacn_ip_tcp:192.168.1.1[49155]

UUID: 7f1343fe-50a9-4927-a778-0c5859517bac DfsDs service
ncacn_np:192.168.1.1[\\PIPE\\wkssvc]

UUID: 3473dd4d-2e88-4006-9cba-22570909dd10 WinHttp Auto-Proxy Service
ncacn_np:192.168.1.1[\\PIPE\\W32TIME_ALT]

UUID: 1ff70682-0a51-30e8-076d-740be8cee98b
ncacn_np:192.168.1.1[\\PIPE\\atsvc]

...

Total endpoints found: 50

==== End of RPC Endpoint Mapper query response ====

Sie werden feststellen, dass Sie, wenn Sie diese Abfrage auf dem lokalen Computer ausführen, viel mehr Endpunkte finden, als wenn Sie die Abfrage von einem Remotecomputer aus ausführen. Dies liegt daran, dass viele RPC-Endpunkte nicht remote verfügbar gemacht werden und nur für die lokale Interprozesskommunikation verwendet werden.

Weiterführende Literatur: http://technet.Microsoft.com/en-us/library/cc738291 (v = WS.10) .aspx

Und außerdem: https://www.myotherpcisacloud.com/post/2014/02/16/verifying-rpc-network-connectivity-like-a-boss.aspx

22
Ryan Ries