CPU – based DoS Attacks Against SIP
Servers
Renan Fischer e Silva
[email protected]
Universidade Federal do Paraná
Roteiro






Introdução
SIP
Ataques
Avaliação e Resultados Experimentais
Trabalhos futuros
Conclusão
Introdução

PSTN (Public Switched Telephone Network – Rede
de Telefonia Pública Comutada):



Antigamente, toda analógica
Hoje, quase toda digital
Vantagens:

Segurança
Introdução

Funcionamento básico da infra-estrutura PSTN:
Introdução

VoIP:



Voz sobre IP
Aos poucos, substituindo a plataforma PSTN
como plataforma de telefonia pública e privada
Vantagens:




Custo efetivo
Funcionalidade
Controle e administração
Trabalha de forma a satisfazer as necessidades do
usuário
Introdução

VoIP


Servidores VoIP


Usa sinalização SIP
Precisam prover segurança em um nível muito alto
Por quê?


Usuários da plataforma PSTN possuem
expectativas
Usuários esperam e exigem tal nível de segurança
SIP


Protocolo de sinalização da camada de aplicação para ser
usado em serviços VoIP
 Criado pelo IETF
Cria, modifica e termina uma sessão de multimídia com
um ou mais participantes (conferência)

Roda sobre UDP e IP – Vulnerável a vários tipos de ataques
como:



Chamadas hijacking (ataque onde uma sessão ativa
é interceptada e utilizada pelo atacante)
Personificação de entidades SIP
Servidor SIP

Interpreta pacotes que entram na rede e cria sessões entre
“chamadores” e “chamados” (análogo ao modelo clienteservidor)
SIP - Conceitos

User Agent: Inicia e recebe chamadas pelo

Registrar: Servidor que mantém os registros do

usuário
local dos usuários registrados.
Proxy: Servidor que recebe, processa e
encaminha pedidos de conexões, de forma que o
pedido de um User Agent chegue a uma
conferência desejada.
SIP - Mensagens

A sinalização suporta mensagens de clientes para
Registrars ou proxies:
SIP - Operações

Cada User Agent é associado com um domínio
específico da forma sip:user@host:


Host especifica o domínio do usuário
Com o domínio é possível achar a posição do
usuário desejado
SIP - Autenticação


De forma a evitar ataques hijacking, a
autenticação é essencial
Processo de 3 passos:



Começa com uma requisição de registro de um
usuário
O servidor cria uma mensagem de “desafio”,
indicando que o usuário não está autorizado e
prove uma string de identificação (nonce) e um
identificador para o domínio da autenticação
(realm)
Se a resposta for válida, o usuário é registrado
com sucesso
SIP - Autenticação
SIP - Autenticação

Exemplo de requisição enviada no terceiro passo
SIP - Autenticação
Ataques


No mecanismo de autenticação padrão,
servidores confiam e processam todas os pacotes
de mensagem SIP por padrão
Tipos Ataques:




Mal-formados: Exploram falhas do SW
Inundação de pacotes básica: randômico
Inundação de pacotes avançada baseado em
customização e personificação
Tipos de servidores:


Orientados a estado (Memória e CPU)
Não-orientados a estado (CPU)
Ataques




Metodologia do ataque:
Rtotal representa o total de recursos do host
consumido em um ataque DoS
RPacket representa a média de recursos
consumidos por cada pacote de ataque
N representa o número total de pacotes de
ataque
Ataques




Basic Flood
Static-Nonce-Based Flood
Adaptive-Nonce-Based Flood
Adaptive-Nonce-Based Flood with IP Spoofing
Ataques - Basic Flood

Pacotes são enviados continuamente




Força bruta
Pacotes não são especialmente projetados
Dados do header são repetidos e gerados de
maneira randômica
Essência: Quantidade e não Qualidade
Ataques – Static-Nonce-Based Flood

Cada requisição contém um header de
autorização que inclui um nonce personificado.





A interceptação pode ser feita via meio
compartilhado: ethernet ou wireless.
O nonce também pode ser obtido sondando o
servidor constantemente.
Múltiplas requisições SIP com headers válidos são
enviados ao servidor.
Os pacotes apenas podem ser filtrados no 4º
estágio do processo de autenticação SIP.
Alia qualidade e quantidade.
Ataques – Adaptive-Nonce-Based
Flood

Contornado o problema do nonce expirar.


Aumenta a quantidade de recurso de tempo de
CPU que pode ser consumido por cada pacote.
Realiza todo o processo de autenticação.
Ataques – Adaptive-Nonce-Based Flood
Ataques – Adaptive-Nonce-Based Flood
with IP Spoofing

Servidores podem armazenar o número de
requisições SIP de cada endereço IP.


Forma efetiva de se evitar DoS.
Atacantes personificam diferentes endereços IPs
de origem afim de reduzir o número de
requisições SIP para cada endereço IP (evitando
o controle e superando o mecanismo de
proteção).
Avaliação e Resultados Experimentais

Métricas





Uso de CPU.
Taxa de banda consumida.
Banda requerida para causar um DoS.
Atraso em um User Agent.
Frequência com que um nonce válido é obtido de
um servidor.
Avaliação e Resultados Experimentais
Avaliação e Resultados Experimentais
Avaliação e Resultados Experimentais
Avaliação e Resultados Experimentais
Trabalhos Futuros

Autenticação leve



Configuração e Parâmetros


Se o processo é pesado, existe vulnerabilidade
mesmo que se possa diferenciar pacotes de ataque
de pacotes legítimos.
Boa abordagem seria usar histórico.
Tempo de expiração do nonce, limiar para número
de requisições IP, etc...
Novas estratégias para geração do nonce

Atrelar o nonce ao endereço IP. Diminui o ataque
de CPU mas prejudica usuários VoIP atrás de
proxies.
Conclusões




Ameaças contra infra-estrutura SIP.
Implementado e testado 4 tipos de ataques.
Proposto algumas modificações na
implementação SIP para melhorar a robusteza
contra ataques DoS.
Autenticação forte não ajuda defendendo contra
ataques DoS.
Download

ts02_02_34945.1