Escolar Documentos
Profissional Documentos
Cultura Documentos
Negação de Serviço - Ataques e Contramedidas PDF
Negação de Serviço - Ataques e Contramedidas PDF
1
Negao de Servio: Ataques e Contramedidas
Rafael P. Laufer1 , Igor M. Moraes1 , Pedro B. Velloso1,2 ,
Marco D. D. Bicudo1 , Miguel Elias M. Campista1 , Daniel de O. Cunha1 ,
Lus Henrique M. K. Costa1 e Otto Carlos M. B. Duarte1
de Teleinformtica e Automao GTA
COPPE-Poli Universidade Federal do Rio de Janeiro
1 Grupo
2 Laboratoire
1.1. Introduo
A Internet um espao virtual de encontros e ao mesmo tempo um local de conflitos, devido diversidade cultural dos seus usurios. Esse ambiente cria um campo frtil
para aes maliciosas, que exploram falhas de segurana existentes nas aplicaes e nos
protocolos de comunicao da Internet. Vrus so enviados por e-mail, infectando computadores e se disseminando sem serem notados. Spams enchem as caixas de mensagens
dos usurios da rede. Usurios mal-intencionados, que vo desde quadrilhas muito bem
estruturadas a meros adolescentes em busca de auto-afirmao, tentam invadir computadores e redes para roubar informaes confidenciais ou apenas mostrar seu potencial.
Ataques de negao de servio (Denial of Service DoS) consomem os recursos de servidores e roteadores e impedem que usurios legtimos tenham acesso a um determinado
servio. Enfim, a lista de ataques cresce a cada dia.
Estatsticas apontam um crescimento mundial de 226% no volume de mensagens
eletrnicas no solicitadas (spams) de abril para maio de 2005 [IBM Report, 2005]. Neste
mesmo perodo, o aumento no volume de e-mails contendo pragas digitais aumentou de
33%. O montante de e-mails no solicitados j representa 68,7% de todos os e-mails que
circulam na Internet e os que contm pragas digitais representam 3,12%. No Brasil esse
problema bem grave, pois atualmente o pas apontado como o 5o maior receptor de
spams no mundo [Globo Online, 2005]. Apesar de todos os esforos para bloque-los,
muitos ainda no so filtrados devido ao avano de tcnicas para burlar os programas
anti-spam. Provedores acabam aumentando o custo de sua operao por disponibilizar
involuntariamente recursos para armazenar e enviar spams. No que se refere a negao
de servio na Internet, um estudo recente estima em mais de 4000 o nmero de ataques
em um perodo de uma semana [Moore et al., 2001]. Um resultado importante mostra
ainda que grande parte dos ataques so concentrados em vtimas brasileiras. De acordo
com as informaes analisadas, o domnio .br o quarto domnio mais atacado por
inundaes visando a negao de servio, concentrando cerca de 5 a 7% dos ataques. Em
toda a Internet, somente os domnios .net, .com e .ro foram mais atacados que o
domnio brasileiro. Uma informao do relatrio anual do CSI/FBI (Computer Security
Institute/Federal Bureau of Investigation) [Gordon et al., 2005] sobre crimes na rea de
computao afirma ainda que os ataques de negao de servio esto entre os incidentes
de segurana que mais causam prejuzo s instituies americanas.
At o momento, no h uma soluo completa para a maioria dos problemas de
segurana da Internet. Porm, a ocorrncia e os efeitos de alguns destes ataques foram
reduzidos, atravs da adoo de determinadas ferramentas. O uso de firewalls reduz o
nmero de invases a redes de computadores, uma vez que, com exceo dos pacotes
legtimos, todo o trfego de entrada bloqueado. Os programas antivrus previnem a
execuo de vrus e vermes conhecidos no computador no qual esto rodando. Dessa
forma, os antivrus impedem a infeco do computador e interrompem a disseminao
de tais pragas pela rede. Da mesma forma, os programas anti-spam buscam reduzir o
nmero de mensagens no solicitadas recebidas. Entretanto, tanto os antivrus quanto
os anti-spams tm que ser constantemente atualizados, pois novas pragas e tcnicas para
enviar mensagens no solicitadas surgem a cada dia. Sistemas operacionais e aplicaes
verificam periodicamente a existncia de atualizaes de software e automaticamente se
remendam, o que reduz o nmero de vulnerabilidades que podem ser exploradas em um
introduzido como parte de um vrus, verme, cavalo de Tria ou at mesmo como parte
de programas legtimos. Vale ressaltar que os termos spyware, adware e stealware so
comumente utilizados para descrever o mesmo tipo de cdigo malicioso ou tipos semelhantes desta praga digital. Vrios pases esto em vias de banir legalmente, ou pelo
menos controlar, este tipo de abuso digital. Os softwares-espies so usados geralmente
para colher informaes com o fim de gerar estatsticas sobre senhas, hbitos do usurio, stios da Internet acessados por um grupo de usurios de caractersticas especficas,
sistema operacional utilizado, aplicaes instaladas nos computadores, etc. Tambm podem ser coletadas informaes de nomes e sobrenomes dos usurios, nmeros de cartes
de crdito e outras informaes pessoais. Estas informaes so geralmente combinadas
com outras bases de dados de usurios e consumidores potenciais, criando assim perfis
de indivduos. Estes perfis podem ento ser usados para fins de marketing e pesquisa de
mercado.
O termo adware, que vem do ingls advertisement software, designa qualquer
software ou parte de software, no necessariamente malicioso, que exibe propagandas
enquanto uma aplicao principal executada. Estas aplicaes exibem na tela do usurio janelas de navegadores (pop-ups) ou do ambiente grfico do usurio com anncios
de organizaes patrocinadoras do software. Os adwares so geralmente encontrados em
programas shareware, que so aplicativos que possuem licena de utilizao temporria,
ou programas freeware, que so gratuitos. Ambos esto comumente disponveis na Internet. Atravs da comercializao destes anncios, pequenas empresas de software ou
programadores autnomos podem financiar o desenvolvimento de um software. Porm,
um adware no designa apenas a utilizao de aplicaes como meio de propaganda. Um
adware tambm pode se servir dos chamados defeitos de Web (Web bugs) para coletar
informaes sobre usurios de computadores e compilar perfis de usurios, se assemelhando ao comportamento de um spyware. Por exemplo, existem stios da Internet que
requisitam, s vezes compulsoriamente, aos usurios que acessam suas pginas que aceitem cookies, que so pequenos arquivos armazenados para monitorar o acesso dos usurios. Alguns desses cookies so considerados defeitos de Web, pois podem ser explorados
como fonte de informao sobre o usurio e suas aes.
O stealware um programa ladro de audincia. Na Internet, muitas vezes o
stio de uma organizao possui atalhos (links) para o stio de patrocinadores da organizao. A organizao remunerada pela empresa patrocinadora atravs da contagem
dos cliques que os usurios realizaram no link do patrocinador. O stealware burla este
mecanismo, de forma a contabilizar os cliques realizados para uma outra organizao,
diferente da organizao legtima. A identificao da organizao geralmente realizada
por informaes armazenadas na estao do usurio, como cookies, ou atravs do prprio
endereo da pgina Web acessada. Normalmente, o stealware embutido em softwares
que alguns stios obrigam o usurio a instalar, como requisito para liberar o acesso do
usurio ao stio. O usurio, ao executar o software que permite acesso ao contedo restrito, executa tambm o cdigo malicioso. Tudo o que o stealware tem a fazer ento
modificar os cookies na mquina do usurio ou forjar o endereo da pgina acessada.
A prtica de enviar spam tem crescido na Internet a ponto de seus usurios manifestarem insatisfao e uma menor credibilidade no correio eletrnico. Os spams so
de contedo variados como informaes polticas, religiosas, culturais etc. No entanto, a
maioria dos spams atuais possui contedos publicitrios de produtos ou servios, fraudes
e atividades ilcitas. Esta seo descreve como os spammers obtm as listas de endereos,
porque to fcil enviar spams, como os spammers mantm o anonimato e as possveis
medidas para combater o envio de spams.
Obteno de Endereos e a Escolha das Vtimas
A prtica do envio de e-mails no solicitados tornou-se uma atividade lucrativa
no s com a venda dos produtos e servios anunciados como tambm com a prpria
atividade de criao e envio de spams. Muitas empresas pagam spammers para criar mensagens eletrnicas para promover as suas ofertas. Outra forma de lucrar com os spams
atravs da obteno de endereos eletrnicos de usurios da Internet. Para tal, os spammers podem utilizar diversas tcnicas. Dentre elas esto a invaso de servidores para
aquisio de listas de endereos de possveis membros associados, a interceptao de emails de grupos e ainda a utilizao de programas populares como o ICQ [ICQ, 2005], o
MSN Messenger [Microsoft, 2005] e o Orkut [Bykkokten, 2005]. Utilizando e-mails
de grupos, o spammer pode obter diversos endereos a partir de listas em cpia. Conforme
o e-mail vai sendo encaminhado, maior o nmero de endereos presentes. J os programas populares citados acima tambm podem ser usados por spammers, pois eles oferecem
mecanismos automticos de busca por nomes e geram listas de endereos associados.
Aps obter os potenciais endereos dos destinatrios, necessrio saber se eles
so ativos. Para saber se um usurio ativo existem diversas tcnicas utilizadas pelos
spammers. Uma delas consiste em enviar um atalho para um endereo de um stio (link)
em uma figura junto com o endereo de e-mail do destinatrio conforme a Figura 1.1.
Caso o destinatrio tente visualizar a figura, ele ir baix-la do stio e abrir uma conexo
HTTP (HyperText Transfer Protocol) com o servidor de imagens do spammer. Assim,
atravs dos seus registros de HTTP o spammer saber que o usurio existe, quem ele
e que figura ele visualizou. Esse procedimento permite validar o endereo como ativo
e, ao mesmo tempo, criar um perfil associado a este endereo pelo tipo de figura que foi
selecionada. Algumas configuraes de programas de correio eletrnicos permitem exibir
a mensagem automaticamente facilitando a obteno dos endereos pelos spammers. Os
spammers podem ainda verificar a existncia do usurio ao receber a solicitao de no
recebimento de um determinado e-mail. Assim, regras estabelecidas por legislaes antispam, como o CAN-SPAM, podem ser utilizadas em benefcio do prprio spammer. Para
evitar esse tipo de rastreamento, um usurio nunca deve visualizar um spam.
<a href="http://www.meusite.com.br?email=destinatario@email.com.br">
<img src="http://www.meusite.com.br/imagem/figura.gif?email=destinatario@email.com.br"
height=1 width=1 alt=""><\a>
Figura 1.1. Tcnica para descobrir se o usurio est ativo.
qualidade dos perfis dos destinatrios. Assim, spams especficos podem ser direcionados
para determinadas listas de endereos. Algumas empresas oferecem uma porcentagem
sobre cada produto vendido para a pessoa que obteve a lista [Spammer-X et al., 2004].
O perfil do usurio pode ser tambm obtido atravs da invaso de servidores especficos,
como o servidor de um stio de astrologia, stio de jogos, etc.
Evoluo do Spam e suas Finalidades
A simplicidade do protocolo SMTP (Simple Mail Transport Protocol) exige o
conhecimento de poucos comandos para se enviar um e-mail, bastando apenas a abertura
de uma conexo Telnet com um servidor SMTP. Como no verificado se o usurio
que originou o e-mail existe, torna-se fcil gerar um spam utilizando outros nomes de
remetentes. Essas caractersticas facilitaram o surgimento de tcnicas para se gerar e
enviar e-mails com finalidades lucrativas e ainda manter o anonimato.
Inicialmente, os spams eram em maioria e-mails em HTML com uma figura chamativa ou apenas uma frase e um atalho que indicava onde encontrar mais do contedo
anunciado. Conhecendo as preferncias do destinatrio, torna-se mais fcil influenci-lo.
A Figura 1.2 mostra um exemplo de um spam em HTML.
<HTML>
<head><title> Interessado em dinheiro fcil?</title> </head>
<body>
<a href="http://www.meusite.com.br/dinheiro">
Clique aqui e entre para o mundo do dinheiro fcil!!! </a>
</body>
</HTML>
Figura 1.2. Exemplo de um spam em HTML.
dado em provedores convencionais, a conta do spammer ser cancelada dado que denncias so feitas ao provedor por vtimas de spams. Provedores convencionais no permitem
que seus assinantes sejam spammers, pois podem ser penalizados por infringir polticas
anti-spam. Assim, os spammers utilizam provedores que se propem a hospedar o contedo dos seus stios. Esses provedores cobram caro por esse servio e hospedam stios
com qualquer contedo ignorando a possibilidade de serem penalizados. Algumas outras
tcnicas podem ser utilizadas por spammers para hospedar seu contedo. Os spammers
podem hospedar seu contedo pela Internet em computadores pessoais ou em servidores
sem o conhecimento do proprietrio. Para tal, necessrio que o computador seja invadido ou que o dono do computador instale inconscientemente programas que do direitos
aos spammers de utilizar o computador infectado. Por conseguinte, os spammers podem
hospedar seu contedo gratuitamente.
O surgimento de penas criminais e mecanismos anti-spams como as listas negras
trouxeram a necessidade de se manter o anonimato no envio dos spams. O anonimato
importante visto que os spams podem conter informaes falsas, oferecer produtos inexistentes e ainda utilizar identidades de terceiros configurando em atividades sujeitas a
penas criminais. Para evitar tambm que o seu endereo IP ou domnio seja bloqueado
por outros servidores de e-mail, necessrio que o spammer mantenha o anonimato e
utilize outros computadores para enviar os seus spams.
A primeira forma de enviar spams mantendo o anonimato foi atravs de servidores
proxy transparentes que utilizam protocolos como o Socks v5 [Leech, 1996]. Utilizando
o Socks v5 em sua configurao padro, um proxy transparente permite que qualquer
computador na Internet o utilize para encaminhar seus pacotes para qualquer servidor
de e-mails, sem se identificar. Para evitar que esse proxy seja rapidamente adicionado a
listas negras, o spammer utiliza alternadamente diversos servidores proxy vulnerveis para
enviar os seus e-mails. Outra estratgia empregada para enviar spams utilizar servidores
em pases com lnguas diferentes para dificultar a comunicao entre o servidor de e-mail
atacado e o responsvel pelo proxy utilizado.
Utilizar servidores SMTP com relay aberto uma outra forma de enviar spams.
Ao enviar um e-mail, o spammer utiliza o servidor SMTP com relay aberto para reencaminhar o seu e-mail mantendo o anonimato, de forma similar ao envio por servidores proxy.
O emprego de relays SMTP era bastante comum nos provedores de Internet permitindo
que qualquer usurio da Internet os acessassem.
Para no serem usados por spammers, tanto os servidores proxy quanto os SMTP
no devem encaminhar fluxos de dados de computadores externos sua rede local e devem utilizar firewalls. importante notar que os endereos IP de origem no podem ser
forjados porque o SMTP funciona sobre o TCP (Transmission Control Protocol), portanto
necessrio o estabelecimento de conexo.
Atualmente, servidores proxy e servidores SMTP com relay aberto no so to
utilizados por spammers. Assim, como os spammers conseguem facilmente encontr-los
na rede, eles tambm so rapidamente adicionados em listas negras de provedores da Internet. Algumas tcnicas que tambm podem manter o spammer annimo so exploradas.
Os spams podem ser enviados atravs de programas de bate-papo como o ICQ ou o MSN
Messenger por usurios maliciosos. Computadores que utilizam faixas de endereos IP
dinmicos tambm podem ser utilizados para envio de e-mails no solicitados, pois garantem o anonimato da fonte. Diferentes endereos IP dentro de uma faixa so fornecidos
aos usurios de grandes provedores na Internet cada vez que ele se conecta. Assim, no h
como garantir que um determinado usurio realmente o spammer. Para combater essa
prtica, necessrio bloquear faixas de endereos IP ou domnios. Porm, nem sempre
essa atitude possvel porque na maioria das vezes essa faixa pertence a algum grande
provedor de acesso.
Uma tcnica elaborada de envio de spams consiste em se apropriar de um roteador
e de uma faixa de endereos IP. Os spammers adquirem faixas de endereos IP vlidos
que no estejam sendo utilizados e invadem um roteador com falhas de segurana. Assim,
ele manipula o pedido de atualizao de rotas e anuncia a todos os outros roteadores
vizinhos que o roteador invadido a nica rota para a faixa de endereos IP adquirida
maliciosamente. O spammer configura o roteador para transferir todo os fluxos de dados
gerados a partir de spams para o seu computador, toma posse de uma faixa de endereos
IP e de um roteador para uso prprio. Quando um dos endereos IP da faixa adicionado
a uma lista negra, ele passa a utilizar outro endereo IP da faixa adquirida. Como no
h relao entre endereos IP e regies geogrficas, dificil de se localizar o roteador
invadido a partir do seu endereo IP.
Mecanismos Anti-spam
Para se evitar spams, muitas empresas investem no desenvolvimento de mecanismos anti-spam. Existem diversas formas de se evitar os spams, porm todas elas se
baseiam na filtragem de mensagens no solicitadas. A filtragem pode ser realizada de
acordo com os campos do cabealho e o contedo de um e-mail.
A filtragem pelo o cabealho explora principalmente os campos de endereo de
origem, nome do remetente e assunto do e-mail. Um usurio pode configurar seu cliente
de e-mail para filtrar todas as mensagens provenientes de endereos ou remetentes indesejados. Alm dessa filtragem, os programas anti-spam podem ainda verificar a consistncia
das informaes contidas no cabealho. Por exemplo, se o endereo IP de origem no condiz com o domnio, esse e-mail deve ser filtrado. Se o e-mail tiver sido encaminhado por
um proxy, o e-mail tambm pode ser bloqueado devido s conhecidas vulnerabilidades.
A consistncia de informaes contidas no cabealho pode ser verificada atravs
do DNS (Domain Name System) reverso. O DNS reverso deve estar sempre configurado
para apontar o endereo IP correspondente. Como os spammers devem manter o anonimato, o DNS reverso de seus computadores no so configurados, ou seja, eles no
apontam o seu endereo IP. Os programas anti-spam bloqueiam ento todo o e-mail cujo
remetente no possui DNS reverso. Muitos provedores de acesso utilizam faixas de endereos IP dinmicos e, por conseguinte, seus clientes utilizam um DNS reverso genrico
adotado pelo provedor. Como utilizar endereos IP dinmicos uma forma de manter
anonimato usado por spammers, os anti-spams normalmente bloqueiam esse tipo de conexo. Um dos problemas dessa abordagem que diversos administradores de redes no
configuram o DNS reverso, gerando falsos positivos.
Os programas anti-spam podem tambm utilizar listas para fazer filtragem por ca-
bealho. Existem trs tipos de listas: as negras, as cinzas e as brancas. As listas negras
so utilizadas para bloqueio incondicional dos e-mails. Sempre que um e-mail recebido
proveniente de um endereo ou domnio, contido numa lista negra, ele bloqueado. Os
domnios ou endereos IP so adicionados s listas negras aps se verificar um alto nmero de spams provenientes dessa fonte. J os programas que utilizam listas cinzas (Gray
Lists) bloqueiam sempre toda a primeira conexo SMTP desconhecida e enviam ao servidor SMTP do remetente uma mensagem de erro temporria. Caso o servidor de e-mail
seja legtimo, ele ir reenviar mais tarde o e-mail. Para evitar a recepo de milhares de
mensagens de erro, alguns spammers no utilizam servidores SMTP. So usados clientes
que se conectam diretamente ao servidor SMTP do destinatrio. Como os spammers no
recebem as mensagens de erro temporrias, eles no retransmitem e-mails bloqueados por
listas cinzas. As listas brancas (White Lists) so listas que contm os nomes dos servidores e domnios confiveis. Sempre que um e-mail recebido proveniente de algum dos
endereos IP ou domnios pertencentes lista branca, ele aceito.
Caso o assunto do e-mail possua palavras exploradas em e-mails comerciais, esses
sero tambm filtrados.
O bloqueio por contedo realizado atravs da deteco de palavras comerciais
comuns no corpo dos e-mails, reconhecimento de padres ou pela presena de anexos
suspeitos. E-mails com palavras como Viagra so facilmente bloqueadas, pois na maioria das vezes no so requisitados. Uma forma de burlar um sistema anti-spam mudar
letras de palavras conhecidas como Viagra por outras com caracteres semelhantes como
\/iagra. Uma outra forma de burlar o bloqueio por contedo colocar o anncio numa
figura, assim o corpo e o assunto do e-mail no contm nenhuma evidncia procurada.
Alguns anti-spams so configurados para sempre bloquear arquivos anexados porque o
anncio pode estar disfarado como figura ou algum outro tipo de arquivo.
Outra forma de filtragem por contedo atravs da anlise de diversos e-mails
enviados para destinatrios distintos. Caso um padro semelhante seja observado, h uma
grande probabilidade de ser um e-mail no solicitado enviado a diversas pessoas. Como
a maioria dos filtros por contedo determinstica, adicionando-se aleatoriedade a um
spam evita-se que um comportamento ou contedo comum seja detectado. Para tornar
os anti-spams adaptativos, mecanismos baseados em tcnicas de inteligncia artificial so
empregados para filtrar os spams de acordo com o seu contedo.
Aproximaes baseadas em tcnicas de inteligncia artificial usando redes Bayesianas para classificar e-mails vm sendo propostas [Sahami et al., 1998]. Atravs das
redes Bayesianas possvel a adaptao da classificao do e-mail ao longo da utilizao
do anti-spam. Baseado numa lista de regras e em experincias passadas atribuda uma
probabilidade de um e-mail ser um spam a cada uma das regras. Cada e-mail comparado com cada regra para decidir se o e-mail se trata de um spam. Ao final da anlise,
a probabilidade do e-mail ser um spam computada baseada em todas as comparaes.
As probabilidades de cada regra so atualizadas a cada e-mail de acordo com a ao do
usurio, isto , se um usurio exclui ou no o e-mail.
Os anti-spams podem tornar-se mais eficientes se aplicarem diversas tcnicas em
conjunto. Esse o princpio de programas como o Spam-Assassin [SpamAssassin, 2005]
que utiliza tcnicas de filtragem por cabealho e por contedo. Novos conceitos baseados
rastreamento, uma vez que estes dispem de apenas um pacote para identificar o atacante.
1.3.2. A Negao de Servio e a Arquitetura da Internet
Trs caractersticas so responsveis pelo sucesso da Internet: a velocidade de
transmisso de dados, a confiabilidade e o compartilhamento do meio com a conseqente
reduo do custo de comunicao. Tais caractersticas provm da tcnica de comutao por pacotes e dos protocolos TCP/IP (Transmission Control Protocol/Internetworking
Protocol). Entretanto, alguns princpios da comutao de pacotes e dos protocolos TCP/IP
facilitam a ploriferao de ataques de negao de servio.
Na Internet no h reserva de recursos em uma comunicao entre dois ns, pois
se adota o melhor esforo como procedimento bsico. Tal fato faz com que um ataque
de negao de servio busque consumir o mximo dos recursos da rede. Dessa forma, os
usurios legtimos so prejudicados, uma vez que os recursos, ora usados por eles, esto
sendo empregados em aes maliciosas.
O roteamento outro fator facilitador para os ataques de negao de servio. Na
Internet, um pacote pode ser encaminhado atravs de qualquer rota entre o n fonte e o n
destino. O processo de seleo de rotas feito pelos ns intermedirios e transparente
para a fonte e para o destino. Alm da transparncia na seleo de rotas, somente o endereo de destino usado pela infra-estrutura de rede para que um pacote seja devidamente
roteado at o seu destino. Nenhuma verificao realizada para confirmar a autenticidade
dos pacotes IP, ou seja, no existem mtodos para assegurar que o endereo de origem
de cada pacote IP autntico. Desta forma, atacantes experientes que no necessitam de
comunicaes bidirecionais podem se aproveitar desta caracterstica para manter o anonimato durante ataques de negao de servio. Tanto em ataques por inundao quanto
em ataques por vulnerabilidades, atacantes podem forjar o endereo IP de origem e enviar
tais pacotes para a vtima sem deixar nenhum rastro que possa identific-los.
Como a seleo de rotas feita pelos ns intermedirios, torna-se difcil detectar
e filtrar pacotes IP com endereo de origem forjado. A Figura 1.3 ilustra esse problema.
Os pacotes gerados pelo n A e destinados ao n B so encaminhados atravs do roteador
R1 . O roteador R2 est localizado em outro ponto da Internet. Quando um pacote com
endereo de origem do n A e destinado ao n B recebido por R2 , este n no consegue
determinar se o endereo da fonte contido no pacote forjado, ou se o roteador R1 falhou
e, por isso, os pacotes esto sendo encaminhados por outra rota. Dessa forma, o roteador
R2 encaminha normalmente o pacote para o n B.
AB
R1
AB
AB
Rede
R2
AB
servidor fora do ar por um certo perodo em troca de uma remunerao paga por terceiros. Uma empresa poderia contratar tais servios e usar estes ataques para prejudicar a
imagem de seus concorrentes e se beneficiar diretamente. Este procedimento pernicioso
alcana requintes de organizao inimaginveis, pois existem redes inteiramente formadas por computadores comprometidos, os chamados zumbis, que esto sendo alugadas
de forma a serem usadas em ataques de negao de servio [Reuters, 2004]. O trabalho de comprometer um determinado nmero de estaes e control-las remotamente
realizado inicialmente e depois os recursos disponveis em cada uma destas estaes
colocado disposio de quem quiser alug-los para qualquer tipo de atividade, como
o envio de spams, fraudes digitais e ataques de negao de servio. Outro exemplo assustador o uso destes ataques como forma de extorso. Uma maneira que vem sendo
usada freqentemente por atacantes exigir um pagamento de determinados stios para
evitar que seu servidor seja atacado [Shachtman, 2003]. Representantes de organizaes
que fazem o pagamento tm o stio assegurado enquanto aqueles que no pagam sofrem
consecutivos ataques de curta durao.
Motivos polticos tambm podem ser a causa de um ataque de negao de servio. Um determinado grupo com idias diferentes de uma determinada organizao ou
instituio pode atacar a sua rede e os seus servidores de modo a impedir a divulgao
de certas informaes. Como exemplo, o stio da rede de televiso Al-Jazeera sofreu um
intenso ataque de negao de servio distribudo durante a investida americana no Iraque [Gray e Fried, 2003]. Aparentemente, o ataque foi direcionado aos servidores DNS,
cuja funo converter o nome do stio no seu respectivo endereo IP, usados pela emissora. Como conseqncia, no era possvel determinar o seu endereo IP e o acesso era
negado.
1.3.4. Classificao dos Ataques
Diversos fatores, como o nmero de atacantes envolvidos e o tipo de recurso explorado na vtima, podem ser usados para classificar os ataques de negao de servio.
Nesta seo, os ataques so classificados em: por inundao, por refletor, a infra-estrutura
de redes, por vulnerabilidades e distribudos.
Ataques por Inundao
Um dos ataques de negao de servio mais conhecidos o ataque por inundao de segmentos TCP SYN, que explora o procedimento de abertura de conexo do
protocolo de transporte TCP. O protocolo TCP utilizado em servios que necessitam
de entrega confivel de dados, como a transferncia de arquivos. Uma conexo TCP se
inicia com a negociao de determinados parmetros entre o cliente e o servidor. A Figura 1.4 ilustra o processo de abertura de uma conexo TCP. Inicialmente, o cliente envia
um segmento TCP SYN para o servidor, indicando um pedido de abertura de conexo.
Este segmento leva consigo um parmetro denominado nmero de seqncia inicial. O
nmero de seqncia possibilita que o receptor reconhea dados perdidos, repetidos ou
fora de ordem. Aps o recebimento do segmento TCP SYN, o servidor necessita de tempo
para processar o pedido de conexo e alocar memria para armazenar informaes sobre
o cliente. Em seguida, um segmento TCP SYN/ACK enviado como resposta de forma a
notificar o cliente que o seu pedido de conexo foi aceito. O segmento de resposta reco-
Servidor
Tempo
SYN
seq = x
SYN/ACK
ck = x+1
seq = y, a
ACK
seq = x+1
, ack = y+
1
A partir deste procedimento, os recursos da vtima podem ser explorados de maneiras distintas. Para analisar com mais detalhes como cada recurso explorado, so
definidos alguns parmetros relacionados vtima e ao atacante. Seja ta o intervalo de
tempo entre cada segmento TCP SYN enviado pelo atacante, t p o tempo necessrio para
que a vtima processe um pedido de conexo TCP e envie uma resposta, e tm o tempo em
que um determinado recurso de memria fica alocado para uma conexo TCP.
Um ataque ao processamento da vtima pode ser realizado quando o atacante consegue gerar segmentos a uma taxa mais rpida do que a vtima consegue process-los, ou
seja, quando ta < t p . A Figura 1.5 mostra um ataque de negao de servio realizado para
sobrecarregar o processamento da vtima. Neste caso, a vtima no consegue processar
os pedidos de conexo em tempo hbil, o que faz com que a fila de pedidos encha e que
muitos deles sejam descartados. Desta forma, caso um usurio legtimo tente acessar o
servio que est sendo atacado, muito provvel que seu pedido de conexo seja descartado junto com o trfego de ataque. Isso ocorre porque o trfego do usurio legtimo
precisa disputar o mesmo recurso com os inmeros segmentos enviados pelo atacante.
importante ressaltar ainda que, para permanecer annimo, o atacante no precisa usar seu
endereo IP verdadeiro para realizar o ataque. Na verdade, qualquer endereo IP pode
ser usado como endereo de origem nos pacotes de ataque. O uso de endereos de origem forjados no altera em nada o efeito sofrido pela vtima. No entanto, a resposta ao
pedido de conexo no retorna para o atacante, mas sim para o endereo usado em seus
pacotes. Desta forma, o atacante consegue no s negar o servio da vtima, mas tambm
permanecer annimo.
Um outro recurso que pode ser explorado durante ataques por inundao de segmentos TCP SYN a memria da vtima. Quando o servidor recebe um pedido de abertura de conexo TCP, ele aloca uma pequena quantidade de memria para armazenar
determinadas informaes sobre o estado da conexo, como os nmeros de seqncia ini-
Atacante
Vtima
SYN
Tempo
ta
SYN
tp
SYN/ACK
Atacante
Vtima
Tempo
SYN
ta
SYN
tm
SYN/ACK
possibilidade ocorre quando t p ta < tm . Neste caso, a vtima consegue processar as requisies, mas espaos de memria vo sendo consumidos por cada nova conexo e no
so liberados a tempo para atender a todas as conexes. Portanto, novas conexes no
so aceitas por falta de memria. O ltimo caso ocorre quando o atacante no consegue
gerar pacotes de ataque a uma taxa suficiente nem para sobrecarregar a memria, ou seja,
ta tm . Neste caso, os recursos da vtima no so atacados diretamente e outras formas
de ataques so necessrias para negar o servio oferecido.
Uma soluo proposta por Schuba et al. [Schuba et al., 1997] sugere que o servidor no armazene nenhum estado ao receber um segmento TCP SYN, de forma a evitar
ataques por inundao que sobrecarreguem a memria. A idia dos autores que somente
um segmento TCP SYN/ACK seja enviado como resposta e que o nmero de seqncia
enviado pelo servidor seja o valor hash dos endereos IP de origem e destino, das portas TCP, do nmero de seqncia inicial do cliente e de um valor secreto armazenado
no servidor. Ao receber o segmento TCP ACK, o servidor verifica se o seu nmero de
seqncia est correto atravs do clculo do valor hash. Caso esteja correto, a memria
enfim alocada para a conexo. Apesar de ser eficiente contra ataques que visam esgotar a
memria, este mecanismo apresenta pequenas desvantagens. Um problema a possibilidade de conexes serem estabelecidas somente com o segmento TCP ACK. Apesar de a
probabilidade deste caso ocorrer seja pequena, tal evento no impossvel. Alm disso, o
protocolo TCP no consegue mais oferecer a tolerncia a falhas para o caso de conexes
semi-abertas, uma vez que no h mais registro destas conexes no servidor.
importante ressaltar que o consumo de processamento e memria da vtima
atravs de ataques de inundao no ocorre somente em ataques ao protocolo TCP. Na
verdade, o conceito apresentado aqui mais geral e pode ser aplicado a outros protocolos
usados. O ataque ao processamento da vtima pode ser realizado praticamente a qualquer
protocolo, uma vez que todas as mensagens recebidas precisam ser processadas. O ataque
memria, por outro lado, exige algum tipo de alocao de recursos de memria na vtima
para que tenha sucesso.
Refletor
Vtima
REQ
Tempo
ta
tr
REQ
RESP
RESP
tp
Uma das vantagens deste tipo de ataque que o prprio refletor pode contribuir
para o consumo de recursos da vtima. Isso ocorre quando uma mensagem de requisio enviada pelo atacante menor que a mensagem de resposta enviada pelo refletor. Neste caso, dito que o refletor tambm atua como amplificador do trfego de ataque. Um exemplo tpico onde o trfego enviado pelo atacante amplificado o ataque
Smurf [CERT, 1998], ilustrado na Figura 1.8. Neste caso, o atacante envia pacotes ICMP
para o endereo IP de difuso de uma determinada rede usando o endereo IP de origem
da vtima. Como conseqncia, todos as estaes daquela rede respondem requisio,
enviando uma resposta para a vtima. Neste caso, todas as estaes da rede foram usadas
como refletores apenas com o envio de um nico pacote.
A
H1
H2
H3
R1
H4
H5
Figura 1.8. Ataque atravs da inundao ICMP: o atacante A envia pacotes ping
para a rede refletora se passando pela vtima V para provocar uma inundao
endereada vtima.
Outro exemplo de ataque por refletor inunda as vtimas com pacotes UDP. Neste
caso, um atacante pode deixar fora do ar duas vtimas, fazendo com que as duas enviem
continuamente pacotes uma para a outra. Para que tal fato ocorra, o atacante deve enviar
um pacote aparentemente originado pelo servio ICMP echo da vtima V1 para o servio
de gerao de caracteres (chargen) [Postel, 1983] da vtima V2 . Como mostra a Figura 1.9,
ao receber o pacote ICMP echo com endereo de origem de V1 , a vtima V2 envia uma
resposta para a vtima V1 , que responde novamente para V2 e dessa forma cria-se um
loop. Conseqentemente, o pacote de ataque nunca vai deixar a rede. Portanto, se um
atacante envia um grande nmero de pacotes ICMP echo com o endereo IP de origem
forjado, ele pode consumir a banda passante e sobrecarregar a vtima. O servio chargen
tambm pode ser utilizado para amplificar o trfego de ataque. Apenas com o envio de um
pequeno pacote para tal servio, uma grande seqncia de caracteres gerada e enviada
como resposta. Desta forma, supondo um fator de amplificao de 50, o trfego enviado
pelo atacante a 128 kbps chega na vtima a 6,4 Mbps.
Ataques a Infra-estrutura de Rede
Ataques de negao de servio muitas vezes so direcionados a stios famosos na
Internet. Desta forma, os seus autores conseguem uma fama maior como resultado do
ataque. Nestes casos, provvel que a prpria candidata vtima seja superdimensionada, ou seja, possua recursos de processamento e de memria em abundncia. Como
conseqncia, ataques distribudos de pequena escala no conseguem consumir tais recursos rpido o suficiente para que a vtima negue o seu servio para usurios legtimos.
Como uma alternativa, o atacante pode tentar concentrar seus esforos em algum ponto
V1
..
.
V1 V2
V2
Figura 1.9. Ataque atravs da inundao UDP: o atacante A envia pacotes para a
vtima V2 se passando pela vtima V1 para provocar uma troca infinita de mensagens entre as vtimas.
Ataques Distribudos
Os ataques de negao de servio distribudos so geralmente usados em ataques
por inundao, quando uma estao sozinha no capaz de consumir algum recurso da
vtima. Portanto, diversas estaes precisam ser usadas para gerar o trfego de ataque em
direo vtima e negar o seu servio. Estas estaes geralmente no pertencem ao atacante e so simplesmente computadores comprometidos por alguma falha de segurana.
Uma vez tendo comprometido uma estao, o atacante apaga os rastros deixados pela invaso e instala um programa para comand-la remotamente. Estes computadores ficam
ento sob o controle do atacante e, por isso, so chamados de agentes, escravos ou zumbis,
denotando que so comandados por uma outra entidade.
Diferentes maneiras podem ser usadas pelo atacante para penetrar no sistema de
outras estaes. Geralmente, estas estaes no possuem um sistema atualizado com as
ltimas verses dos programas usados. Como vulnerabilidades so encontradas freqentemente, possvel encontrar uma srie de estaes com verses ultrapassadas que possuem vulnerabilidades de segurana. Algumas destas vulnerabilidades podem ser exploradas remotamente e liberar o acesso ao invasor. Com o acesso estao invadida,
possvel se aproveitar de outras vulnerabilidades locais para obter determinados privilgios de administrador e controlar totalmente estao invadida. Outra possibilidade que
vem sendo muito usada atualmente obter a senha de uma determinada conta do sistema
atravs de ataque de fora bruta. O invasor tenta inmeras possibilidades como senha para
a conta em questo at conseguir penetrar na estao atacada.
Como os ataques de negao de servio distribudos podem ser compostos por
centenas ou milhares de zumbis [Mirkovic et al., 2004], a invaso manual de cada zumbi
individualmente se torna uma atividade cansativa para o atacante. Alm disso, medida
que o nmero de zumbis aumenta, muito difcil controlar cada zumbi sem nenhuma
forma de automao. Por isso, algumas ferramentas foram criadas de forma a encontrar
estaes vulnerveis e invad-las automaticamente. Outras ferramentas possibilitam a
criao de redes hierrquicas para permitir o controle de um grande nmero de zumbis.
Atravs dessas ferramentas, o atacante consegue comandar a todos os zumbis que iniciem
um ataque a uma determinada vtima com um simples comando.
De forma a esconder a sua identidade, o atacante pode usar diversas estaes intermedirias entre si mesmo e os zumbis. Estas estaes so denominadas mestres e
cada uma controla um determinado conjunto de zumbis. O atacante controla diretamente
cada estao-mestre que, por sua vez, repassa os comandos do atacante para os zumbis. A Figura 1.10 ilustra uma rede composta por um atacante A, pelas estaes-mestre
M1 , M2 e M3 e pelos zumbis Z1 , Z2 , Z3 , . . . , Z12 para atacar uma vtima V . Durante a execuo de um ataque, A comanda a M1 , M2 e M3 que iniciem um determinado ataque direcionado a V . As estaes-mestre ento repassam o comando para os zumbis sob seu
controle e eles inundam a vtima. O ataque escolhido pelo atacante A e realizado por cada
zumbi Zi pode ser qualquer um daqueles descritos anteriormente, inclusive ataques por
refletores. Alm da vantagem de manter a identidade do atacante escondida, o uso destas
redes hierrquicas essencial para o controle de uma grande quantidade de zumbis.
Para se rastrear o atacante, necessrio primeiro identificar os zumbis para depois
descobrir quem so os mestres e, por fim, chegar at o atacante. Logo, quanto mais cama-
M1
Z1
Z2
M2
Z4
Z3
Z6
Z5
M3
Z8
Z7
Z9
Z10
Z11
Z12
V
Figura 1.10. Ataque de negao de servio distribudo.
das existem nesta hierarquia, mais protegido est o atacante. A Figura 1.11 ilustra duas
tcnicas utilizadas para o atacante comandar as estaes-mestre. A primeira tcnica usada
por atacantes entrar em diversas estaes em seqncia antes de acessar os mestres. Inicialmente, o atacante A entra em uma estao intermediria I1 e, por meio dela, o controle
dos mestres enfim realizado. Uma outra maneira de realizar este controle indireto usar
uma sala de bate-papo atravs do protocolo IRC (Internet Relay Chat), ou seja, um canal
IRC. Neste caso, os mestres ou os prprios zumbis entram automaticamente em uma sala
de bate-papo de um servidor escolhido pelo atacante e ficam esperando ordens. O atacante
ento entra na sala e envia os comandos para que o ataque seja iniciado [Gibson, 2001].
I1
M1
Canal IRC
M2
M3
Diversas vantagens para o atacante surgem com a distribuio de ataques de negao de servio. A primeira vantagem conseguir deixar vtimas superdimensionadas
inoperantes. Por possurem recursos em abundncia, estas vtimas so imunes a ataques
de negao de servio partindo de um nico atacante. Entretanto, quando diversas estaes so usadas para a gerao de trfego de ataque, a vtima pode ser seriamente afetada.
Um fato importante que no importa o quo superdimensionada uma determinada vtima, ela sempre pode ter o seu servio negado desde que um nmero suficientemente
grande de zumbis seja reunido para o ataque. Caso a vtima tente amenizar o efeito de
um ataque distribudo atravs do aumento de seus recursos, o atacante pode simplesmente
usar mais zumbis e obter o mesmo resultado.
Para interromper um ataque distribudo em andamento, a identificao de somente
um zumbi no suficiente. Como o trfego agregado de diversos zumbis est inundando
a vtima, provvel que, ao interromper um nico zumbi, o efeito na vtima seja desprezvel. Neste caso, preciso identificar grande parte dos zumbis que esto atacando a
vtima e tentar filtrar este trfego de ataque o mais perto das fontes possvel. Entretanto,
s a identificao dos zumbis j uma tarefa difcil que pode precisar da colaborao
de diversos provedores de acesso. Alm disso, preciso contatar o responsvel ou o administrador do zumbi para que a inundao originada por ele termine. medida que o
nmero de zumbis cresce, no possvel realizar esta tarefa para cada zumbi e mais
difcil interromper o ataque.
Como soluo alternativa, possvel ainda tentar interromper a atividade de uma
estao-mestre diretamente. Porm, preciso antes identificar tais estaes para depois
tentar tomar alguma ao para interromper o ataque. Estas duas tarefas podem no ser
simples. A identificao de uma estao-mestre exige primeiro a identificao de pelo
menos um zumbi e a partir deste zumbi, tentar descobrir quem o est comandando remotamente. Alm disso, as ferramentas de controle destas estaes podem exigir algum
tipo de autenticao e bloquear o acesso de quem no autorizado. Desta forma, no
possvel parar o ataque sem a interveno do prprio administrador do zumbi.
1.3.5. Contramedidas aos Ataques de Negao de Servio
Existem algumas medidas capazes de evitar ou, pelo menos, reduzir os danos causados por ataques de negao de servio. Estas tcnicas podem ser divididas em duas
categorias: medidas preventivas e medidas reativas. As medidas preventivas buscam evitar ou reduzir a chance de que um ataque de negao de servio ocorra. As medidas
reativas, por outro lado, tentam lidar com ataques em andamento ou j encerrados. Para
serem efetivas, os dois tipos de tcnicas devem ser empregadas em conjunto. importante
utilizar medidas preventivas para reduzir o nmero de ataques; no entanto, impossvel
garantir que no ocorrero ataques. Para que as medidas preventivas sejam totalmente
eficazes, necessria a sua adoo em larga escala, possivelmente de forma cooperativa
entre diversas administraes. Para estes ataques que escapam s medidas preventivas
adotadas, resta a utilizao de medidas reativas.
Medidas Preventivas
A medida preventiva mais imediata a manuteno de todos os softwares dos sistemas finais devidamente atualizados. Este procedimento, alm de minimizar os ataques
por vulnerabilidades como os discutidos na Seo 1.3.4, tambm dificulta o domnio de
possveis zumbis. Fica claro, com isto, que a segurana dos usurios comea com os
prprios usurios. Os responsveis pelos sistemas finais no devem simplesmente espe-
rar que a infra-estrutura de rede fornea a segurana de seus sistemas, mas devem ser
participantes ativos deste processo.
Uma tcnica preventiva, denominada filtragem de ingresso (ingress filtering), foi
sugerida para evitar que pacotes com endereos IP de origem forjados trafeguem na
rede [Ferguson e Senie, 2000]. Implementada em alguns roteadores, a filtragem de ingresso descarta pacotes cujos endereos de origem no pertencem a determinados prefixos
legitimamente anunciados. Em outras palavras, um roteador encarregado da agregao de
rotas anunciadas por diversas redes em seu domnio deve impedir a sada de pacotes cujo
endereo de origem no pertence a nenhuma dessas redes. A Figura 1.12 ilustra este
conceito. Na figura, o atacante A est querendo atacar a vtima V usando pacotes com
endereos de origem forjados, de forma a manter o anonimato. Seus pacotes seguem at
a vtima V atravs dos roteadores R1 , R2 e R3 . Caso a filtragem de ingresso esteja implementada em R1 , somente aqueles pacotes cujo endereo de origem pertence a faixa
de endereos da Rede 1 so roteados. Pacotes com endereos de origem forjados so
automaticamente impedidos de sair da rede e descartados por R1 . Desta forma, somente
pacotes cujo endereo de origem esto dentro da faixa de endereos da Rede 1 podem ser
usados para o ataque. Neste caso, a vtima V consegue descobrir facilmente a origem dos
pacotes a partir de uma rpida anlise no trfego de ataque recebido. Roteadores podem
ainda agregar faixas de endereos de origem para diminuir o processamento realizado por
pacote. No exemplo, supondo que as faixas de endereos das Redes 1, 2, 3 e 4 podem ser
agregadas em somente uma faixa de endereos, R3 pode evitar a sada de pacotes forjados
verificando somente se o endereo do pacote est dentro da faixa agregada.
Rede 2
Rede 1
Rede 4
R1
R2
R3
Rede 3
Apesar de simples, esta tcnica apresenta desvantagens. H uma indesejvel dependncia entre a segurana do destinatrio final e as polticas adotadas nos roteadores
ao longo do caminho. Na verdade, no existem incentivos para que domnios adotem a
filtragem de ingresso como parte da poltica de segurana, uma vez que somente estaes
fora do prprio domnio so beneficiadas. Alm disso, a filtragem de ingresso precisa
ser implementada em uma escala global para ter efeito. Caso a implantao seja restrita
a poucos roteadores, somente ataques passando por esses roteadores sero controlados.
Uma outra desvantagem processamento adicional inserido durante o roteamento. Como
a filtragem influencia diretamente no processo de roteamento, o exame do endereo de
origem de cada pacote pode requisitar certos recursos que nem todo roteador disponibiliza. Existem ainda tecnologias que podem ser afetadas pela filtragem de ingresso, como o
IP Mvel [Perkins, 2002], pois utilizam legitimamente pacotes com endereos de origem
forjados.
Uma generalizao da tcnica de filtragem de ingresso foi proposta por Li et
al. [Li et al., 2002]. Os autores propem um protocolo que fornece aos roteadores algumas informaes que possibilitam validar o endereo de origem dos pacotes. A idia
bsica do protocolo que mensagens contendo informaes sobre endereos de origem
vlidos sejam propagadas a partir da prpria rede de origem para todos os roteadores da
rede. Desta forma, cada roteador consegue construir uma tabela de entrada que associa
cada interface a um conjunto de endereos de origem vlidos. Ao receber um pacote por
uma de suas interfaces, o roteador verifica se o endereo de origem do pacote est dentro
do conjunto de endereos associados quela interface. Caso o endereo esteja dentro do
conjunto, o pacote roteado normalmente e, em caso contrrio, ele descartado. O protocolo proposto semelhante a um protocolo de roteamento, onde as informaes sobre
os endereos de destinos so propagadas de forma que os roteadores possam construir
uma tabela associando endereos de destino com interfaces de sada, a chamada tabela de
roteamento. A diferena que protocolos de roteamento visam determinar por qual interface um pacote ser encaminhado enquanto que o protocolo de validao de endereo de
origem verifica se o pacote foi recebido pela interface adequada.
A desvantagem principal do protocolo de validao proposto o processamento
adicional necessrio durante o roteamento de cada pacote. Caso este protocolo venha a
ser implementado, roteadores tero que fazer consultas a cada uma das tabelas. Uma consulta na tabela de entrada necessria para determinar se o endereo de origem vlido e
outra consulta na tabela de roteamento necessria para determinar a interface de sada e
o prximo n a receber o pacote. Alm disso, o protocolo proposto tambm apresenta os
problemas de um protocolo de roteamento convencional, como a necessidade de atualizaes peridicas, a reao s mudanas topolgicas da rede, a garantia da integridade e da
autenticidade das mensagens trocadas e o uso eficiente da banda. Como objetivo final, ele
deve ainda garantir que pacotes com endereos de origem forjados sejam descartados e
que nenhum pacote com endereo legtimo o seja. Tudo isso torna o protocolo complexo.
Medidas Reativas
Nos casos em que o ataque no pode ser evitado, no resta alternativa se no tentar
faz-lo parar e buscar localizar o atacante para que sejam tomadas medidas reparativas.
Para isto, o primeiro passo necessariamente obter informaes sobre a origem do ataque.
O rastreamento de pacotes surge como uma forma de identificar a rota percorrida
por um determinado pacote at o seu verdadeiro emissor. No caso de ataques de negao
de servio, a identificao dos atacantes importante tanto para interromper o ataque
atravs de filtragem como para a adoo de medidas judiciais contra o prprio atacante.
Entretanto, o rastreamento ainda mais geral e pode ser til em qualquer ocasio onde
necessrio determinar a origem ou a rota percorrida por um determinado pacote.
A importncia do rastreamento ainda maior quando se leva em considerao que,
feito um teste no roteador mais prximo da vtima para determinar por qual enlace
(interface de rede) o trfego do ataque chega a esse ltimo roteador. Uma vez determinado
o enlace correto, o procedimento repetido no roteador localizado na outra extremidade
do enlace. Depois, salto-a-salto, este processo repetido at que seja determinado o
roteador de onde parte o ataque. Pode ser necessrio testar at d roteadores, onde d o
dimetro da rede. Em alguns casos, necessria a interao entre provedores de servio,
o que torna o processo lento.
Em situaes nas quais possvel manipular o roteamento da rede atravs da incluso de algumas rotas estticas, uma opo fazer com que todo o trfego destinado
vtima seja direcionado a um roteador previamente determinado. Se esse roteador for
configurado de forma a estar no centro da rede, pode-se iniciar um teste de enlaces saltoa-salto partindo do centro da rede. Desta forma, o teste de enlaces feito em no mximo
d/2 roteadores. Se a anlise estiver sendo feita numa rede similar a um ISP, na qual partese do princpio de que os ataques s podem vir de algum conectado a um dos roteadores
de borda, existem duas outras opes para o teste de enlaces. A primeira, caso a rede
disponha de recursos para a construo de topologias lgicas sobre a topologia fsica, a
construo de uma rede lgica de rastreamento em sobreposio (overlay) ligada a todos
os roteadores de borda da rede em questo. Com isso, possvel realizar o teste de enlaces salto-a-salto partindo da vtima at o roteador de borda por onde o trfego de ataque
entra na rede atravs da rede lgica de rastreamento. Neste caso, o nmero mximo de
roteadores testados funo do dimetro da rede lgica. A outra opo, caso deseje-se
apenas determinar por qual roteador o trfego de ataque entra na rede, analisar estatsticas de trfego nos roteadores de borda da rede. Assim, baseado na assinatura do ataque,
possvel determinar qual roteador de borda o responsvel pela entrada do trfego de
ataque na rede.
As duas tcnicas de rastreamento sem estados apresentadas nesta seo so, na
verdade, formas de automatizar e otimizar o teste dos enlaces. A primeira tcnica, chamada CenterTrack [Stone, 2000], tem o escopo limitado rede de um nico ISP e busca
determinar por onde o trfego de ataque entra na rede deste ISP. Neste sistema, o rastreamento otimizado atravs da utilizao de uma rede lgica de rastreamento em sobreposio, na qual so realizados os testes de enlace salto-a-salto. A segunda tcnica
conhecida como inundao controlada [Burch e Cheswick, 2000] e tem como objetivo
automatizar os testes de enlace salto-a-salto numa rede composta por diferentes ISPs e,
portanto, sem uma administrao central.
Para que a tcnica CenterTrack possa ser utilizada, necessria a construo de
uma rede lgica de rastreamento na rede do ISP em questo. Desta forma, esta tcnica
aumenta a complexidade da rede e acarreta um aumento nas tarefas administrativas do ISP.
Cuidados especiais devem ser tomados, por exemplo, para evitar que os tneis utilizados
na construo da topologia lgica da rede de rastreamento interfiram na operao dos
protocolos de roteamento que estejam sendo utilizados no interior da rede. No entanto,
esta tcnica tem como vantagem requerer a presena de ferramentas de diagnstico apenas
nos ns de borda e nos ns que compem o backbone da rede de rastreamento.
O backbone da rede de rastreamento pode ter diversas arquiteturas, cada uma adequada a certas caractersticas da rede fsica do ISP [Stone, 2000], mas deve estar ligada
a todos os roteadores de borda da rede. Desta forma, este backbone liga todas possveis
entradas do trfego de ataque a todas as possveis vtimas. Uma vez descoberto o ataque,
so criadas rotas estticas apontando para a vtima que faro com que aps a convergncia do protocolo de roteamento todo o trfego direcionado vtima passe pela rede de
rastreamento.
Aps a reconstruo das rotas atravs da rede lgica de rastreamento, pode-se realizar testes de enlace salto-a-salto, partindo da vtima, atravs desta rede lgica. Embora
estes testes no identifiquem com exatido todos os roteadores da rota, ele resultar na
descoberta do roteador por onde o trfego entra na rede. Caso deseje-se filtrar o trfego
de ataque, esta filtragem deve ser realizada neste roteador de entrada.
Esta tcnica apresenta algumas limitaes. Uma destas limitaes que merece
destaque que o sistema no ajuda no rastreamento de ataques originados no backbone
do ISP, pois este roteador pode no fazer parte da rede de rastreamento. Outro problema
surge quando a vtima um dos roteadores do backbone da rede do ISP. Neste caso, o
procedimento de direcionar o trfego destinado vtima atravs da rede de rastreamento
pode resultar em loops e colapso de tneis. A utilizao de tneis gera, ainda, mais
dois problemas. O primeiro deles a sobrecarga introduzida pelo uso de tneis. Desta
forma, se o ataque for realizado com vrios pacotes pequenos, o uso de tneis podem
aumentar o tamanho do pacote significativamente. Em ltima instncia, os tneis serviro
como um amplificador do ataque. Alm disso, se os tneis no forem autenticados de
alguma forma, um ataque mais inteligente pode atrapalhar a operao do sistema forjando
pacotes de modo a que estes pacotes sejam injetados diretamente nos tneis. Uma questo
que tambm merece ateno que este sistema redireciona o trfego endereado para a
vtima. Esta caracterstica possibilita ao atacante descobrir atravs de ferramentas como
o traceroute que alguma coisa est errada e que ele est possivelmente sendo rastreado.
Sabendo disso, o atacante pode parar o ataque antes que o processo de identificao esteja
completo. Deve-se destacar, por fim, que esta tcnica pode ser facilmente adaptada para
se tornar uma tcnica baseada em auditoria. Para isto, necessrio que equipamentos
capazes de farejar a rede sejam includos no backbone da rede de rastreamento.
A tcnica da inundao controlada busca automatizar o processo de teste de enlaces em redes compostas por diferentes ISPs. Esta tcnica necessita que algumas ferramentas estejam disponveis em todos ou, pelo menos, na maior parte dos roteadores
da rede considerada. A principal vantagem deste sistema possibilitar o rastreamento
sem a interveno dos ISPs envolvidos. Na realidade, esta tcnica pode at mesmo ser
empregada sem que a administrao do ISP tome conhecimento.
Este sistema se baseia no teste de enlace salto-a-salto na rede inteira. Para isso,
necessrio que o responsvel pelo rastreamento tenha conhecimento da topologia da
rede como um todo. Isto pode ser obtido atravs de traceroutes da vtima para as outras
redes. Este processo, alm de custoso do ponto de vista de tempo e recursos, complicado
caso existam enlaces assimtricos. Embora se possa assumir que a maior parte das rotas
so simtricas, pode ser necessria a utilizao de outros meios para obter uma viso
suficientemente detalhada da rede.
Um ponto interessante da inundao controlada a forma com que o teste de
enlace realizado. Ao invs de analisar o trfego que passa por um determinado en-
R1
R2
R3
...
Rd
O atacante A envia pacotes em direo da vtima V . Estes pacotes seguiro o caminho indicado, passando pelos roteadores R1 , R2 , R3 , . . . , Rd . Cada roteador do caminho
ir acrescentar ao cabealho do pacote o seu endereo IP, com uma certa probabilidade p.
A vtima V deve armazenar um nmero suficiente de pacotes de modo a garantir a existncia de pelo menos um pacote com o endereo de cada roteador do caminho. Deste modo,
i = p(1 p)di ,
(1)
0 = (1 p)d .
(2)
32
distncia
endereo 1
32
bits
endereo 2
ln(d)
,
p(1 p)d1
(3)
pacote, ao invs de acrescentar seu endereo, o roteador deve acrescentar apenas um desses fragmentos, escolhido aleatoriamente, e escrever em um outro espao do cabealho
o identificador de fragmento (ID frag), alm de zerar o campo distncia. O n seguinte,
caso no marque o pacote, aps verificar que o campo distncia est em zero, deve escrever no campo fragmento o resultado da operao OU exclusivo (XOR) entre o n-simo
fragmento de seu endereo com o fragmento j escrito, onde n o nmero indicado no
campo identificador de fragmento (Figura 1.16).
Hash do endereo
Endereo
...
...
...
F1
F2
F3
F k2 F k1 F k
ID frag
distncia
fragmento
Roteador R i
F in
Roteador R i +1
F i+1
n + Fn
log2 k
bits
Pode-se mostrar que a proposta de amostragem de fragmentos sugerida por Savage et al. requer uma grande carga computacional e produz um significativo nmero de
falsos positivos no processo de reconstruo da rota de ataque, na presena de mltiplos
atacantes [Song e Perrig, 2001]. Por exemplo, com somente 25 atacantes, esta abordagem
pode levar dias para computar a rota de ataque, apresentando milhares de falsos positivos.
Assim, Song e Perrig [Song e Perrig, 2001] propem um novo mecanismo de rastreamento de pacotes baseado na amostragem de arestas, que apresenta uma complexidade
e nmero de falsos positivo inferior proposio de Savage et al. A principal diferena
entre as duas propostas est na codificao das arestas. Ao invs de acrescentar um fragmento do endereo IP intercalado com o hash do endereo, acrescentado o valor do
hash do endereo IP. Para isto, definida a utilizao de duas funes hash h e h0 , ambas
de 11 bits. Cinco bits so utilizados para o campo distncia, totalizando 16 bits. Desta
forma, antes de encaminhar um pacote ao prximo n, o roteador Ri deve decidir se ir
marcar o pacote, com uma probabilidade p. Sempre que um pacote marcado, o roteador
insere o valor h(Ei ) no campo aresta, onde Ei o seu endereo, e zera o campo distncia.
Caso o pacote no seja marcado, o roteador Ri deve checar o campo distncia. Se o valor
for igual zero, o roteador deve atualizar o contedo do campo aresta com o resultado
da operao OU exclusivo (XOR) entre o contedo do campo aresta e o valor h0 (Ei ), e
incrementar o campo distncia. Para qualquer outro valor, apenas o campo distncia
incrementado, como mostra a Figura 1.17.
distncia
hash do endereo IP
Roteador R i
h (E i)
Roteador R i +1
h (E i) + h(E i +1)
11
bits
A reconstruo bastante simples. Primeiramente, considera-se que a vtima contm um mapa dos roteadores da Internet, representado por um grafo cuja raiz a prpria
vtima. Assim, aps a coleta de pacotes, a vtima deve comparar o valor h(Fv ) com o
campo aresta de todos os pacotes cujo campo distncia tem o valor zero, onde Fv contm
todos os filhos diretos da vtima. Todos os endereos cujo resultado da comparao
positivo so acrescentados a um conjunto denominado S0 . O conjunto Si contm todos os
endereos IP cujo resultado da comparao positiva, onde i representa a distncia para a
vtima. Aps a identificao dos roteadores de distncia zero, a vtima realiza a operao
de OU exclusivo (XOR) entre o valor h0 (S0 ) e o campo aresta de todos os pacotes cujo
campo distncia igual a um, e comparar o resultado com h(F0 ), onde F0 so todos os
filhos do conjunto S0 . Neste novo esquema, um falso positivo pode ocorrer quando o resultado da funo hash de dois ns irmos, filhos do mesmo roteador, tem o mesmo valor.
A probabilidade deste evento ocorrer 211 . No caso da existncia de muitos vizinhos a
probabilidade da ocorrncia de falso positivo aumenta significativamente. Para resolver
este problema, proposta uma pequena alterao no procedimento de marcao. Ao invs
0 1
(1 p)d p(1 p)d1
1 p p
p 0, 5.
(4)
Para que a vtima receba mais pacotes marcados pelo atacante que por todos os outros
roteadores, basta que:
d
0 i
i=1
d
(1 p) 1 (1 p)d
p 1 21/d .
(5)
Por exemplo, para d = 10 tem-se p 0, 067. Isto mostra que o atacante pode forjar m
caminhos diferentes com a mesma probabilidade que o caminho original, como mostra a
Figura 1.18.
Se o valor de m for grande, ou seja, se o atacante for capaz de forjar muitos
caminhos, a vtima ter problemas para identificar o verdadeiro caminho. No entanto,
o valor de m limitado por (d 1) [Park e Lee, 2001]. Tambm mostrado que um
aumento no valor de p diminui o valor de m. Desta maneira, Park e Lee demonstram que
mecanismos baseados em PPM podem ser eficientes para ataques de apenas um atacante,
mas so vulnerveis a ataques distribudos com mltiplos atacantes. Isto ocorre, pois a
maneira de maximizar o nmero de caminhos forjados m forar a diminuio do valor
R2
R1
...
Rd
U1
...
U2
Caminho real
Um
Caminho forjado
C(MR)
log 2 l
palavra (w i )
25 c log 2 l
bits
ndice. A reconstruo bastante similar a de Savage et al. A diferena est na remontagem da mensagem. O checksum alm de ser o responsvel por garantir se a mensagem foi
corretamente montada, serve tambm para identificar todas as palavras da mesma mensagem. Deste modo, basta que a vtima separe todos os pacotes que possuam o mesmo
checksum, eliminar as repeties e testar todas as combinaes possveis com as palavras
de mesmo ndice e mesmo checksum. Goodrich demonstra que seu mecanismo apresenta
uma complexidade bastante inferior s propostas de Savage et al. e Song e Perrig. Outro
fator importante o fato de conseguir rastrear ataques com at 1000 atacantes. Por ltimo,
o esquema de mensagem flexvel, permitindo acrescentar informaes para autenticao
dos roteadores.
Aps diversos trabalhos na rea de marcao de pacotes, percebeu-se que o grande
problema dos mecanismos baseados na PPM o fato dos atacantes poderem forjar uma
marcao. Assim, acabar com a possibilidade do atacante forjar uma marcao, resolveria
o principal inconveniente deste tipo de abordagem. Por isso, foi proposto um novo mecanismo de marcao de pacotes determinstico que utiliza 17 bits (16 do campo Packet ID e
um do campo reservado flag) do cabealho IP [Belenky e Ansari, 2003b]. O mecanismo
pressupe que a marcao seja feita apenas pelos roteadores de borda. Desta maneira,
todo pacote que entrar por uma interface de borda ser marcado com o endereo IP
da respectiva interface. Como so usados apenas 17 bits, o endereo da interface divido em duas partes. O roteador deve escrever no pacote uma das duas partes com igual
probabilidade. Em seguida deve-se acrescentar zero ou um ao campo flag, de acordo
com a parte do endereo escrita no campo Packet ID. Assim, aps a recepo de alguns
pacotes, a vtima obter as duas partes do endereo da interface de entrada do roteador
mais prximo do atacante. Com apenas 7 pacotes a vtima tem 99% de chance de obter
o endereo completo. Um dos problemas desta abordagem a fragmentao de pacotes,
pois todos os fragmentos de um determinado pacote devem conter o mesmo valor para o
campo Packet ID para serem corretamente remontados. Isto pode no acontecer, dado que
dois valores distintos podem ser escritos no campo Packet ID. Este problema foi resolvido
identificando os fragmentos e escrevendo a mesma parte do endereo da interface de entrada no campo Packet ID [Belenky e Ansari, 2003a]. Entretanto, esta abordagem possui
dois problemas graves que podem impedir que a vtima descubra o endereo da interface
de entrada do roteador de borda. O primeiro problema aparece quando o atacante envia
apenas um pacote com cada endereo IP. O segundo caso seria um ataque distribudo onde
m atacantes enviam pacotes com os mesmos endereos IP. Assim, para cada endereo IP
diferente a vtima receberia m pacotes para cada parte do endereo.
Ainda na tentativa de impedir o atacante de forjar as marcaes, foi desenvolvido um outro mecanismo de rastreamento baseado na marcao de pacotes, denominado
Dynamic Probabilistic Packet Marking (DPPM) [Liu et al., 2003]. Seu objetivo minimizar a capacidade do atacante de forjar caminhos, que, como foi mostrado por Park e
Lee [Park e Lee, 2001], est diretamente relacionada com o valor de p e com o nmero N
de pacotes enviados pelo atacante. Como este ltimo fator determinado pelo atacante, a
nica opo mudar o valor de p. Desta forma, a proposta consiste em atribuir diferentes
probabilidades de marcao de acordo com a distncia que o pacote j percorreu. Assim,
para um caminho com d roteadores, o pacote ser marcado pelo roteador Ri com a probabilidade pi = 1/i. A probabilidade de um pacote chegar marcado pelo roteador Ri na
i = pi
1 p j.
(6)
j=i+1
i = pi
1 pj
j=i+1
1
1
1
1
=
1
1
... 1
i
i+1
i+2
d
1
= .
d
(7)
Isto significa que a probabilidade da vtima receber um pacote marcado pelo roteador
Ri a mesma para todos os roteadores, no importando a distncia para a vtima. Este
resultado bastante interessante, pois a probabilidade do pacote chegar marcado pelo
atacante 0 , ou seja, a probabilidade do atacante forjar uma marcao igual zero.
Intuitivamente, pode-se ver este resultado a partir da seguinte expresso:
d
0 = 1 i = 0
(8)
i=1
Alm disso, o valor mnimo de pacotes necessrios para a reconstruo da rota igual
d, pois N min(i ) 1. Na PPM, min(i ) = 1 , mas no DPPM todos os i so iguais
1/d. Logo,
N
1
1
d
N d.
(9)
0 = 1 i
i=1
= 1
=
d
z+d
z
.
z+d
(12)
Esta no aparenta ser uma boa soluo. Por exemplo, no caso de T T Lmax = 64 e o atacante
ter marcado um TTL = 28 (z = 36), 0 ser igual a 0, 36. De acordo com os prprios
autores, este valor de TTL ainda suficiente para alcanar a grande maioria dos stios da
Internet. O atacante poderia ainda diminuir o valor do TTL, de acordo com a distncia da
vtima, piorando ainda mais a eficincia do mecanismo de rastreamento.
Alm da preocupao com a capacidade do atacante de forjar arestas, existe ainda
um grande interesse na otimizao da codificao das arestas, para tornar o rastreamento
baseando na marcao de pacotes um sistema mais eficiente. Um mecanismo denominado SNITCH [Aljifri et al., 2003] uma extenso a PPM na qual modificada a codificao da identificao das arestas. Neste trabalho proposta a utilizao de uma tcnica
de compresso do cabealho IP, definida na RFC 2507 [M.Degermark et al., 1999] e na
RFC 1144 [Jacobson, 1990]. O objetivo desta tcnica de compresso do cabealho IP
diminuir o tamanho do pacote para aumentar a vazo de enlaces de baixa velocidade.
Esta tcnica pressupe a existncia de campos no cabealho IP que no mudam em uma
seqncia de pacotes do mesmo fluxo. Estes campos so denominados de contexto do
pacote. Assim, apenas o primeiro pacote enviado conter todos os campos do cabealho
que ser associado a um contexto. Os pacotes seguintes, que possuam o mesmo contexto,
tero estes campos removidos do cabealho e armazenaro o identificador do contexto
ao qual esto associados (Context ID CID). O espao economizado com esta tcnica
igual a 144 bits. Na proposta de Aljifri et al. [Aljifri et al., 2003], estes 144 bits so
utilizados para a marcao dos pacotes. Desta maneira, ao decidir marcar um pacote, o
roteador associa o contexto deste pacote a um CID. Em seguida, o roteador compara o
contexto do primeiro pacote com o pacote seguinte. Caso os contextos sejam idnticos,
o roteador comprime este cabealho e acrescenta as informaes relativas ao mecanismo
de rastreamento. A vtima, ao receber este pacote, retira as informaes de rastreamento
antes de descomprimir o cabealho. Aps coletar o nmero suficiente de pacotes, as duplicatas so eliminadas e a rota pode ser construda a partir das arestas e das distncias.
Apesar de conseguir aumentar a quantidade de dados escritos no cabealho, evitando a
fragmentao das informaes de rastreamento, a proposta apresenta o mesmo problema
da alta probabilidade do atacante forjar caminhos.
Uma alternativa para a codificao das informaes de rastreamento apresentada
por Dean et al. [Dean et al., 2002]. A codificao baseada em equaes algbricas. As-
sim, cada roteador indica sua presena na rota de ataque, acrescentando o resultado de
um polinmio no qual a varivel o seu endereo IP. A vtima deve ter conhecimento
deste polinmio. Aps a recepo de um nmero suficiente de pacotes, a reconstruo da
rota de ataque feita a partir da resoluo de um sistema de equaes. No entanto, a proposta tambm baseada na marcao de pacotes e, por conseqncia, possui as mesmas
desvantagens em relao capacidade do atacante forjar marcaes. Alm disso, diferente do sistema proposto por Savage et al., este sistema no apresenta nenhum cdigo
de deteco de erro para reduzir a probabilidade de se construir um sistema de equaes
utilizando equaes provenientes de rotas diferentes. Conseqentemente, ainda mais falsos positivos so esperados para ataques distribudos de pequeno porte. Um outro tipo de
equaes algbricas foi sugerido na tentativa de diminuir a quantidade de bits usados para
a codificao [Bai et al., 2004].
Existe ainda outro mtodo baseado em auditoria, que no se baseia na marcao de
pacotes [Bellovin et al., 2003]. Ao rotear um pacote, cada roteador probabilisticamente
envia para a vtima um pacote ICMP com informaes sobre si mesmo e sobre seus roteadores adjacentes. Para um fluxo suficientemente longo, a vtima usa estes dados recebidos
para reconstruir a rota de ataque. Entretanto, como as informaes de auditoria so enviadas em pacotes separados, a autenticao das mensagens necessria de forma a evitar
mensagens forjadas pelo atacante. Logo, a adoo de uma infra-estrutura de chave pblica
se torna inevitvel. Uma extenso desta idia inclui novos conceitos como utilidade e
valor das mensagens de rastreamento [Mankin et al., 2001], a fim melhorar o sistema.
h1 (x), h2 (x), . . . , hk (x) esto preenchidos com 1. Se pelo menos um bit estiver zerado,
ento com certeza x 6 S. Por outro lado, se todos os bits esto preenchidos, ento assumese que x S. Na verdade, um elemento externo x 6 S pode ser reconhecido como um
autntico elemento do conjunto, criando um falso positivo. Tal anomalia ocorre quando
todos os bits h1 (x), h2 (x), . . . , hk (x) so preenchidos por um subconjunto dos elementos
de S.
0
si
h1 (si )
1
S
: h2 (si )
Q
S
.
Q
..
S
Q
Q
S
Q
S
Q
s hk (si ) XX
Q
XXX S
S
w
XX
z
3
1
0
m bits
0
0
1
0
A probabilidade de se encontrar um falso positivo para um elemento x 6 S calculada de maneira trivial. Dado que as funes hash usadas so uniformes e independentes,
a probabilidade p de um determinado bit permanecer em zero mesmo depois de inseridos
os n elementos
1 kn
ekn/m .
(13)
p = 1
m
Como o mesmo clculo se aplica para todos os bits do vetor, na mdia, uma frao ekn/m
dos bits permanece zerada aps as inseres [Mitzenmacher,
2002]. Desta
forma, a frao
mdia de bits preenchidos com 1 depois de n inseres 1 ekn/m . A probabilidade
de falso positivo f ento a probabilidade de se encontrar um bit em 1 para cada uma das
k posies indicadas, ou seja
k
(14)
f = 1 ekn/m .
A utilizao do Filtro de Bloom no sistema de rastreamento permitiu a criao de
um mecanismo que possui a vantagem de rastrear um nico pacote IP que tenha passado
na rede sem a necessidade de se armazenar todo o trfego roteado [Snoeren et al., 2002].
Para isso, so usados Filtros de Bloom em dispositivos acoplados aos roteadores que
armazenam os pacotes roteados de forma compacta. Periodicamente, os filtros saturados
so armazenados para futuras requisies e trocados por novos filtros vazios. Para mais
tarde determinar se um pacote passou pelo roteador, o seu filtro simplesmente verificado.
Um processo repetitivo pode ser feito por cada roteador para reconstruir o caminho do
pacote at a sua verdadeira origem. Porm, mesmo com o uso de Filtros de Bloom, tal
sistema exige uma alta capacidade de armazenamento.
Um outro mecanismo baseado no armazenamento na infra-estrutura de rede consiste em cada roteador amostrar uma pequena porcentagem do trfego e armazenar os
sumrios dos pacotes amostrados [Li et al., 2004]. O compromisso da amostragem a
dificuldade inserida no processo de rastreamento. Para minimizar o nmero de pacotes
necessrios para rastrear a origem de um ataque com acurcia, necessrio aumentar o
fator de correlao entre roteadores vizinhos. Este fator representa a porcentagem dos pacotes amostrados por um roteador que tambm foram amostrados pelo roteador seguinte.
Alm disso, os autores introduzem um arcabouo que utiliza a teoria da informao para
responder algumas perguntas sobre a escolha de parmetros do sistema e sobre o compromisso entre os recursos necessrios e a acurcia do rastreamento.
O mtodo de amostragem independente no apresenta um bom funcionamento j
que o fator de correlao dos pacotes amostrados por roteadores vizinhos somente p, o
mesmo valor da taxa de amostragem. Para aumentar este fator, um outro mtodo abordado pelos autores. A idia principal deste mtodo que, alm de amostrar o pacote, o
roteador tambm marca o pacote amostrado de modo que o prximo roteador possa coordenar a sua marcao com a do roteador anterior. O campo necessrio para a marcao
de apenas 1 bit e pode se localizar, por exemplo, no campo reserved flag, no utilizado do
cabealho IP.
O processo de rastreamento se inicia com a vtima verificando seus roteadores
vizinhos. Para cada roteador S, a vtima pede a verificao da passagem dos pacotes
do conjunto Lv (conjunto de pacotes de ataque selecionados pela vtima) nos seus Filtros de Bloom correspondentes. Se pelo menos um pacote reconhecido, o roteador S
monta um conjunto de pacotes LS a partir dos pacotes em Lv que foram encontrados em S.
Agora, cada roteador R vizinho de S ser verificado com LS . Sendo R condenado, todo
o conjunto Lv novamente repassado para o roteador para a formao de um conjunto
LR . Este processo repetido recursivamente para cada roteador. Atravs da elaborao
de um arcabouo de teoria da informao, os autores chegam a concluso de que a utilizao de k = 12 (k o nmero de funes hash usadas no Filtro de Bloom) um valor
timo para o desempenho do mtodo de rastreamento. As melhorias propostas por Li et
al. [Li et al., 2004] diminuem drasticamente o espao necessrio para o armazenamento
embora a capacidade de se rastrear um nico pacote seja comprometida.
Baseado ainda na tcnica de utilizao de funes hash para o armazenamento das
informaes de rastreamento nos roteadores da rede [Snoeren et al., 2001], foi proposto
um novo mecanismo que armazena as informaes referentes aos fluxos a fim de reduzir
a quantidade de informaes armazenadas [Lee et al., 2004]. Uma outra melhoria foi proposta para melhorar a acurcia do grafo reconstrudo [Hilgenstieler e Duarte Jr., 2004].
Armazenamento Hbrido
Algumas propostas visam conciliar as vantagens do armazenamento nas estaes
finais com as do armazenamento na infra-estrutura de redes, a fim de minimizar os problemas intrnsecos a cada uma das abordagens. Com este objetivo, proposto o armaze-
namento hbrido, que consiste em armazenar parte das informaes na vtima e parte nos
roteadores da rede.
Dentro deste contexto, foi proposto um novo mecanismo que combina a marcao
de pacotes com o armazenamento de informaes nos roteadores [Choi e Dai, 2004]. O
esquema consiste em acrescentar ao cabealho o enlace pelo qual o pacote entrou. Para
isto, reservada uma parte do cabealho IP de 32 bits para armazenar as informaes.
O primeiro bit definido como o campo save flag que indica se as informaes de rastreamento referentes quele pacote foram armazenadas em algum roteador. Os 31 bits
restantes so utilizados para guardar os enlaces. Este campo sempre iniciado com o primeiro bit em 1 e os outros em zero, pois o ltimo bit em 1 indica o fim do ltimo enlace
acrescentado, como apresentado na Figura 1.21.
SF
enlace
1
...
...
31 bits
Figura 1.21. Codificao do esquema de marcao utilizando armazenamento hbrido.
conectado a vtima. O primeiro passo consultar a tabela de enlaces deste roteador para
identificar a que enlace a primeira palavra se refere. Em seguida, deve-se fazer um deslocamento para esquerda de n bits, onde n representa o tamanho da palavra recm decodificada. Este procedimento ser realizado at que o campo enlace retorne a sua condio
inicial (primeiro bit em 1 e o restante em zero). Neste momento, necessrio checar o
campo save flag. O valor deste campo em 0 significa que o procedimento de reconstruo
chegou ao fim. O valor deste campo em 1 significa que existe informao sobre este pacote armazenada no roteador em questo. Por isso, o n deve recuperar o campo enlace
armazenado e continuar o procedimento de reconstruo.
(2)
(1)
(4)
R2
(3)
R4
R5
(5)
R1
R7
(4)
(2)
R3
R6
Algumas vantagens surgem como resultado da adoo dessa abordagem. Em primeiro lugar, a rota completa de cada pacote pode ser determinada individualmente. Tal
comportamento idealizado por todo sistema de rastreamento de pacotes, uma vez que
possibilita a identificao de qualquer fonte em um ataque distribudo. Alm disso, nenhuma informao armazenada na infra-estrutura de rede. Todos os dados relativos
ao rastreamento esto localizados na prpria vtima, que opta por guard-los ou no de
acordo com a poltica de segurana local. Outra vantagem que o sistema proposto no
s evita o processamento resultante da fragmentao e da adio de dados ao pacote como
tambm introduz muito pouco processamento adicional ao roteamento. Na verdade, somente uma operao OU bit-a-bit adicionada ao processo de roteamento. Alm disso,
possvel realizar o rastreamento aps o trmino do ataque e sem ajuda de operadores de
rede. No caso, todo o procedimento de reconstruo pode ser automatizado e tornar-se
independente de intervenes manuais.
Por outro lado, esta abordagem tambm possui desvantagens presentes em outros
sistemas de rastreamento [Bellovin et al., 2003], [Dean et al., 2002], [Savage et al., 2001],
[Snoeren et al., 2002], [Song e Perrig, 2001]. Primeiramente, um processamento adicional introduzido ao roteamento de pacotes. Embora o sistema proposto introduza menos
processamento que outros sistemas, roteadores com poucos recursos podem ser afetados.
Alm disso, como em qualquer outro sistema de rastreamento, a cooperao dos roteado-
res fundamental para a correta marcao dos pacotes. Se alguns roteadores no marcam
os pacotes, provvel que existam lacunas na rota reconstruda e que a origem do ataque
no seja encontrada. Uma outra desvantagem que o prprio atacante no encontrado
pelo rastreamento; na verdade, somente o roteador mais prximo do atacante revelado.
Aps a identificao deste roteador, maiores esforos so necessrios para identificar o
atacante. Por fim, a adoo de um Filtro de Bloom para representar a rota de ataque introduz uma certa probabilidade de falso positivo. Durante o algoritmo de reconstruo,
um falso positivo implica a incorreta integrao de um roteador rota de ataque. Porm,
se esta probabilidade pequena, a ocorrncia de falsos positivos no tem impacto significativo na reconstruo. Algumas rotas para um mesmo pacote existiriam em paralelo,
mas ainda assim o escopo de possveis atacantes seria restringido. No entanto, como o
atacante tem controle sobre o contedo inicial do pacote, ele pode preencher com 1 todos os bits do cabealho do pacote que so reservados ao filtro. Ao saturar o filtro, o
atacante faz com que a vtima receba um filtro cujos bits esto todos preenchidos com 1.
Conseqentemente, todo roteador integrado rota de ataque durante a reconstruo,
tornando impraticvel a descoberta da rota verdadeira.
Para minimizar a possibilidade do atacante burlar o sistema e torn-lo menos dependente da condio inicial do filtro, uma generalizao do Filtro de Bloom tambm
proposta. O chamado Filtro de Bloom Generalizado (FBG) estaria integrado a cada pacote, de forma a armazenar os roteadores atravessados. A idia bsica do FBG utilizar
tanto funes hash que preenchem bits como funes que zeram bits. Desta forma,
possvel mostrar que a probabilidade de falso positivo limitada e depende pouco da condio inicial do filtro. Por outro lado, falsos negativos que eram inexistentes no Filtro de
Bloom convencional so introduzidos com esta generalizao. Na Subseo 1.5.1, a idia
do FBG formalizada e uma anlise das probabilidades de falso negativo e falso positivo
desenvolvida a fim de mostrar a eficcia dessa nova abordagem.
1.5.1. O Filtro de Bloom Generalizado
Assim como o filtro convencional, o Filtro de Bloom Generalizado uma estrutura
de dados usada para representar de forma compacta um conjunto S = {s1 , s2 , . . . , sn } de n
elementos. Ele constitudo por um vetor de m bits e por k0 + k1 funes hash independentes g1 , g2 , . . . , gk0 , h1 , h2 , . . . , hk1 cujas sadas variam uniformemente no espao discreto
{0, 1, . . . , m 1}. O vetor de bits calculado de maneira semelhante ao do caso convencional. Entretanto, no h mais a restrio de que seus bits so inicialmente zerados. No
FBG, os bits do vetor podem assumir qualquer valor inicial. Para cada elemento si S, os
bits do vetor correspondentes s posies g1 (si ), g2 (si ), . . . , gk0 (si ) so zerados e os bits
correspondentes s posies h1 (si ), h2 (si ), . . . , hk1 (si ) so preenchidos com 1. No caso de
uma coliso entre uma funo gi com uma funo h j em um mesmo elemento, arbitra-se
que o bit zerado i, j. O mesmo bit pode ser zerado ou preenchido diversas vezes sem
restries. A Figura 1.23 ilustra a insero de um elemento em um filtro generalizado.
Posteriormente, testes de pertinncia podem ser realizados visando determinar a afiliao
de um elemento ao conjunto. Para verificar se um elemento x pertence a S, preciso checar se os bits g1 (x), g2 (x), . . . , gk0 (x) esto zerados e se os bits h1 (x), h2 (x), . . . , hk1 (x) esto
preenchidos com 1. Se pelo menos um bit est invertido, ento assume-se que x 6 S. Diferentemente do filtro convencional, agora h uma possibilidade de um elemento x S no
ser reconhecido pelo filtro, criando um falso negativo. Tal anomalia ocorre quando pelo
menos um dos bits g1 (x), g2 (x), . . . , gk0 (x) preenchido ou quando pelo menos um dos
bits h1 (x), h2 (x), . . . , hk1 (x) zerado por algum outro elemento inserido posteriormente.
Por outro lado, se nenhum bit est invertido, ento assume-se que x S. Na verdade, um
elemento externo x 6 S pode ser reconhecido como um autntico elemento do conjunto,
criando um falso positivo. Um falso positivo ocorre quando os bits g1 (x), g2 (x), . . . , gk0 (x)
esto zerados e os bits h1 (x), h2 (x), . . . , hk1 (x) esto preenchidos com 1 em virtude de um
subconjunto dos elementos de S ou da prpria condio inicial do vetor.
> g1 (si )
.
.
: 0
1
.
1
:
g (s )
k0 i H
HH
XXX
0
Z
XX
HH
XX
Z
z h1 (si ) Z
H
j
Z
Z
...
1 0
Z
Z
Z
si
Z
Z
Z
~ hk1 (si )
Z
Z
Z
~
m bits
1
1
Falsos Positivos
A probabilidade de falso positivo de um FBG calculada de maneira similar do
caso convencional. Entretanto, necessrio primeiramente calcular a probabilidade de
um bit ser preenchido ou zerado durante a insero de um elemento. Dado que no caso
de uma coliso as funes gi sempre tm prioridade sobre as funes h j , a probabilidade
q0 de um determinado bit ser zerado durante a insero de um elemento expressa pela
probabilidade de pelo menos uma das k0 funes zerar o bit. Assim, q0 expresso por
"
1
q0 = 1 1
m
k0 #
1e
k0 /m
(15)
Por outro lado, a probabilidade q1 de um determinado bit ser preenchido durante a insero de um elemento a probabilidade de pelo menos uma das k1 funes preencher o bit
e nenhuma das k0 funes o zerar. Dessa forma, q1 definido como
"
1
q1 = 1 1
m
k1 #
1 k0
k1 /m k0 /m
e
.
1e
1
m
(16)
Por fim, a probabilidade de um bit especfico permanecer intocado, isto , no ser nem
preenchido e nem zerado por um elemento, simplesmente
1
(1 q0 q1 ) = 1
m
k0 +k1
(17)
Como o mesmo clculo se aplica para todos os bits do vetor, na mdia, uma frao q0
de bits zerada, uma frao q1 de bits preenchida e uma frao (1 q0 q1 ) de bits
permanece intocada a cada insero de elemento. Seguindo o mesmo raciocnio, tem-se
na mdia b0 = m.q0 bits zerados, b1 = m.q1 bits preenchidos e (mb0 b1 ) bits intocados
a cada insero.
A partir destes valores, possvel determinar a frao de bits zerados e a frao de
bits preenchidos do vetor depois das n inseres. A probabilidade p0 (n) de um bit estar em
0 aps as n inseres calculada atravs das probabilidades de n + 1 eventos mutuamente
exclusivos. O primeiro evento aquele onde o bit est inicialmente em 0 e permanece
intocado pelos n elementos inseridos. Notando que p0 (0) representa a probabilidade do
bit estar inicialmente em 0, a probabilidade de tal evento p0 (0) (1 q0 q1 )n . Os outros
n eventos so aqueles onde o bit zerado pelo (n i)-simo elemento e no mais tocado
pelos i elementos seguintes, para 0 i n 1. A probabilidade de ocorrncia de cada
um destes eventos expressa por q0 (1 q0 q1 )i . Dessa forma, a probabilidade p0 (n)
pode ser expressa por
n1
p0 (n) = p0 (0) (1 q0 q1 )n + q0 (1 q0 q1 )i
i=0
1 (1 q0 q1 )n
= p0 (0) (1 q0 q1 ) + q0
1 (1 q0 q1 )
i
q0 h
= p0 (0) (1 q0 q1 )n +
1 (1 q0 q1 )n .
q0 + q1
(18)
p1 (n) = p1 (0) (1 q0 q1 )n + q1 (1 q0 q1 )i
i=0
1 (1 q0 q1 )n
= p1 (0) (1 q0 q1 ) + q1
1 (1 q0 q1 )
i
q1 h
n
n
1 (1 q0 q1 ) ,
= p1 (0) (1 q0 q1 ) +
q0 + q1
n
(19)
e obviamente p0 (n) + p1 (n) = 1. Dado que o mesmo clculo pode ser aplicado para todos
os bits do vetor, na mdia, uma frao p0 (n) dos bits fica em 0 e uma frao p1 (n) dos
bits fica em 1 depois de n inseres.
A partir das propores de bits no vetor, a probabilidade de falso positivo calculada de maneira trivial. Dado que na mdia b0 bits so zerados e b1 bits so preenchidos a
cada insero de um elemento, a probabilidade de falso positivo f p de um FBG calculada
da seguinte forma
f p = p0 (n)b0 p1 (n)b1 = p0 (n)b0 [1 p0 (n)]b1 = [1 p1 (n)]b0 p1 (n)b1 .
(20)
Falsos Negativos
Falsos positivos ocorrem para elementos externos com a mesma probabilidade
para cada elemento checado. Por outro lado, falsos negativos ocorrem somente para elementos inseridos com uma probabilidade diferente para cada elemento. Na verdade, um
fator que afeta diretamente a probabilidade de falso negativo a ordem de insero. Por
exemplo, os elementos inseridos primeiro tm uma maior probabilidade de serem falsos
negativos do que os elementos inseridos por ltimo. Isso ocorre porque mais inseres
so realizadas depois dos primeiros elementos e, portanto, mais provvel que um dos
seus bits marcados seja invertido.
A probabilidade de falso negativo pode ser calculada se antes for determinada
a probabilidade de um bit do (n i)-simo elemento inserido no ser invertido pelos i
elementos seguintes, para 0 i n 1. Como nos falsos positivos, a probabilidade
p00 (n i) de um bit zerado pelo (n i)-simo elemento permanecer zerado ao fim das i
inseres calculada a partir das probabilidades de i + 1 eventos mutuamente exclusivos.
O primeiro evento aquele em que o bit permanece intocado por todas as i inseres
subseqentes; tal evento ocorre com probabilidade (1 q0 q1 )i . Os outros i eventos
so aqueles onde o bit zerado pelo (n j)-simo elemento e no mais tocado pelos
j elementos seguintes, para 0 j i 1. Dessa maneira, a probabilidade p00 (n i)
expressa por
i1
p00 (n i) = (1 q0 q1 )i + q0 (1 q0 q1 ) j
j=0
"
#
i
1
(1
q
)
0
1
= (1 q0 q1 )i + q0
1 (1 q0 q1 )
i
q0 h
i
i
= (1 q0 q1 ) +
1 (1 q0 q1 ) .
q0 + q1
(21)
p11 (n i) = (1 q0 q1 )i + q1 (1 q0 q1 ) j
j=0
"
#
i
1
(1
q
)
0
1
= (1 q0 q1 )i + q1
1 (1 q0 q1 )
i
q1 h
1 (1 q0 q1 )i .
= (1 q0 q1 )i +
q0 + q1
(22)
A partir das Equaes 21 e 22, a probabilidade de falso negativo de qualquer elemento inserido no filtro pode ser determinada. A probabilidade de falso negativo fn (n i)
do (n i)-simo elemento no ser reconhecido pelo filtro aps as i inseres subseqentes
calculada tomando-se o complemento da probabilidade de nenhum de seus bits serem
(23)
k12
k1
= m 1 1 + 2 k1 .
m 2m
(24)
Aplicao
No sistema de rastreamento proposto, os elementos inseridos no FBG so na verdade os endereos IP dos roteadores. Portanto, o nmero de elementos n representa o
nmero de roteadores atravessados pelo pacote de ataque. Alm disso, o tamanho do vetor de bits m exatamente o nmero de bits alocados no cabealho do pacote para o FBG.
Os parmetros k0 e k1 so o nmero de funes hash que zeram e preenchem bits em
cada roteador, respectivamente. Estas funes devem ser as mesmas em cada roteador de
forma a permitir a reconstruo da rota de ataque posteriormente. Por fim, p0 (0) e p1 (0)
representam a frao inicial de bits zerados e a frao inicial de bits preenchidos, respectivamente. Esses dois parmetros esto sob o controle do atacante, que responsvel pela
criao do pacote de ataque e pela inicializao do contedo do FBG.
A implementao do Filtro de Bloom nos roteadores muda um pouco com a generalizao. Existem bits que so zerados e bits que so preenchidos a cada insero e,
portanto, uma nica operao OU bit-a-bit no suficiente para atualizar o filtro. Dessa
forma, necessria uma operao OU bit-a-bit seguida de uma operao E bit-a-bit para
preencher e zerar os bits indicados, respectivamente. Assim, dois registradores so necessrios para cada interface do roteador. Para configurar esses registradores, o endereo
IP da interface usado como entrada para as funes hash. O primeiro registrador tem
todos os seus bits inicializados com 0 e os bits indicados pelas funes h j so preenchidos com 1. O segundo registrador tem os seus bits inicializados com 1 e os bits indicados
pelas funes gi so colocados em 0. Quando o pacote vai ser reencaminhado, o FBG do
pacote atualizado inicialmente com o resultado de uma operao OU bit-a-bit do prprio
FBG com o primeiro registrador da interface. Em seguida, uma operao E bit-a-bit do
FBG com o segundo registrador realizada para finalizar a atualizao.
A ordem das operaes um resultado da prioridade adotada. Na verdade, se for
decidido que as funes h j tm precedncia sobre as funes gi , a nica modificao a ser
realizada que a operao E deve ser realizada antes da operao OU.
1.5.2. Um Procedimento Aprimorado de Reconstruo de Rota
Se por um lado o uso de um FBG limita a ao do atacante na gerao de falsos
positivos, por outro, ele introduz falsos negativos no procedimento de reconstruo de
rota. Um falso negativo significa no detectar um roteador por onde o pacote realmente
passou. Ao deixar de detectar um roteador atravessado, tambm no so detectados todos
os roteadores cuja rota depende deste roteador. Por exemplo, suponha que na reconstruo
ilustrada na Figura 1.22 h um falso negativo no roteador R4 . Ou seja, o roteador R4 no
reconhecido pelo filtro generalizado durante a verificao realizada por R2 (3). Neste
caso, os roteadores R3 e R5 no so checados, uma vez que R4 no foi integrado rota de
ataque. Em conseqncia, o roteador R5 tambm no integrado rota de ataque. Desta
forma, somente um falso negativo pode ser suficiente para interromper o procedimento de
reconstruo e evitar a determinao da verdadeira rota de ataque.
Para resolver este problema, proposto um procedimento aprimorado de reconstruo que elimina os falsos negativos ao custo de uma maior probabilidade de falso positivo. Este novo procedimento de reconstruo baseado no fato que, durante a travessia
do pacote pela rede, roteadores subseqentes podem inverter os bits marcados por roteadores anteriores e causar falsos negativos durante a reconstruo. No exemplo anterior,
durante o percurso do pacote de ataque por (R5 , R4 , R2 , R1 ), ou R1 ou R2 inverteu algum bit
marcado previamente por R4 . Em conseqncia, o filtro do pacote recebido no reconhece
R4 durante o procedimento de reconstruo de rota. De forma a evitar este problema, cada
roteador envia junto com o FBG algumas informaes adicionais para os seus vizinhos
durante a reconstruo. Esta informao contm os bits marcados pelo prprio roteador e
pelos roteadores anteriores no procedimento de reconstruo. A Figura 1.24 ilustra brevemente este conceito. Na figura, o roteador R1 primeiramente reconhece o roteador R2
no FBG recebido pela vtima e, portanto, R1 lhe repassa o FBG de forma a continuar a reconstruo. Entretanto, R1 tambm envia outros dois vetores de bits, m0 e m1 , indicando
quais bits foram zerados e preenchidos, respectivamente, por R1 durante a travessia do
pacote. Por sua vez, o roteador R2 , ao reconhecerem algum roteador vizinho, tambm lhe
repassa o prprio FBG e os dois vetores de bits adicionais indicando as marcaes feitas
por ele e por R1 . Desta forma, um roteador Ri sempre repassa para os prximos roteadores
o FBG junto com dois vetores de bits, m0 e m1 , indicando os bits zerados e preenchidos
por Ri e pelos roteadores anteriores no procedimento de reconstruo.
R3
R2
FBG 0 0 1 1 . . . 0 1
m0 0 1 0 0 . . . 0 0
m1 0 0 0 0 . . . 0 1
R1
V
Figura 1.24. O procedimento aprimorado de reconstruo de rota.
O processo de verificao dos vizinhos se altera um pouco em virtude da informao adicional recebida por cada roteador. Primeiramente, antes de checar a presena
de cada vizinho no FBG, o roteador atualiza os vetores m0 e m1 usando o endereo IP
da interface pela qual a requisio de reconstruo chegou. Aps a atualizao, os testes
dos vizinhos so iniciados. Quando um vizinho no reconhecido pelo FBG, o roteador
no descarta aquele vizinho diretamente. Ao invs disso, o roteador verifica se algum bit
marcado por este vizinho foi invertido por algum roteador seguinte durante a travessia do
pacote. Para isso, ele utiliza os vetores m0 e m1 recebidos. Desta forma, caso os bits do
vizinho que esto invertidos no FBG estiverem marcados como reescritos, ento o vizinho reconhecido como um elemento do filtro. Caso contrrio, aquele vizinho ento
descartado. No exemplo dado anteriormente, ao no reconhecer o roteador R4 no FBG,
o roteador R2 verifica se os bits invertidos de R4 esto marcados ou no vetor m0 ou no
vetor m1 . Como certamente eles esto, o roteador R4 integrado rota de ataque e o
procedimento de reconstruo continua.
Uma importante vantagem do procedimento aprimorado de reconstruo que
falsos negativos no podem mais ocorrer. Dado que os bits reescritos de cada roteador
agora podem ser checados a cada salto, os roteadores realmente atravessados so sempre
integrados rota reconstruda. Portanto, a rota de ataque real est sempre no grafo de
ataque reconstrudo. Por outro lado, a probabilidade de falso positivo aumenta medida
que um roteador testado mais longe da vtima e mais perto do atacante. Isso ocorre
porque a frao dos bits marcados em m0 e m1 aumenta para cada roteador integrado
rota de ataque. Assim, roteadores que no eram antes reconhecidos porque algum dos seus
bits estava invertido, agora podem ser reconhecidos com maior probabilidade. Entretanto,
resultados experimentais comprovam que isto no um problema grave e que o atacante
pode ser facilmente identificado [Laufer et al., 2005a], [Laufer, 2005].
A probabilidade de falso positivo do procedimento aprimorado de reconstruo de
rota pode ser calculada de uma maneira simples. Primeiramente, calculada a probabilidade de um bit especfico de m0 estar preenchido em um determinado roteador durante
a reconstruo. importante ressaltar que um bit preenchido em um roteador no significa necessariamente que o bit foi preenchido por este roteador. No caso, o bit pode ter
sido preenchido pelo prprio roteador ou por algum roteador anterior no procedimento
de reconstruo. Este evento ocorre com probabilidade q0 , uma vez que preencher um
bit de m0 equivalente a zerar um bit no FBG. Portanto, a probabilidade s0 (i) de um bit
(25)
(26)
Como o mesmo clculo pode ser realizado para cada bit dos dois vetores, na mdia, uma
frao s0 (i) de bits est preenchida em m0 e uma frao s1 (i) de bits est preenchida em
m1 durante o procedimento de reconstruo em um roteador a i saltos da vtima.
Desta maneira, um bit interpretado como zero nos testes de pertinncia com os
vizinhos se um bit estiver zerado no FBG ou se ele estiver preenchido tanto no FBG e no
vetor m1 . Portanto, a frao t0 (i) de bits interpretados como zero nos testes de pertinncia
realizados por um determinado roteador a i saltos da vtima
t0 (i) = p0 (n) + p1 (n)s1 (i).
(27)
(28)
A partir das Equaes (27) e (28), a probabilidade de um falso positivo f p (i) para
um determinado roteador a i saltos da vtima no procedimento aprimorado de reconstruo
de rota pode ser calculada e expressa por
f p (i) = t0 (i)b0 t1 (i)b1 ,
(29)
Referncias
[Aljifri et al., 2003] Aljifri, H., Smets, M. e Pons, A. (2003). IP Traceback using Header
Compression. Computers & Security, 22(2):136151.
[Bai et al., 2004] Bai, C., Feng, G. e Wang, G. (2004). Algebraic Geometric Code Based
IP Traceback. Em IEEE International Conference on Performance, Computing, and
Communications, pginas 4956, Phoenix, AZ, EUA.
[Belenky e Ansari, 2003a] Belenky, A. e Ansari, N. (2003a). Accommodating Fragmentation in Deterministic Packet Marking for IP Traceback. Em IEEE GLOBECOM 2003
Conference, pginas 13741378, San Francisco, CA, EUA.
[Belenky e Ansari, 2003b] Belenky, A. e Ansari, N. (2003b). IP Traceback With Deterministic Packet Marking. IEEE Communications Letters, 7(4):162164.
[Bellovin et al., 2003] Bellovin, S. M., Leech, M. D. e Taylor, T. (2003). ICMP Traceback Messages. Internet Draft: draft-ietf-itrace-04.txt.
[Bloom, 1970] Bloom, B. H. (1970). Space/Time Trade-offs in Hash Coding with Allowable Errors. Communications of the ACM, 7(13):442426.
[Broder e Mitzenmacher, 2003] Broder, A. e Mitzenmacher, M. (2003). Network Applications of Bloom Filters: A Survey. Internet Mathematics, 1(4):485509.
[Burch e Cheswick, 2000] Burch, H. e Cheswick, B. (2000). Tracing Anonymous Packets to their Approximate Source. Em USENIX LISA00, pginas 319327, Nova Orleans, LA, EUA.
[Bykkokten, 2005] Bykkokten, O. (2005). Orkut.com. http://www.orkut.com/.
[CERT, 1996] CERT (1996). CERT Advisory CA-1996-26 Denial-of-Service Attack via
ping. http://www.cert.org/advisories/CA-1996-26.html.
[CERT, 1997] CERT (1997). CERT Advisory CA-1997-28 IP Denial-of-Service Attacks.
http://www.cert.org/advisories/CA-1997-28.html.
[CERT, 1998] CERT (1998). CERT Advisory CA-1998-01 Smurf IP Denial-of-Service
Attacks. http://www.cert.org/advisories/CA-1998-01.html.
[Choi e Dai, 2004] Choi, K. H. e Dai, H. K. (2004). A Marking Scheme Using Huffman
Codes for IP Traceback. Em 7th International Symposium on Parallel Architectures,
Algorithms and Networks - ISPAN04, pginas 421428, Hong Kong, China.
[Cisco, 2003] Cisco (2003). Cisco Security Advisory: Cisco IOS Interface Blocked by
IPv4 Packets. Cisco Systems, Inc.
http://www.cisco.com/warp/public/707/cisco-sa-20030717-blocked.shtml.
[CNN.com, 2000] CNN.com (2000). Denial of service hackers take on new targets.
http://www.cnn.com/2000/TECH/computing/02/09/denial.of.service.03.
[Dean et al., 2002] Dean, D., Franklin, M. e Stubblefield, A. (2002). An Algebraic
Approach to IP Traceback. ACM Transactions on Information and System Security,
5(2):119137.
[Dittrich, 1999a] Dittrich, D. (1999a). The DoS Projects trinoo distributed denial of
service attack tool. http://staff.washington.edu/dittrich/misc/trinoo.analysis.txt.
[Dittrich, 1999b] Dittrich, D. (1999b). The stacheldraht distributed denial of service
attack tool. http://staff.washington.edu/dittrich/misc/stacheldraht.analysis.txt.
[Dittrich, 1999c] Dittrich, D. (1999c). The Tribe Flood Network distributed denial of
service attack tool. http://staff.washington.edu/dittrich/misc/tfn.analysis.txt.
[Mirkovic et al., 2004] Mirkovic, J., Dietrich, S., Dittrich, D. e Reiher, P. (2004). Internet
Denial of Service: Attack and Defense Mechanisms. Prentice Hall PTR, 1a edio.
[Mirkovic e Reiher, 2004] Mirkovic, J. e Reiher, P. (2004). A Taxonomy of DDoS Attack and DDoS Defense Mechanisms. ACM SIGCOMM Computer Communications
Review, 34(2):3953.
[Mitzenmacher, 2002] Mitzenmacher, M. (2002).
Compressed Bloom Filters.
IEEE/ACM Transactions on Networking, 10(5):604612.
[Moore et al., 2001] Moore, D., Voelker, G. e Savage, S. (2001). Inferring Internet Denial of Service Activity. Em Proceedings of the 2001 USENIX Security Symposium,
Washington, DC, EUA.
[Park e Lee, 2001] Park, K. e Lee, H. (2001). On the Effectiveness of Probabilistic Packet
Marking for IP Traceback under Denial of Service Attack. Em Proceedings of the IEEE
INFOCOM 2001 Conference, Anchorage, AK, EUA.
[Perkins, 2002] Perkins, C. E. (2002). IP Mobility Support for IPv4. RFC 3220.
[Postel, 1981] Postel, J. (1981). Internet Protocol. RFC 791.
[Postel, 1983] Postel, J. (1983). Character Generator Protocol. RFC 864.
[Reuters, 2004] Reuters (2004). Scotland Yard and the case of the rent-a-zombies. ZDNet.com. http://news.zdnet.com/2100-1009_22-5260154.html.
[Sahami et al., 1998] Sahami, M., Dumais, S., Heckerman, D. e Horvitz, E. (1998). A
bayesian approach to filtering junk E-mail. Em Learning for Text Categorization:
Papers from the 1998 Workshop, Madison, WI, EUA. AAAI Technical Report WS-9805.
[Savage et al., 2001] Savage, S., Wetherall, D., Karlin, A. e Anderson, T. (2001).
Network Support for IP Traceback. IEEE/ACM Transactions on Networking, 9(3):226
237.
[Schuba et al., 1997] Schuba, C. L., Krsul, I. V., Kuhn, M. G., Spafford, E. H., Sundaram, A. e Zamboni, D. (1997). Analysis of a Denial of Service Attack on TCP. Em
Proceedings of the 1997 IEEE Symposium on Security and Privacy, pginas 208223,
Oakland, CA, EUA.
[Shachtman, 2003] Shachtman, N. (2003). Porn Purveyors Getting Squeezed. Wired
News. http://wired-vig.wired.com/news/print/0,1294,59574,00.html.
[Snoeren et al., 2001] Snoeren, A. C., Partridge, C., Sanchez, L. A., Jones, C. E., Tchakountio, F., Kent, S. T. e Strayer, W. T. (2001). Hash-Based IP Traceback. Em Proceedings of the ACM SIGCOMM01 Conference, pginas 314, San Diego, CA, EUA.
[Snoeren et al., 2002] Snoeren, A. C., Partridge, C., Sanchez, L. A., Jones, C. E., Tchakountio, F., Schwartz, B., Kent, S. T. e Strayer, W. T. (2002). Single-Packet IP Traceback. IEEE/ACM Transactions on Networking, 10(6):721734.