8.6 KiB
135, 593 - Pentesting MSRPC
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
- Se você deseja ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF Verifique os PLANOS DE ASSINATURA!
- Adquira o swag oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-nos no Twitter 🐦 @carlospolopm.
- Compartilhe seus truques de hacking enviando PRs para os HackTricks e HackTricks Cloud repositórios do github.
Junte-se ao servidor HackenProof Discord para se comunicar com hackers experientes e caçadores de recompensas por bugs!
Percepções de Hacking
Engaje-se com conteúdo que explora a emoção e os desafios do hacking
Notícias de Hacking em Tempo Real
Mantenha-se atualizado com o mundo acelerado do hacking através de notícias e percepções em tempo real
Últimos Anúncios
Fique informado sobre os mais recentes programas de recompensas por bugs lançados e atualizações cruciais na plataforma
Junte-se a nós no Discord e comece a colaborar com os melhores hackers hoje!
Informações Básicas
O protocolo Microsoft Remote Procedure Call (MSRPC), um modelo cliente-servidor que permite a um programa solicitar um serviço de um programa localizado em outro computador sem entender os detalhes da rede, foi inicialmente derivado de software de código aberto e posteriormente desenvolvido e protegido por direitos autorais pela Microsoft.
O mapeador de pontos de extremidade RPC pode ser acessado via porta TCP e UDP 135, SMB na porta TCP 139 e 445 (com uma sessão nula ou autenticada), e como um serviço da web na porta TCP 593.
135/tcp open msrpc Microsoft Windows RPC
Como funciona o MSRPC?
Iniciado pela aplicação cliente, o processo MSRPC envolve chamar um procedimento stub local que interage com a biblioteca de tempo de execução do cliente para preparar e transmitir a solicitação para o servidor. Isso inclui a conversão de parâmetros em um formato padrão de Representação de Dados de Rede. A escolha do protocolo de transporte é determinada pela biblioteca de tempo de execução se o servidor for remoto, garantindo que o RPC seja entregue através da pilha de rede.
Identificando Serviços RPC Expostos
A exposição de serviços RPC através de TCP, UDP, HTTP e SMB pode ser determinada consultando o serviço de localização RPC e os pontos finais individuais. Ferramentas como rpcdump facilitam a identificação de serviços RPC únicos, denotados por valores IFID, revelando detalhes do serviço e vinculações de comunicação:
D:\rpctools> rpcdump [-p port] <IP>
**IFID**: 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc version 1.0
Annotation: Messenger Service
UUID: 00000000-0000-0000-0000-000000000000
Binding: ncadg_ip_udp:<IP>[1028]
O acesso ao serviço de localização RPC é habilitado por meio de protocolos específicos: ncacn_ip_tcp e ncadg_ip_udp para acesso via porta 135, ncacn_np para conexões SMB e ncacn_http para comunicação RPC baseada na web. Os comandos a seguir exemplificam a utilização de módulos do Metasploit para auditar e interagir com os serviços MSRPC, focando principalmente na porta 135:
use auxiliary/scanner/dcerpc/endpoint_mapper
use auxiliary/scanner/dcerpc/hidden
use auxiliary/scanner/dcerpc/management
use auxiliary/scanner/dcerpc/tcp_dcerpc_auditor
rpcdump.py <IP> -p 135
Todas as opções, exceto tcp_dcerpc_auditor
, são especificamente projetadas para visar o MSRPC na porta 135.
Interfaces RPC Notáveis
-
IFID: 12345778-1234-abcd-ef00-0123456789ab
-
Named Pipe:
\pipe\lsarpc
-
Descrição: Interface LSA, usada para enumerar usuários.
-
IFID: 3919286a-b10c-11d0-9ba8-00c04fd92ef5
-
Named Pipe:
\pipe\lsarpc
-
Descrição: Interface de Serviços de Diretório (DS) LSA, usada para enumerar domínios e relacionamentos de confiança.
-
IFID: 12345778-1234-abcd-ef00-0123456789ac
-
Named Pipe:
\pipe\samr
-
Descrição: Interface SAMR LSA, usada para acessar elementos públicos do banco de dados SAM (por exemplo, nomes de usuários) e forçar senhas de usuários, independentemente da política de bloqueio da conta.
-
IFID: 1ff70682-0a51-30e8-076d-740be8cee98b
-
Named Pipe:
\pipe\atsvc
-
Descrição: Agendador de tarefas, usado para executar comandos remotamente.
-
IFID: 338cd001-2244-31f1-aaaa-900038001003
-
Named Pipe:
\pipe\winreg
-
Descrição: Serviço de registro remoto, usado para acessar e modificar o registro do sistema.
-
IFID: 367abb81-9844-35f1-ad32-98f038001003
-
Named Pipe:
\pipe\svcctl
-
Descrição: Gerenciador de controle de serviços e serviços de servidor, usado para iniciar e parar serviços remotamente e executar comandos.
-
IFID: 4b324fc8-1670-01d3-1278-5a47bf6ee188
-
Named Pipe:
\pipe\srvsvc
-
Descrição: Gerenciador de controle de serviços e serviços de servidor, usado para iniciar e parar serviços remotamente e executar comandos.
-
IFID: 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57
-
Named Pipe:
\pipe\epmapper
-
Descrição: Interface DCOM, usada para forçar a moagem de senhas e coletar informações via WM.
Identificando Endereços IP
Usando https://github.com/mubix/IOXIDResolver, proveniente da pesquisa da Airbus, é possível abusar do método ServerAlive2 dentro da interface IOXIDResolver.
Este método foi usado para obter informações de interface como endereço IPv6 da caixa HTB APT. Veja aqui o artigo do 0xdf sobre o APT, que inclui um método alternativo usando rpcmap.py do Impacket com stringbinding (veja acima).
Executando um RCE com credenciais válidas
É possível executar código remoto em uma máquina, se as credenciais de um usuário válido estiverem disponíveis usando dcomexec.py do framework Impacket.
Lembre-se de tentar com os diferentes objetos disponíveis
- ShellWindows
- ShellBrowserWindow
- MMC20
Porta 593
O rpcdump.exe do rpctools pode interagir com esta porta.
Referências
- https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/
- https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/
- https://0xffsec.com/handbook/services/msrpc/
Junte-se ao servidor HackenProof Discord para se comunicar com hackers experientes e caçadores de bugs!
Percepções de Hacking
Engaje-se com conteúdo que explora a emoção e os desafios do hacking
Notícias de Hacking em Tempo Real
Mantenha-se atualizado com o mundo acelerado do hacking por meio de notícias e insights em tempo real
Últimos Anúncios
Fique informado sobre os novos programas de recompensas por bugs lançados e atualizações cruciais da plataforma
Junte-se a nós no Discord e comece a colaborar com os melhores hackers hoje!