mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-28 15:41:34 +00:00
120 lines
12 KiB
Markdown
120 lines
12 KiB
Markdown
# 135, 593 - Pentesting MSRPC
|
||
|
||
<details>
|
||
|
||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||
|
||
* 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).
|
||
|
||
</details>
|
||
|
||
<figure><img src="../.gitbook/assets/image (7) (2).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
[**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 <IP> -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.
|
||
|
||
|
||
|
||
<figure><img src="../.gitbook/assets/image (7) (2).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
[**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
|
||
|
||
<details>
|
||
|
||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||
|
||
* 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).
|
||
|
||
</details>
|