Este artigo do TechNet é fantástico , eu recomendo que você o adicione aos favoritos. Ele lista as portas usadas por vários serviços do Windows e é bastante completo.
Nas versões do Windows anteriores ao Vista / 2008, o NetBIOS era usado para o serviço "Localizador de RPC", que gerenciava o banco de dados de serviço de nomes RPC. Mas no Vista / 2008 e além, o serviço Localizador de RPC não é mais necessário nem útil. É vestigial. A partir deste ponto, só vou falar sobre o MSRPC no Vista / 2008 +.
As portas 137, 138 e 139 são para NetBIOS e não são não necessárias para a funcionalidade do MSRPC.
Todas as portas usadas pelo RPC são as seguintes:
RPC EPM TCP 135
RPC over HTTPS TCP 593
SMB (for named pipes) TCP 445
Ephemeral Range, Dynamic *
Outros aplicativos, como o Gateway de Área de Trabalho Remota, usarão o proxy RPC sobre HTTP e usarão a porta 443, etc.
Embora o artigo ao qual eu estou vinculado liste as portas NetBIOS, elas são herdadas e não são necessárias para o RPC, supondo que você possa adquirir a resolução de nomes por outros meios (DNS) e supondo que o serviço remoto não seja dependente do NetBIOS.
A porta 145 é falsa. Não é usado para nada. Onde quer que você tenha ouvido que "torna as coisas melhores", está errado.
O MSRPC básico usa as portas 135 e o intervalo dinâmico de numeração alta. Essa faixa dinâmica de numeração alta é de portas 1024-5000 no XP / 2003 e abaixo, e 49152-65535 no Vista / 2008 e acima. Você também pode chamar essas portas efêmeras de intervalo de portas.
Você pode definir um intervalo de portas personalizado, se desejar, assim:
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
E / ou
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
A porta TCP 135 é o mapeador de ponto final do MSRPC. Você pode vincular a essa porta em um computador remoto, anonimamente e enumerar todos os serviços (pontos de extremidade) disponíveis nesse computador, ou pode solicitar em qual porta um serviço específico está sendo executado se você souber o que está procurando. / p>
Deixe-me mostrar um exemplo de consulta ao mapeador de pontos RPC:
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 ====
Você notará que, se realizar essa consulta no computador local, encontrará muito mais pontos de extremidade do que se executasse a consulta em um computador remoto. Isso porque muitos pontos de extremidade RPC não são expostos remotamente e são usados apenas para comunicação entre processos locais.
Outras leituras: link
E também: link