Czy ktoś może wyjaśnić, kiedy i jak często każdy z portów Windows RPC jest używany? Te „podstawowe”, które rozumiem, to:
- Port 135
- Port 137
- Port 139
- Wyższe porty, które są publikowane przez „katalog” Port 135
Potem usłyszałem, że Port 145 wszedł do miksu, aby „ulepszyć” NBT / TCP, ale nie jestem pewien, jak to pasuje do sekwencji klienta Windows inicjującego akcję RPC.
Czy ktoś może mi pomóc raz na zawsze naprawić moje rozumienie portów RPC?
Odpowiedzi:
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:
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:
I / lub
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:
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
źródło