# 135, 593 - Pentesting MSRPC
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 * Você trabalha em uma **empresa de segurança cibernética**? Você quer ver sua **empresa anunciada no HackTricks**? ou você quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)! * Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family) * Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com) * **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga-me** no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Compartilhe suas técnicas de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e para o** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
[**Siga HackenProof**](https://bit.ly/3xrrDrL) **para aprender mais sobre bugs web3** 🐞 Leia tutoriais de bugs web3 🔔 Receba notificações sobre novos programas de recompensas por bugs 💬 Participe de discussões na comunidade ## Informações Básicas Microsoft Remote Procedure Call, também conhecido como chamada de função ou chamada de sub-rotina, é [um protocolo](http://searchmicroservices.techtarget.com/definition/Remote-Procedure-Call-RPC) que usa o modelo cliente-servidor para permitir que um programa solicite serviços de um programa em outro computador sem precisar entender os detalhes da rede desse computador. O MSRPC foi originalmente derivado de software de código aberto, mas foi desenvolvido ainda mais e protegido por direitos autorais pela Microsoft. Dependendo da configuração do host, o mapeador de ponto de extremidade RPC pode ser acessado por meio das portas TCP e UDP 135, via SMB com uma sessão nula ou autenticada (TCP 139 e 445) e como um serviço da web ouvindo na porta TCP 593. ``` 135/tcp open msrpc Microsoft Windows RPC ``` ## Como funciona o MSRPC? O processo MSRPC começa no lado do cliente, com a aplicação cliente chamando um procedimento stub local em vez de código que implementa o procedimento. O código stub do cliente recupera os parâmetros necessários do espaço de endereço do cliente e os entrega à biblioteca de tempo de execução do cliente, que então traduz os parâmetros em um formato padrão de representação de dados de rede para transmitir ao servidor. O stub do cliente então chama funções na biblioteca de tempo de execução do cliente RPC para enviar a solicitação e os parâmetros para o servidor. Se o servidor estiver localizado remotamente, a biblioteca de tempo de execução especifica um protocolo de transporte apropriado e um mecanismo e passa o RPC para a pilha de rede para transporte para o servidor.\ A partir daqui: [https://www.extrahop.com/resources/protocols/msrpc/](https://www.extrahop.com/resources/protocols/msrpc/) ![](<../.gitbook/assets/image (133).png>) **Imagem do livro "**_**Avaliação de Segurança de Rede 3ª Edição**_**"** ## Identificando Serviços RPC Expostos Você pode consultar o serviço de localizador RPC e os pontos finais RPC individuais para catalogar serviços interessantes em execução em TCP, UDP, HTTP e SMB (por meio de pipes nomeados). Cada valor IFID coletado por meio desse processo denota um serviço RPC (por exemplo, 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc é a interface do Messenger). As ferramentas rpcdump e ifids do Windows de Todd Sabin consultam tanto o localizador RPC quanto os pontos finais RPC específicos para listar os valores IFID. A sintaxe do rpcdump é a seguinte: ``` D:\rpctools> rpcdump [-p port] 192.168.189.1 IfId: 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc version 1.0 Annotation: Messenger Service UUID: 00000000-0000-0000-0000-000000000000 Binding: ncadg_ip_udp:192.168.189.1[1028] ``` Você pode acessar o serviço de localização RPC usando quatro sequências de protocolo: * ncacn\_ip\_tcp e ncadg\_ip\_udp (porta TCP e UDP 135) * ncacn\_np (o pipe \pipe\epmapper nomeado via SMB) * ncacn\_http (RPC sobre HTTP via porta TCP 80, 593 e outras) ```bash 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 -p 135 ``` _Nota que de todas as opções mencionadas, todas exceto **`tcp_dcerpc_auditor`** podem ser executadas **apenas** contra **msrpc** na **porta 135**._ #### Interfaces RPC notáveis | **Valor IFID** | **Named pipe** | **Descrição** | | ------------------------------------ | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 12345778-1234-abcd-ef00-0123456789ab | \pipe\lsarpc | Interface LSA, usada para enumerar usuários | | 3919286a-b10c-11d0-9ba8-00c04fd92ef5 | \pipe\lsarpc | Interface LSA Directory Services (DS), usada para enumerar domínios e relacionamentos de confiança | | 12345778-1234-abcd-ef00-0123456789ac | \pipe\samr | Interface LSA SAMR, usada para acessar elementos públicos do banco de dados SAM (por exemplo, nomes de usuário) e forçar a senha do usuário por meio de brute-force, independentemente da política de bloqueio de conta [Biblioteca Oreilly](https://learning.oreilly.com/library/view/network-security-assessment/9781491911044/ch08.html#idm139659172852688) | | 1ff70682-0a51-30e8-076d-740be8cee98b | \pipe\atsvc | Agendador de tarefas, usado para executar comandos remotamente | | 338cd001-2244-31f1-aaaa-900038001003 | \pipe\winreg | Serviço de registro remoto, usado para acessar o registro do sistema | | 367abb81-9844-35f1-ad32-98f038001003 | \pipe\svcctl | Gerenciador de serviços e serviços do servidor, usado para iniciar e parar serviços remotamente e executar comandos | | 4b324fc8-1670-01d3-1278-5a47bf6ee188 | \pipe\srvsvc | Gerenciador de serviços e serviços do servidor, usado para iniciar e parar serviços remotamente e executar comandos | | 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57 | \pipe\epmapper | Interface DCOM, suportando WMI | ### Identificando endereços IP Usando [https://github.com/mubix/IOXIDResolver](https://github.com/mubix/IOXIDResolver), que vem da pesquisa da [Airbus](https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/), é possível abusar do método _**ServerAlive2**_ dentro da interface _**IOXIDResolver**_. Esse método foi usado para obter informações de interface como endereço **IPv6** do box HTB _APT_. Veja [aqui](https://0xdf.gitlab.io/2021/04/10/htb-apt.html) o relato do 0xdf APT, que inclui um método alternativo usando rpcmap.py do [Impacket](https://github.com/SecureAuthCorp/impacket/) com _stringbinding_ (veja acima). 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-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://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/) ## Porta 593 O **rpcdump.exe** do [rpctools](https://resources.oreilly.com/examples/9780596510305/tree/master/tools/rpctools) pode interagir com esta porta. ​
[**Siga HackenProof**](https://bit.ly/3xrrDrL) **para aprender mais sobre bugs web3** 🐞 Leia tutoriais de bugs web3 🔔 Receba notificações sobre novos programas de recompensas por bugs 💬 Participe de discussões na comunidade
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 * Você trabalha em uma **empresa de segurança cibernética**? Quer ver sua **empresa anunciada no HackTricks**? ou quer ter acesso à **última versão do PEASS ou baixar o HackTricks em PDF**? Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)! * Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family) * Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com) * **Junte-se ao** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga** me no **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Compartilhe suas técnicas de hacking enviando PRs para o** [**repositório hacktricks**](https://github.com/carlospolop/hacktricks) **e para o** [**repositório hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).