Qual é a seqüência das portas 135, 137, 139 (e superiores) do Windows RPC? O que muda com a porta 145?

8

Alguém pode explicar quando e com que frequência cada uma das portas RPC do Windows é usada? Os "principais" que entendo são:

  • Porta 135
  • Porta 137
  • Porta 139
  • Portas maiores publicadas pelo "catálogo" da Port 135

Então ouvi dizer que o Port 145 entrou na mistura para "melhorar as coisas" com o NBT / TCP, mas não tenho certeza de como isso se encaixa na sequência de um cliente Windows que inicia uma ação de RPC.

Alguém pode me ajudar a corrigir meu entendimento sobre as portas RPC de uma vez por todas?

    
por random65537 29.05.2012 / 19:11

1 resposta

16

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

    
por 16.02.2014 / 21:35