<summary><strong>Aprenda hacking AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* 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)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
Junte-se ao servidor [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) para se comunicar com hackers experientes e caçadores de recompensas por bugs!
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.
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.
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:
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:
* **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.
Usando [https://github.com/mubix/IOXIDResolver](https://github.com/mubix/IOXIDResolver), proveniente 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**_.
Este método foi usado para obter informações de interface como endereço **IPv6** da caixa HTB _APT_. Veja [aqui](https://0xdf.gitlab.io/2021/04/10/htb-apt.html) o artigo do 0xdf sobre o APT, que inclui um método alternativo usando rpcmap.py do [Impacket](https://github.com/SecureAuthCorp/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](https://github.com/fortra/impacket/blob/master/examples/dcomexec.py) do framework Impacket.
**Lembre-se de tentar com os diferentes objetos disponíveis**