hacktricks/network-services-pentesting/pentesting-voip/basic-voip-protocols/README.md
2023-06-06 18:56:34 +00:00

55 lines
8.2 KiB
Markdown

# Protocolos Básicos de VoIP
<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** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
</details>
## Protocolos de Sinalização
### SIP (Session Initiation Protocol)
Este é o padrão da indústria, para mais informações, consulte:
{% content-ref url="sip-session-initiation-protocol.md" %}
[sip-session-initiation-protocol.md](sip-session-initiation-protocol.md)
{% endcontent-ref %}
### MGCP (Media Gateway Control Protocol)
MGCP (Media Gateway Control Protocol) é um **protocolo de sinalização** e **controle de chamadas** descrito no RFC 3435. Ele opera em uma arquitetura centralizada, que consiste em três componentes principais:
1. **Agente de Chamada ou Controlador de Gateway de Mídia (MGC)**: O gateway principal na arquitetura MGCP é responsável por **gerenciar e controlar os gateways de mídia**. Ele lida com o processo de configuração, modificação e término de chamadas. O MGC se comunica com os gateways de mídia usando o protocolo MGCP.
2. **Gateways de Mídia (MGs) ou Gateways Escravos**: Esses dispositivos **convertem fluxos de mídia digitais entre diferentes redes**, como telefonia comutada por circuito tradicional e redes IP comutadas por pacotes. Eles são gerenciados pelo MGC e executam comandos recebidos dele. Os gateways de mídia podem incluir funções como transcodificação, empacotamento e cancelamento de eco.
3. **Gateways de Sinalização (SGs)**: Esses gateways são responsáveis por **converter mensagens de sinalização entre diferentes redes**, permitindo comunicação contínua entre sistemas de telefonia tradicionais (por exemplo, SS7) e redes baseadas em IP (por exemplo, SIP ou H.323). Os gateways de sinalização são cruciais para interoperabilidade e garantir que as informações de controle de chamada sejam comunicadas adequadamente entre as diferentes redes.
Em resumo, o MGCP centraliza a lógica de controle de chamadas no agente de chamada, o que simplifica o gerenciamento de gateways de mídia e sinalização, fornecendo melhor escalabilidade, confiabilidade e eficiência em redes de telecomunicações.
### SCCP (Skinny Client Control Protocol)
O Skinny Client Control Protocol (SCCP) é um **protocolo de sinalização e controle de chamadas proprietário** de propriedade da Cisco Systems. É usado principalmente para comunicação entre o **Cisco Unified Communications Manager** (anteriormente conhecido como CallManager) e telefones IP da Cisco ou outros endpoints de voz e vídeo da Cisco.
O SCCP é um protocolo leve que simplifica a comunicação entre o servidor de controle de chamadas e os dispositivos de endpoint. É chamado de "Skinny" por causa de seu design minimalista e requisitos de largura de banda reduzidos em comparação com outros protocolos VoIP como H.323 ou SIP.
Os principais componentes de um sistema baseado em SCCP são:
1. **Servidor de Controle de Chamadas**: Este servidor, normalmente um Cisco Unified Communications Manager, gerencia o processo de configuração, modificação e término de chamadas, bem como outros recursos de telefonia, como encaminhamento de chamadas, transferência de chamadas e espera de chamadas.
2. **Endpoints SCCP**: Estes são dispositivos como telefones IP, unidades de videoconferência ou outros endpoints de voz e vídeo da Cisco que usam SCCP para se comunicar com o servidor de controle de chamadas. Eles se registram no servidor, enviam e recebem mensagens de sinalização e seguem as instruções fornecidas pelo servidor de controle de chamadas para o tratamento de chamadas.
3. **Gateways**: Esses dispositivos, como gateways de voz ou gateways de mídia, são responsáveis por converter fluxos de mídia entre diferentes redes, como telefonia comutada por circuito tradicional e redes IP comutadas por pacotes. Eles também podem incluir funcionalidades adicionais, como transcodificação ou cancelamento de eco.
O SCCP oferece um método de comunicação simples e eficiente entre os servidores de controle de chamadas da Cisco
### RTP / RTCP / SRTP / ZRTP
1. **RTP (Real-time Transport Protocol)**: RTP é um protocolo de rede projetado para a entrega de dados de áudio e vídeo, ou outros meios de comunicação em tempo real, por meio de redes IP. Desenvolvido pelo **IETF** e definido no **RFC 3550**, o RTP é comumente usado com protocolos de sinalização como SIP e H.323 para permitir a comunicação multimídia. O RTP fornece mecanismos de **sincronização**, **sequenciamento** e **timestamping** de fluxos de mídia, ajudando a garantir a reprodução de mídia suave e oportuna.
2. **RTCP (Real-time Transport Control Protocol)**: RTCP é um protocolo companheiro do RTP, usado para monitorar a qualidade de serviço (QoS) e fornecer feedback sobre a transmissão de fluxos de mídia. Definido no mesmo **RFC 3550** que o RTP, o RTCP **troca periodicamente pacotes de controle entre os participantes de uma sessão RTP**. Ele compartilha informações como perda de pacotes, jitter e tempo de ida e volta, o que ajuda no diagnóstico e adaptação às condições da rede, melhorando a qualidade geral da mídia.
3. **SRTP (Secure Real-time Transport Protocol)**: SRTP é uma extensão do RTP que fornece **criptografia**, **autenticação de mensagem** e **proteção contra replay** para fluxos de mídia, garantindo a transmissão segura de dados de áudio e vídeo sensíveis. Definido no **RFC 3711**, o SRTP usa algoritmos criptográficos como AES para criptografia e HMAC-SHA1 para autenticação de mensagem. O SRTP é frequentemente usado em combinação com protocolos de sinalização seguros como SIP sobre TLS para fornecer segurança de ponta a ponta na comunicação multimídia.
4. **ZRTP (Zimmermann Real-time Transport Protocol)**: ZRTP é um protocolo de acordo de chave criptográfica que fornece **criptografia de ponta a ponta** para fluxos de mídia RTP. Desenvolvido por Phil Zimmermann, o criador do PGP, o ZRTP é descrito no **RFC 6189**. Ao contrário do SRTP, que depende de protocolos de sinalização para troca de chaves, o ZRTP é projetado para funcionar independentemente do protocolo de sinalização. Ele usa a **troca de chaves Diffie-Hellman** para estabelecer um segredo compartilhado entre as partes comunicantes, sem exigir confiança prévia ou uma infraestrutura de chave pública (PKI). O ZRTP também inclui recursos como **Short Authentication Strings (SAS)** para proteger contra ataques de homem no meio.
Esses protocolos desempenham papéis essenciais na **entrega e segurança da comunicação multimídia em tempo real por meio de redes IP**. Enquanto o RTP e o RTCP lidam com a transmissão real da mídia e monitoramento de qualidade, o SRTP e o ZRTP garantem que a mídia transmitida esteja protegida contra espionagem, adulteração e ataques de replay.