Professional Documents
Culture Documents
Nilton C. N. da C. Braga
Grupo de Teleinformtica e Automao GTA/COPPE/EE
Programa de Engenharia Eltrica Universidade Federal do Rio de Janeiro
Caixa Postal 68504 21945-970 Rio de Janeiro RJ Brasil
ncb@gta.ufrj.br
1. Introduo
O rpido desenvolvimento da Internet tem proporcionado motivao para o
desenvolvimento de novas aplicaes que combinem voz, vdeo, imagem e texto sobre
IP. Com o nmero cada vez maior de pessoas acessando a Internet, um problema que
surge a necessidade de se otimizar as chamadas comunicaes de grupo, em que um
interage com muitos, ou muitos com muitos. Como alguns exemplos dessas aplicaes
podemos citar jogos, videoconferncia, distribuio de vdeo, de dados e ensino a
distncia.
O tipo de comunicao predominante na Internet o unicast, em que a
comunicao ponto-a-ponto. Dessa forma, se o n A quiser enviar os mesmos dados
para outros trs ns, ele dever enviar trs cpias dessa mesma informao pela rede. A
alternativa que existe tanto para esse exemplo simples quanto para casos mais
complexos o multicast, em que apenas uma cpia dos dados enviada por A. A idia
: ao invs de enviar trs cpias da mesma informao (gastando trs vezes mais
recursos), enviar apenas uma cpia, direcionada ao grupo dos ns que desejam recebla.
O multicast j utilizado em vrios backbones e redes menores, contudo, ainda
no se pode afirmar que seu uso seja em larga escala.
2. IP Multicast
De uma forma resumida e simples, o IP multicast uma maneira mais eficiente de
transportar os mesmos dados de um (fonte) para vrios usurios (participantes). O
multicast cria o conceito de um conjunto de usurios associados a um endereo de grupo
(classe D do endereamento IP). Com base nisso, a idia do protocolo otimizar as
comunicaes desse grupo [Dias, Medeiros e Alves 2002].
Na Internet, quando uma mesma informao deve ser enviada para diversos
hosts, so enviadas pela rede tantas cpias dessa informao quanto forem os hosts. Isso
acarreta em desperdcio de recursos, principalmente se cpias da mesma informao
trafegarem pelos mesmos links, causando um congestionamento desnecessrio. O
cenrio acima citado baseado em unicast, cuja comunicao ponto-a-ponto.
A alternativa , ento, uma comunicao ponto-multiponto: enviar uma nica
cpia da informao pela rede, destinada ao grupo de hosts como um todo. Assim, os
pacotes que compem essa informao s sero duplicados quando for realmente
necessrio. Observe as figuras abaixo:
3. Segurana e Multicast
Existem diversos fatores, intrnsecos ao IP multicast, que influenciam os modelos de
segurana utilizados. Abaixo, so relacionados os mais importantes.
3.1. Tipo de Aplicao Multicast
Em geral, o multicast utilizado em aplicaes de um-para-muitos ou de muitos-paramuitos. Somando-se a esse fato os diferentes tipos de dados passveis de transmisso,
fcil obter uma extensa gama de aplicaes possveis.
Um primeiro exemplo seria a transmisso de informaes do mercado de aes.
Esse um tpico exemplo de um-para-muitos, onde a autenticao da fonte mais
importante do que a confidencialidade dos dados.
No servio Pay-per-view a estrutura de transmisso semelhante, contudo, a
autenticao da fonte no de vital importncia. A confidencialidade o aspecto
principal do servio, no pelo fato de o que est sendo transmitido ser secreto, mas para
a estao de TV poder se assegurar de que somente os assinantes tero acesso ao
programa exibido.
A videoconferncia um exemplo onde tanto a autenticao quanto a
confidencialidade so importantes. Em geral, esse tipo de aplicao envolve a interao
de muitos com muitos, sendo importante assegurar tanto a identidade do transmissor
quanto a privacidade dos dados.
3.2. Tamanho do Grupo e Dinmica do Mesmo
Esses dois fatores podem afetar a maneira como se aplica segurana a um grupo de
usurios. Os diferentes tamanhos afetam diretamente o mecanismo de segurana
aplicado, assim como a escalabilidade do mesmo. No que diz respeito dinmica, um
grupo pode variar de alguns poucos participantes a milhares deles em questo de
segundos, seja por associaes e desassociaes explcitas, ou por falhas em roteadores
intermedirios.
4. Confidencialidade e Autenticao
Da mesma forma que o trfego unicast, pacotes multicast devem atravessar pores
pblicas da Internet; por isso, necessrio controlar o acesso aos dados enviados. Um
mtodo comum utilizado a encriptao [Hardjono e Tsudik 2000].
A idia se baseia na encriptao da informao na fonte, e sua posterior
decriptao nos receptores. Para tal, esses ltimos devem possuir chaves que
possibilitem a leitura correta dos dados recebidos. Com esse mecanismo, dados
interceptados ao longo do caminho so inteis para quem no conhea a chave de
decriptao.
Um dos maiores obstculos no uso desse tipo de controle de acesso surge
quando ele deve ser aplicado a dados transmitidos em alta velocidade. No caso de um
vdeo por exemplo, a encriptao / decriptao de todos os pacotes pode gerar
mensurveis atrasos no envio e exibio do mesmo.
No contexto de IP multicast, til separar autenticao de confidencialidade.
Como j mencionado anteriormente, aplicaes diferentes possuem diferentes
necessidades de segurana (mercado de aes e Pay-per-view).
A autenticao pode ser dividida em autenticao pela fonte e pelo grupo. A
primeira tipicamente usa chaves pblicas (criptografia assimtrica), enquanto que a
segunda usa chaves privadas (criptografia simtrica). O uso de uma ou de outra est
diretamente associado ao desempenho de cada uma delas: algoritmos assimtricos em
geral so mais lentos e seguros que os simtricos. Em contrapartida, a distribuio das
chaves privadas em algoritmos simtricos um problema, uma vez que devem ser
criadas formas seguras de transmitir a chave usada na decriptao dos dados.
Associado ao uso de chaves privadas, existe o fato de que qualquer host que
participe do grupo pode se fazer passar pela fonte de multicast, uma vez que ele possui a
chave utilizada pela mesma. Assim, natural que se procure por esquemas baseados em
chaves assimtricas, como a assinatura digital. Essa soluo, contudo, apresenta um
grande overhead, tanto para assinar e verificar quanto em utilizao de banda.
Uma soluo conhecida fazer uma assinatura ser vlida para um conjunto de
pacotes, ao invs de assinar um por um. Ambos os esquemas, contudo, no so
completamente satisfatrios. O primeiro, pelo fato de pacotes poderem ser perdidos e
pela no existncia de reconhecimento (ack). Um caso tpico seria a perda do pacote
contendo a assinatura [Perrig e Canetti 2001]. A assinatura de todos os pacotes, por sua
vez, requer poder computacional.
Um ataque do tipo DOS (Denial of Service) possvel no caso proposto acima.
O ataque se d quando um hacker inunda um receptor com pacotes que supostamente
possuem a assinatura. Como a verificao da mesma exige poder computacional da
CPU, o receptor se perde e no consegue mais sair do processo de verificao, tendo que
analisar todos os pacotes maus [Perrig e Canetti 2001].
O algoritmo conhecido como TESLA prope um esquema de autenticao
assimtrica. A idia que haja sincronizao de timers entre a fonte e os demais
participantes. O funcionamento como a seguir: a fonte anexa um cdigo a cada pacote,
calculado usando uma chave k, conhecida apenas por si prpria. O pacote enviado e
armazenado num buffer pelo receptor. Alguns momentos depois, a fonte revela a chave
k, e o receptor capaz de decriptar o cdigo e ler o pacote.
Esse esquema, contudo, pode apresentar problemas de armazenamento de
pacotes e gerar vulnerabilidade a ataques DOS.
Em [Perrig, Canetti, Song e Tygar 2001] so propostas alteraes no TESLA,
entre elas:
o autenticao de pacotes assim que so recebidos;
o diferentes timers para diferentes hosts em redes com diferentes atrasos (essa
funcionalidade j existia no TESLA, mas a melhora aqui diz respeito ao menor
overhead obtido);
o no TESLA, a fonte se autentica individualmente com cada receptor. Isso pode
ser muito custoso caso muitos hosts desejem se autenticar simultaneamente. A
proposta utilizar uma nica chave pblica por unidade de tempo, independente
do nmero de sincronizaes durante essa unidade.
No TESLA, assume-se que todos se autenticaram antes de qualquer transmisso
ter sido iniciada. Na verdade, receptores podem desejar receber os dados e s depois se
autenticarem. Eles ainda podem querer se autenticar durante o processo de recepo. A
modificao proposta torna possveis ambas as opes.
7. Roteamento
De uma forma geral, muitos dos problemas de infra-estrutura podem ser resolvidos com
base nas solues apresentadas nos tpicos de autenticao, confidencialidade e
gerenciamento de chaves. Proteger a infra-estrutura multicast consiste, na verdade, na
proteo tanto da rvore de distribuio dos dados quanto na proteo do protocolo de
transporte utilizado.
A rvore de distribuio est diretamente associada ao roteamento. Ela
responsvel pela entrega dos dados fim-a-fim, e a construo da mesma est associada a
escalabilidade do grupo.
Vale lembrar que problemas no roteamento multicast afetam tanto aplicaes
que tm como fim a distribuio de dados (Pay-per-view, jogos) quanto aplicaes em
que o multicast apenas uma ferramenta. Como exemplos dessas ltimas, possvel
citar softwares de gerenciamento e at mesmo protocolos de roteamento unicast (OSPF,
por exemplo).
Existem dois tipos bsicos de ameaa ao roteamento: ataques internos e ataques
vindos da borda da rede.
Ataques vindos da borda: so originados de hosts conectados a roteadores-folha.
Podem ser:
o ataques vindos do emissor a rvore de distribuio atacada por hosts
enviando dados esprios para o grupo. Conseqentemente, esses pacotes so
entregues a todos os outros participantes, consumindo muita largura de banda.
importante lembrar que para enviar dados a um grupo multicast no necessrio
fazer parte do mesmo. Outra forma de ataque seria a fonte enviar pacotes numa
taxa maior do que a permitida, tentando inundar os integrantes do grupo
[Whetten 1998].
o Ataques vindos do receptor aqui, a inteno inchar a rvore de distribuio e
simplesmente consumir recursos dos roteadores (banda nos links entre eles e
informaes de controle so dois exemplos). O ataque se d com muitos hosts
no-membros se associando ao grupo. O trfego, mesmo encriptado, recebido
por eles e descartado. Esse ataque requer colaborao de muitos hosts, e pode ser
classificado como um tipo de DDOS (Distributed Denial of Service).
Ataques internos: provenientes de dentro da rvore, tm origem em roteadores
invadidos ou em invasores do grupo.
o Ataques com dados semelhante aos ataques vindos do emissor, aqui tambm
podem ser enviados dados esprios para todos os outros participantes. A
principal diferena que o hacker agora um membro do grupo. Tambm
possvel restringir o nmero de hosts afetados ao subconjunto deles abaixo do
ponto de ataque.
o Ataques a dados de controle nessa modalidade, so injetados dados de controle
falsos, com o objetivo de confundir ou desmontar a rvore de distribuio. O
hacker pode remontar a rvore de acordo com seus objetivos: pode forar a
incluso de um roteador prximo, com o intuito de injetar trfego. Outro ataque
pode ser a transformao de um roteador num buraco negro [Huitema 2000].
Esse ataque tambm pode partir da borda.
De uma forma resumida, ataques ao roteamento so funes de: i) protocolos de
roteamento unicast e multicast utilizados; ii) utilizao ou no da tabela de roteamento
unicast, por parte do protocolo de roteamento multicast (PIM, por exemplo); iii)
topologia da rede; iv) tipo de aplicao multicast [Satmeeting 2003] e v) sentido do
trfego (uni ou bidirecional).
Algumas propostas de proteo ao roteamento existem para o CBT (Core Based
Tree) e para o PIM. No caso desse ltimo, tratado especificamente o modo esparso,
com autenticao usando IPSec. A idia que todos os roteadores PIM de um mesmo
domnio utilizem a mesma chave simtrica. Algumas entidades, como o RP e o roteador
Bootstrap (BSR) utilizam criptografia assimtrica. O BSR pode, por exemplo, assinar
digitalmente a lista de possveis candidatos a RP.
9. O Modelo Iolus
Neste modelo, o objetivo desenvolver uma arquitetura que garanta multicast seguro e
escalvel. Essa garantia dada com base numa rvore de distribuio segura.
O Iolus tem uma estrutura bastante semelhante apresentada no item rvore
Hierrquica, com sub-grupos independentes entre si. Alm disso, tambm utiliza a
idia de vrias chaves criptogrficas diferentes.
Um dos problemas que afetam a escalabilidade de um grupo so as mudanas de
chave. Muitas vezes, a atualizao chega tarde ao destino (quando no mais til) ou,
no pior dos casos, nem chega.
No Iolus, a rvore composta de um nmero de sub-grupos organizados
hierarquicamente, criando um grupo virtual nico para multicast seguro. Por
simplicidade, sub-grupos sero denotados simplesmente por grupos. Cada grupo possui
o seu prprio endereo multicast e tambm suas prprias chaves, no havendo uma
chave global para o grupo virtual todo. O sistema tambm independente do protocolo
de roteamento utilizado. Assim, o problema de escalabilidade reduzido, com cada host
se associando ao seu grupo correspondente.
O segundo objetivo assegurar a existncia do grupo virtual nico. Isso
garantido com a existncia de entidades que gerenciam e interconectam os grupos,
chamadas de GSAs (Group Security Agents). Os GSAs compreendem o GSC (Group
Security Controller), que o gerente do grupo virtual; e os vrios GSIs (Group Security
Intermediaries), responsveis pelos grupos menores. Observe a figura abaixo:
sim que o GSI da empresa est ativo. A idia uma extenso do conceito do
IGMP: o roteador (GSC) no precisa saber a identidade de quem est no grupo, e
sim que existe pelo menos um membro nele (GSI).
o Tarifao flexvel relacionada ao gerenciamento, a tarifao tambm fica mais
fcil. A universidade pode cobrar por GSI, ao invs de cobrar por cada membro.
A empresa, por sua vez, repassa seus custos aos funcionrios (ou clientes)
interessados.
Informaes detalhadas do modelo Iolus e de propostas semelhantes podem ser
encontradas em [Mittra 1997] e [Judge e Ammar 2002], respectivamente.
10. Concluso
O tutorial apresentou uma viso geral sobre os principais aspectos envolvidos na
segurana de redes multicast. Foram abordadas questes como confidencialidade,
autenticao e gerenciamento de chaves de grupo. Em relao a problemas de infraestrutura, foram apresentados aspectos envolvendo roteamento e protocolos de
transporte.
Uma concluso geral a que se chega que a segurana em multicast difere da
segurana em unicast por motivos inerentes a natureza de cada um. No primeiro, a
segurana envolve apenas um par de estaes. J no segundo podem haver,
virtualmente, centenas de milhares delas. Essas diferenas afetam principalmente os
protocolos de roteamento utilizados e o gerenciamento das chaves de criptografia.
Da mesma forma que em redes unicast, o nvel de segurana para redes multicast
deve levar em conta fatores como:
o tipo de aplicao algumas aplicaes requerem menos segurana que outras.
Mais ainda: devem ser levadas em conta as diferenas entre autenticao e
confidencialidade;
o Tamanho do grupo e sua dinmica grupos que sofrem muitas alteraes so
inerentemente mais difceis de gerenciar. Da mesma forma, mais fcil aplicar
segurana a grupos pequenos e restritos a uma certa rea geogrfica.
o Escalabilidade por trabalhar com grupos, esse fator deve ser prioridade no
desenvolvimento de qualquer projeto que envolva multicast.
Um fator que tambm deve merecer ateno a poltica de segurana. Aqui,
pode-se incluir questes como quais hosts tm acesso a qu na rede; como a fonte e / ou
grupo so autenticados e qual o algoritmo de criptografia utilizado (chaves pblicas ou
privadas).
De forma a garantir tanto a autenticao quanto a confidencialidade, devem ser
estabelecidas polticas para o gerenciamento das chaves utilizadas para criptografar os
dados. Como mencionado no trabalho, uma boa soluo utilizar a km-keys, apesar de
isso poder acarretar em overhead e complexidade. necessrio tambm especificar em
que camada(s) a autenticao deve ser aplicada
As chaves de grupo devem ser constantemente atualizadas para fazer valer as
regras de forward e backward-secrecy. Essas chaves tambm devem ser entregues nos
momentos devidos, para permitir que os membros do grupo estejam sempre atualizados.
Ainda, interessante que a entrega das mesmas possua algum tipo de confirmao.
Em relao ao roteamento, o objetivo primordial deve ser garantir a integridade
da rvore de distribuio. Como j mencionado, muitos dos problemas que afetam o
roteamento podem ser resolvidos com base nas solues apresentadas nos tpicos de
autenticao, confidencialidade e gerenciamento de chaves. de especial interesse
tambm, desenvolver protocolos de transporte seguros, uma vez que eles podem ser
usados para o transporte das chaves 1 e 2.
Por fim, as melhores alternativas para segurana parecem apontar em duas
direes distintas. A primeira, para esquemas semelhantes ao Iolus, com diviso em
sub-grupos independentes em relao ao roteamento e ao gerenciamento das chaves. A
segunda, para a incorporao de segurana nos protocolos de transporte.
11. Bibliografia
Costa, L. H. M. K., e Duarte, O. C. M. B. (2003) Roteamento Multicast na Internet,
Mini-Curso do XXI Simpsio Brasileiro de Redes de Computadores SBRC' 2003,
Natal, RN, Brasil, Maio, 2003.
Dias, B., Medeiros, J., Alves, N. (2002) Implementao e Aplicao de IP Multicast
em Backbone Metropolitano (Rede Rio) Projeto MCAST, Projeto de final de
curso de graduao, Universidade do Estado do Rio de Janeiro.
Hardjono, T. e Tsudik, G. (2000) IP Multicast Security: Issues and Directions,
Annales de Telecom, Julho-Agosto 2000, pp 324-340.
Huitema, C. (2000) Routing in the Internet, 2nd Edition, Publicado por Prentice Hall
PTR, Upper Sadle River, New Jersey, E.U.A..
Judge, P., Ammar, M. (2002) Gothic: A Group Access Control Architecture for Secure
Multicast and Anycast, IEEE INFOCOM' 2002, New York, E.U.A., Junho, 2002.
Koyabe, M., Fairhurst, G. (2001) Satellite Reliable Multicast Transport Protocol
(SAT-RMTP A Network Tool for Multimedia File Distribution),
http://www.geocast-satellite.com/index2.phtml, Setembro, 2003.
Mittra, S. (1997) Iolus: A Framework for Scalable Secure Multicasting, ACM
SIGCOMM' 97, Cannes, Riviera Francesa, Frana, Setembro, 1997.
Perrig, A., Canetti, R., Song, D., e Tygar, J.D. (2001) Efficient and Secure Source
Authentication for Multicast, Network and Distributed System Security Symposium
NDSS' 2001, San Diego, California, E.U.A., Fevereiro, 2001.
Satmeeting. (2003) Satmeeting, http://www.satmeeting.com.br.
Shamir, A. (1979) Nick Szabo's Papers and Concise Tutorials How to Share a
Secret, http://szabo.best.vwh.net/secret.html, Setembro, 2003.
Shiroshita, T., Sano, T., Takahashi, O. (1997) Reliable Multicast Transport Protocol
(RMTP), Tokyo Research Laboratory IBM Japan, Fevereiro, 1997.
Shiroshita, T., Takahashi, O., Yamashita, M. (1996) Integrating Layered Security into
Reliable Multicast, NTT Information and Communication Systems Laboratories,
Outubro, 1996.
Whetten, B. (1998) RMTP-II Security Considerations, The Secure Multicast Research
Meeting (SmuG), Orlando, Florida, E.U.A., Dezembro. 1998.