Ten artykuł TechNet jest fantastyczny , polecam go dodać do zakładek. Wymienia porty używane przez różne usługi Windows i jest dość dokładny.
W wersjach systemu Windows starszych niż Vista / 2008 NetBIOS był używany dla usługi „RPC Locator”, która zarządzała bazą danych usługi nazw RPC. Ale w systemie Vista / 2008 i późniejszych usługa RPC Locator nie jest już potrzebna ani użyteczna. To szczątkowe. Od tego momentu będę mówić tylko o MSRPC na Vista / 2008 +.
Porty 137, 138 i 139 są przeznaczone dla NetBIOS i nie są wymagane do działania MSRPC.
Wszystkie porty używane przez RPC są następujące:
RPC EPM TCP 135
RPC over HTTPS TCP 593
SMB (for named pipes) TCP 445
Ephemeral Range, Dynamic *
Inne aplikacje, takie jak Remote Desktop Gateway, będą używać RPC przez proxy HTTP i będą używać portu 443 itp.
Chociaż w artykule, do którego się powiodłem, wymieniono porty NetBIOS, są one starsze i nie są wymagane w przypadku RPC, zakładając, że można uzyskać rozpoznawanie nazw w inny sposób (DNS) i zakładając, że sama usługa zdalna nie jest zależna od NetBIOS.
Port 145 jest fałszywy. Nie służy do niczego. Gdziekolwiek słyszałeś, że „poprawia sytuację”, jest to złe.
Podstawowy MSRPC wykorzystuje porty 135 i wysoki zakres dynamiki. Ten wysoko numerowany zakres dynamiczny to porty 1024-5000 na XP / 2003 i niższych oraz 49152-65535 na Vista / 2008 i wyższych. Możesz także wywołać efemeryczne porty tego zakresu portów.
Jeśli chcesz, możesz zdefiniować niestandardowy zakres portów:
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
I / lub
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
Port TCP 135 jest maperem punktu końcowego MSRPC. Możesz połączyć się z tym portem na komputerze zdalnym anonimowo i albo wymienić wszystkie usługi (punkty końcowe) dostępne na tym komputerze, albo możesz poprosić o port, na którym działa dana usługa, jeśli wiesz, czego szukasz.
Pokażę przykład zapytania do RPC Enpoint Mapper:
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 ====
Zauważysz, że jeśli wykonasz to zapytanie na komputerze lokalnym, znajdziesz o wiele więcej punktów końcowych, niż jeśli wykonasz zapytanie z komputera zdalnego. Jest tak, ponieważ wiele punktów końcowych RPC nie jest zdalnie ujawnianych i są używane tylko do lokalnej komunikacji międzyprocesowej.
Dalsza lektura: http://technet.microsoft.com/en-us/library/cc738291(v=WS.10).aspx
A także: https://www.myotherpcisacloud.com/post/2014/02/16/verifying-rpc-network-connectivity-like-a-boss.aspx