Você está na página 1de 68

UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CINCIAS EXATAS E TECNOLGICAS CURSO DE INFORMTICA

Metodologia para avaliao de sistemas de deteco de intruso

Leonardo Lemes Fagundes

Prof. Luciano Paschoal Gaspary Orientador

Monografia submetida como requisito parcial para a obteno do ttulo de Bacharel em Informtica.

So Leopoldo, novembro de 2002

Resumo
A disseminao dos sistemas de deteco de intruso, Intrusion Detection Systems (IDSs), resultaram no aumentado da necessidade de metodologias que auxiliem no processo de escolha dessas ferramentas. Para tal, diversas abordagens tm sido desenvolvidas, mas (a) requerem a realizao de procedimentos complexos que consomem muito tempo para serem realizados e (b) no possuem nenhuma forma de sistematizao. Este artigo prope uma metodologia alternativa para avaliar IDSs em relao aos seguintes aspectos: capacidade de deteco, taxas de falsos positivos geradas e escalabilidade dos sistemas avaliados. Essa metodologia foi desenvolvida tendo em mente o uso em qualquer organizao e prope uma seqncia de procedimentos sistemticos que podem ser executados em um curto perodo de tempo. Ao contrrio de outras metodologias, o conhecimento sobre a implementao dos IDSs no necessrio.

Abstract
The dissemination of Intrusion Detection Systems (IDSs) has resulted in increase of the need for methodologies that help in the process of choosing such systems. To do that several approaches have been developed, but (a) they require the accomplishment of complex procedures that take too much time to be executed and (b) do not provide any systematic way of executing them. This paper proposes an alternative methodology to evaluate IDSs regarding the following aspects: detection capability, false positive rate and scalability. This methodology was developed having in mind its usage in any organization and proposes a sequence of systematic procedures that can be executed in a short time period. Besides, it does not require the knowledge on the implementation of the IDSs evaluated (as opposed to most available approaches).

Lista de abreviaturas
CPU DNS DoS FTP GPL HTTP ICMP IDS IDSs IP IRC Mbps MIT MTU RFC TCP UDP Central Process Unit Domain Name server Deny of Service File Transfer Protocol General Public License Hyper Text Transfer Protocol Internet Control Message Protocol Intrusion Detection System Intrusion Detection Systems Internet Protocol Internet Relay Chat Mega bits por segundo Massachusetts Institute of Technology Maximum Transfer Unit Request For Comments Transmission Control Protocol User Datagrama Protocol

Sumrio
1 Introduo .................................................................................................................. 12 2 Metodologias para avaliao de IDSs ...................................................................... 14 2.1 2.1.1 2.1.2 2.2 2.2.1 2.2.2 2.2.3 2.3 2.3.1 2.3.2 2.4 2.5 Puketza et al. 1997.......................................................................................... 14 Ataques concorrentes.............................................................................. 14 Avaliao ................................................................................................ 15 Lippmann et al. 2000 ...................................................................................... 16 Mtodo para classificao dos ataques................................................... 16 Tipos de trfego ...................................................................................... 18 Ambiente de teste ................................................................................... 19 Alessandri, 2000 ............................................................................................. 20 Metodologia............................................................................................ 20 Avaliao do IDS.................................................................................... 21 Barber, 2001 ................................................................................................... 21 Sntese das propostas de metodologias existentes.......................................... 22

3 A metodologia de avaliao proposta ...................................................................... 26 3.1 3.1.1 3.1.2 3.2 3.3 3.4 3.4.1 3.4.2 3.5 3.6 3.6.1 3.6.2 3.6.3 Seleo dos Ataques ....................................................................................... 26 Ataques propostos................................................................................... 26 Descrio tcnica do ataque ................................................................... 33 Seleo de ferramentas ................................................................................... 37 Ferramentas de ataque .................................................................................... 38 Gerao do trfego do cenrio de avaliao................................................... 39 Coleta do trfego de ataque .................................................................... 39 Gerao do trfego de fundo .................................................................. 41 Montagem do ambiente de avaliao ............................................................. 42 Analises dos IDSs........................................................................................... 43 Capacidade de deteco.......................................................................... 43 Escalabilidade......................................................................................... 44 Taxa de falsos positivos.......................................................................... 47

4 Estudo de caso............................................................................................................ 49 5

4.1 4.2 4.2.1 4.2.2 4.3 4.3.1 4.3.2 4.3.3

Capacidade de deteco.................................................................................. 49 Escalabilidade................................................................................................. 50 Anlise de escalabilidade do Snort ......................................................... 50 Comparao dos resultados da anlise de escalabilidade....................... 56 Taxas de falsos positivos ................................................................................ 60 Anlise das taxas de falsos positivos gerados do Snort .......................... 60 Anlise das taxas de falsos positivos gerados do Firestorm .................. 61 Comparao dos resultados da anlise de taxas de falsos positivos....... 62

5 Consideraes finais .................................................................................................. 64 5.1 5.2 5.3 5.4 5.5 5.6 Seleo de ataques.......................................................................................... 64 Capacidade de deteco.................................................................................. 64 Anlise de escalabilidade................................................................................ 65 Anlise das taxas de falsos positivos.............................................................. 65 Possibilidade de expanso da metodologia .................................................... 65 Trabalhos futuros............................................................................................ 65

Lista de figuras
Figura 1 - Ataque concorrente [Puketza et al. 1997]..................................................... 15 Figura 2 - Nveis de privilgios [Kendall, 1999]........................................................... 17 Figura 3 - Ambiente de teste usado na avaliao descrita em [Lippmann et al. 2000]. 19 Figura 4 - Avaliao do IDS [Alessandri, 2000]........................................................... 21 Figura 5 - Exemplo de evaso da letra A [Ptacek e Newsham, 1998]....................... 27 Figura 6 - Exemplo de insero da letra X [Ptacek e Newsham, 1998] .................... 27 Figura 7 - Evoluo das ferramentas de ataque............................................................. 37 Figura 8 - Ambiente de rede para gerao do trfego dos cenrios de teste ................. 40 Figura 9 - Seqncia de atividades a serem realizadas para coletar o trfego de ataque ................................................................................................................................ 41 Figura 10 - Ambiente de rede para o cenrio de avaliao ........................................... 42 Figura 11 - Seqncia de atividades a serem realizadas para analisar capacidade de deteco dos IDSs................................................................................................... 43 Figura 12 - Seqncia de reproduo dos trfegos utilizados na anlise de escalabilidade.......................................................................................................... 44 Figura 13 - Exemplo dos resultados da anlise de escalabilidade em relao aos ataques de negao de servios ............................................................................................. 1 Figura 14 - Exemplo de comparao dos resultados da anlise de escalabilidade em relao aos ataques de negao de servios............................................................ 46 Figura 15 - Exemplo de comparao entre as taxas de falsos positivos geradas pelos IDSs avaliados ........................................................................................................ 48 Figura 16 - Anlise de escalabilidade do Snort em relao aos ataques de insero .... 51 Figura 17 - Anlise de escalabilidade do Snort em relao aos ataques de evaso....... 52 Figura 18 - Anlise de escalabilidade do Snort em relao aos ataques de varredura de portas ...................................................................................................................... 52 Figura 19 - Anlise de escalabilidade do Snort em relao aos ataques de negao de servio..................................................................................................................... 53 Figura 20 - Anlise de escalabilidade do Firestorm em relao aos ataques de insero ................................................................................................................................ 54 Figura 21 - Anlise de escalabilidade do Firestorm em relao aos ataques de evaso 55 Figura 22 - Anlise de escalabilidade do Firestormt em relao aos ataques de varredura de portas ................................................................................................. 55 Figura 23 - Anlise de escalabilidade do Firestormt em relao aos ataques de negao de servio................................................................................................................ 56

Figura 24 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de evaso ............................................................................................. 57 Figura 25 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de insero........................................................................................... 58 Figura 26 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de varredura de portas ......................................................................... 59 Figura 27 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de negao de servio.......................................................................... 59 Figura 28 - Comparao entre os resultados obtidos na anlise das taxas de falsos positivos.................................................................................................................. 63

Lista de tabelas
Tabela 1 - Avaliao do NSM: valores retornados [Puketza et al. 1997] ..................... 16 Tabela 2 - Tipos de aes possveis [Korba, 2000] ....................................................... 18 Tabela 3 - Caractersticas das principais metodologias para avaliao de IDSs ........... 24 Tabela 4 - Descrio tcnica do cenrio inicial de ataques proposto ............................ 34 Tabela 5 - Seleo do cenrio de avaliao................................................................... 37 Tabela 6 - Ferramentas para reproduzir os ataques selecionados.................................. 38 Tabela 7 - Exemplo de resultados da anlise de capacidade de deteco ..................... 44 Tabela 8 - Exemplo de resultados da anlise de escalabilidade .................................... 45 Tabela 9 - Exemplo dos resultados da anlise de escalabilidade em relao aos ataques de negao de servio ............................................................................................... 1 Tabela 10 - Exemplo dos resultados da anlise das taxas de falsos positivos em relao aos ataques de negao de servio.......................................................................... 47 Tabela 11 - Exemplo dos resultados da anlise das taxas de falsos positivos obtidos por dois IDSs................................................................................................................. 48 Tabela 12 - Resultados obtidos na anlise da capacidade de deteco.......................... 50 Tabela 13 - Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de insero ................................................................................................. 51 Tabela 14 - Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de evaso.................................................................................................... 51 Tabela 15 - Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de varredura de portas................................................................................ 52 Tabela 16 - Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de negao de servios .............................................................................. 53 Tabela 17 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de insero........................................................................................... 53 Tabela 18 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de insero........................................................................................... 54 Tabela 19 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de varredura de portas ......................................................................... 55 Tabela 20 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de negao de servios ........................................................................ 56 Tabela 21 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de evaso ............................................................................................. 56 Tabela 22 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de insero........................................................................................... 57 9

Tabela 23 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de varredura de portas ......................................................................... 58 Tabela 24 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de negao de servio.......................................................................... 59 Tabela 25 - Snort: percentual de falsos positivos em relao aos ataques evaso ........ 60 Tabela 26 - Snort: percentual de falsos positivos em relao aos ataques insero...... 60 Tabela 27 - Snort: percentual de falsos positivos em relao aos ataques de varredura de portas ...................................................................................................................... 60 Tabela 28 - Snort: percentual de falsos positivos em relao aos ataques negao de servio..................................................................................................................... 61 Tabela 29 - Firestorm: percentual de falsos positivos em relao aos ataques evaso . 61 Tabela 30 - Firestorm: percentual de falsos positivos em relao aos ataques insero61 Tabela 31 - Firestorm: percentual de falsos positivos em relao aos ataques de varredura de portas ................................................................................................. 62 Tabela 32 - Firestorm: percentual de falsos positivos em relao aos ataques de negao de servio.................................................................................................. 62 Tabela 33 - Comparao entre os resultados obtidos na anlise das taxas de falsos positivos.................................................................................................................. 62

10

Agradecimentos
Ter a quem agradecer uma graa divina, pois isto significa que ao longo dessa caminhada no estive sozinho e que comigo estiveram todos aqueles que de alguma forma desejaram esta vitria. Deus se faz presente em todos os momentos da minha vida, todas as grandes conquista que eu obtive foram graas a ele e, portanto, agradeo a Deus hoje e sempre pelas vitrias a mim concedidas. Ao falar em Deus, em formao religiosa, lembro em especial dos meus avs a quem devo toda a minha iniciao religiosa. A dona Sunilda e o seu Pedro sempre pediram a Deus para que os obstculos a minha frente, no fossem maiores do que a minha disposio ou fora. Aos demais integrantes da minha famlia (tio Marcos, tia Rose, tia Solanes, a prima Roberta, a Paolinha), pessoas que sempre acreditaram que eu iria conseguir e que com certeza entenderam a minha ausncia ao longo dos ltimos meses e durante vrios outros perodos dessa jornada. Os meus colegas do Instituto de Informtica eu agradeo imensamente. No entanto, duas pessoas em especial eu agradecerei para sempre, a Madelaine e o Daniel Ferreira, pois eles acompanharam no dia a dia todas as minhas angustias. O Daniel inclusive teve seus ouvidos sacrificados com as minhas canes desesperadas. Os colegas e amigos com os quais eu formei a maioria dos grupos de trabalho, esses tambm merecem a minha gratido, so eles: Leandro Franco, Luciano Grangeiro (O paquito) e Vincius Costa de Souza (O gordo careca). Todos grandes amigos que eu conquistei durante esse perodo e com os quais eu aprendi muito. Outra pessoa que contribuiu muito para esta conquista foi meu orientador, Luciano Paschoal, um professor de fato e extremamente dedicado. A minha querida irm, Tatiane Lemes, que alm de torcer muito por mim soube entender que o computador no s um equipamento para trocar e-mails com o namorado que esta longe, mas tambm um recurso fundamental para desenvolver este trabalho. Agradeo de forma especial a minha querida me, Tania Lemes, um exemplo de pessoa honesta, trabalhadora e com muita disposio para lutar e conquistar os seus objetivos, sejam quais forem as adversidades. Ela esteve comigo em todos os momentos, inclusive quando no estvamos prximos fisicamente. No posso deixar de agradecer a uma pessoa que amo muito e que junto comigo compartilhou todas as emoes provocadas por um trabalho de concluso, a minha noiva Karine Neves. A K soube estar comigo e entender os meus momentos de ausncia. Finalmente, gostaria de dizer o meu muito obrigado e desejar que Deus abenoe a todos os colegas, amigos e familiares que estiveram torcendo por mim ao longo de toda a graduao.

11

1 Introduo
Com o uso em grande escala da Internet verificado um conseqente aumento nos tipos e na quantidade de ataques, de maneira que todos os sistemas esto sujeitos a inmeras ameaas, sejam elas internas, externas, acidentais ou maliciosas [Campello, 2001]. Atravs da explorao dos diferentes tipos de vulnerabilidades como falhas de configurao, falhas de implementao e uso indevido de recursos disponveis, surge um universo de ataques possveis. Exemplos desse universo de ataques incluem desde varreduras de portas, negao de servios, seqestro de conexes at ataques mais sofisticados, tais como negao de servio distribudo, insero e evaso [Ptacek e Newsham, 1998], [Durst et al. 1999], [Mutaf, 1999]. Com o objetivo de minimizar as chances de um intruso obter sucesso em suas atividades, diversos mecanismos de proteo so utilizados. Entre esses mecanismos surgem a criptografia, a certificao digital, a infra-estrutura de chaves pblicas, os firewalls, os protocolos de autenticao e, ainda, os sistemas de deteco de intruso. Sistemas de deteco de intruso, Intrusion Detection Systems (IDSs), representam uma importante tcnica de monitoramento, cuja principal funo detectar aes maliciosas, tais como tentativas de ataques e obteno de informaes [Amoroso, 1999], [Proctor, 2001]. Os IDSs so classificados, tradicionalmente, segundo o escopo de monitoramento utilizado: rede ou host. Os sistemas de deteco de intruso baseados em rede capturam e analisam pacotes de rede, realizando a busca por ataques direcionados a determinados servios e estaes existentes nesse ambiente. Atravs desse tipo de IDS as informaes que trafegam em um backbone e nos diversos segmentos de rede de uma organizao podem ser monitoradas sem interferir no desempenho da rede ou das estaes conectadas mesma. J os IDSs baseados em host monitoram as atividades do sistema atravs de dados coletados nas prprias estaes, possibilitando detectar atividades no autorizadas que estejam sendo realizadas por usurios da estao. Atualmente, aps aproximadamente mais de uma dcada de pesquisas, existem disponveis no mercado diversos sistemas de deteco de intruso. Entre esses IDSs destacam-se o Snort [Roesch, 1999], o Bro [Paxson, 1999], o NFR (Network Flight Recorder) [Nfr, 2001], o Dragon [Enterasys, 2002] e o RealSecure [Iss, 1999], todos baseados em rede, embora alguns desses sistemas possuam tambm mdulos para monitoramento de estaes. Segundo [Puketza et al. 1997], [Lippmann et al. 1999] e [Barber, 2001], com a popularizao dos IDSs surge a necessidade por ferramentas e metodologias para avaliao e teste dos mesmos, pois ao analisar o comportamento de um conjunto de IDSs possvel determinar, com maior exatido, qual ferramenta melhor se adapta aos diferentes ambientes de rede existentes. Isso se faz necessrio porque o volume e as caractersticas do trfego de uma rede variam em funo das diferentes instituies, sendo provvel que uma determinada ferramenta de deteco altere a sua forma de atuao em funo de tais caractersticas. Diversas abordagens para avaliao de sistemas de deteco de intruso tm surgido. As mais significativas so as propostas em: [Puketza et al. 1997], [Lippmann et al. 1998], [Lippmann et al. 1999], [Durst et al. 1999], [Alessandri, 2000] e [Barber, 2001]. Entretanto essas metodologias possuem diversas limitaes, entre elas: no 12

possuem uma forma sistematizada para a execuo dos procedimentos previstos, so constitudas de uma srie de atividades exaustivas que so realizadas durante semanas, exigem que os usurios da metodologia possuam conhecimentos especficos tais como: a implementao dos IDSs (o que no possvel no caso de IDSs proprietrios) ou, ainda, o desenvolvimento de scripts em determinadas linguagens. Alm disso, essas metodologias so pouco documentas e em alguns casos os resultados obtidos, atravs de determinados testes, so questionveis devido forma com que tais experimentos foram conduzidos. Esta monografia apresenta uma abordagem alternativa para avaliao de IDSs que constitui-se em uma metodologia factvel fora do ambiente acadmico, que possui um conjunto de procedimentos sistematizados, realizveis em um curto espao de tempo e que no exige o conhecimento prvio das ferramentas de deteco a serem avaliadas. A metodologia proposta, ao contrrio de outras abordagens, avalia as potencialidades dos IDSs e no a implementao ou a base de assinaturas dos mesmos. Os cenrios de testes so compostos por uma quantidade pequena, mas significativa de ataques, que so facilmente reproduzveis num ambiente de rede local. Os testes previstos nessa metodologia avaliam as seguintes caractersticas: capacidade de deteco, taxas de falsos positivos e escalabilidade dos sistemas avaliados. O trabalho est organizado da seguinte forma: o captulo 2 apresenta uma sntese das principais publicaes relacionadas ao tema em questo. O captulo 3 descreve a metodologia proposta. Os resultados obtidos na fase de testes so apresentados no captulo 4. O captulo 5 finaliza esse trabalho com algumas consideraes finais e apresenta as perspectivas para trabalhos futuros.

13

2 Metodologias para avaliao de IDSs


Esse captulo apresenta uma sntese das principais abordagens desenvolvidas at o momento para avaliao de sistemas de deteco de intruso. Ao trmino dessa sntese traado um paralelo entre as principais caractersticas que compem essas abordagens.

2.1 Puketza et al. 1997


Os primeiros trabalhos realizados com o objetivo de desenvolver metodologias para avaliao de sistemas de deteco de intruso surgiram no final dos anos 90. Em 1997 foi publicada a primeira proposta de metodologia para avaliao de IDSs, [Puketza et al. 1997], desenvolvida na Universidade da California. Essa proposta consiste, primeiramente, na seleo de cenrios de teste. Esses cenrios so reproduzidos atravs de scripts que simulam tanto ataques quanto atividades consideradas normais. A melhor forma de escolher um cenrio de teste, segundo o autor, basear-se na poltica de segurana da empresa, pois ela que define o que e o que no uma intruso. A segunda fase dessa proposta corresponde realizao dos procedimentos de teste, que esto divididos nas seguintes avaliaes: (a) identificao de intruso, experimentos que verificam a habilidade do IDS de detectar duas formas distintas de ataques: concorrentes e seqenciais (b) uso de recursos, que correspondem a testes que avaliam a quantidade de recursos computacionais (carga da CPU, memria principal e espao em disco) consumidos pelo IDS e (c) testes de saturao, cujo objetivo verificar o comportamento desses sistemas quando submetidos a situaes que visam esgotar diferentes recursos (exemplo: aumento do nmero de processos concorrentes em execuo na estao em que o sistema estiver instalado). 2.1.1 Ataques concorrentes No intuito de evitar a deteco de um determinado ataque o intruso pode distribuir suas atividades de forma concorrente [Puketza et al. 1997]. A figura 1 ilustra o que a metodologia em questo considera um ataque concorrente1. Como se pode observar o ataque em questo uma tentativa de quebra de senhas, no qual trs intrusos atuam de forma a somar esforos para realizar o ataque. Essa figura lista as atividades que correspondem a cada um dos intrusos: o intruso identificado pela letra A deve copiar a ferramenta cracker program de uma estao remota e aguardar pelo trmino das demais atividades realizadas pelos outros intrusos. Quando isso ocorrer, deve excluir tal ferramenta; o intruso B tem como principal atividade compilar e executar a ferramenta de ataque. J o intruso C deve verificar a sada gerada por essa ferramenta (cracker program) e tentar realizar uma conexo, com a senha que foi descoberta, ao servidor alvo. As setas na figura 1 indicam a ordem em que as atividades devem ser executadas. Para cada um dos intrusos existentes em uma sesso de ataque, h um determinado script que simula suas atividades. A fim de permitir o desenvolvimento desses scripts, a plataforma desenvolvida possui (a) comandos bsicos para simular conexes, realizar
1

Na abordagem em questo ataques concorrentes correspondem a atividades intrusivas que so realizadas a partir de mais de uma estao.

14

autenticao, acessar servidores de transferncia de arquivos e executar comandos do sistema operacional, (b) mecanismos de sincronizao responsveis por monitorar a seqncia em que atividades de uma sesso devem ser realizadas, (c) mecanismos de comunicao, capazes de controlar o recebimento e envio de dados entre os scripts de uma mesma sesso, e (d) recursos para armazenar e reproduzir scripts.
Intruso A telnet to hostA login as user1 make a directory named attack change to the directory attack ftp to hostB as userB copy cracker program end ftp session compile cracker program run cracker program clean up logout logout telnet to hostA login as the cracked user [continue the intrusion] Intruso B telnet to hostA login as user2 Intruso C

Figura 1 - Ataque concorrente [Puketza et al. 1997]

2.1.2

Avaliao

Nos testes realizados, um nico IDS conhecido por Network Security Monitor (NSM), foi submetido aos experimentos previstos pela plataforma de software desenvolvida por [Puketza et al. 1997]. O NSM um sistema de deteco de intruso baseado em rede que, a exemplo de outras ferramentas, detecta ataques atravs da anlise de assinaturas. No entanto, esse IDS possui uma caracterstica incomum aos demais: atribui valores, entre 0 e 10, para cada conexo estabelecida na rede monitorada. Esses valores so atribudos considerando a freqncia e o tipo de conexo estabelecida. Para a realizao dos experimentos propostos foram criados scripts (seqenciais e concorrentes) para simular cada uma das seguintes aes: transmitir um arquivo de senhas para uma outra estao da rede, tentar descobrir senhas atravs de programas ou por tentativa e erro e, ainda, explorar vulnerabilidades em alguma aplicao resultando em acesso privilegiado. A premissa existente por trs dessa estratgia que o NSM atribuiria um peso maior para uma sesso composta por muitas atividades intrusivas (seqenciais) do que para diversas sesses compostas por poucas atividades intrusivas (concorrentes).

15

Ataques Transmisso do arquivo de senhas Descoberta de senhas Tentativa de diversas conexes Explorao de vulnerabilidades

Scripts seqenciais 7,472 3,160 8,722 7,472

Scripts Concorrentes 7,472 3,160 7,785 4,972

Tabela 1 - Avaliao do NSM: valores retornados [Puketza et al. 1997]

Como se observa na tabela 1, acima, para cada ataque realizado o IDS atribuiu um determinado valor, sendo que quanto maior o valor, maior a probabilidade de que essa atividade corresponda a um ataque. Segundo [Puketza et al. 1997], os resultados apresentados na tabela 1 demonstram que um intruso, uma vez distribuindo suas atividades pode reduzir as chances de ser detectado.

2.2 Lippmann et al. 2000


Desde 1998 o Laboratrio Lincoln do Massachusetts Institute of Technology (MIT) conduz uma srie de estudos em busca de uma metodologia para avaliao comparativa de IDS. De acordo com [Lippmann et al. 2000], os principais objetivos dos testes realizados em [Lippmann et al. 1998] e [Lippmann et al. 1999] foram (a) identificar os ataques detectados e as taxas de falsos positivos geradas pelos IDSs testados, a fim de que os desenvolvedores de tais sistemas obtivessem subsdios suficientes para corrigir possveis falhas existentes nos mesmos e (b) prover uma forma imparcial de testar o comportamento dos IDSs submetidos avaliao. 2.2.1 Mtodo para classificao dos ataques A classificao dos ataques no processo de avaliao de sistemas de deteco de intruso permite descrever aspectos relevantes quanto ao contexto dos mais diferentes ataques [McHugh, 2000], isto , entender a seqncia de passos e aes executadas para a realizao de atividades no autorizadas e que de alguma forma coloquem em risco a estabilidade da rede e de seus servios. A partir do conhecimento do contexto de um ataque possvel a realizao de uma srie de medidas para minimizar a probabilidade de que tais ataques sejam bem sucedidos. A taxonomia utilizada em [Lippmann et al. 1998] e [Lippmann et al. 1999] classifica os ataques em relao a trs aspectos: (1) nvel de privilgio atual do usurio, (2) mtodos de transio e (3) tipos de aes executadas pelo usurio. Esses trs aspectos sero descritos a seguir. 2.2.1.1 Nveis de privilgios

Nveis de privilgios representam os tipos de acesso que um determinado indivduo possui a um sistema ou estao. Segundo [Kendall, 1999], [Das, 2000] e [Korba, 2000] o conjunto de nveis de privilgios relacionados abaixo correspondem aos mais comuns e relevantes para avaliao de sistemas de deteco de intruso baseados em rede.

16

Menor nvel de acesso

Remote network access (R) Local network access (L) User access (U) Super-user access (S) Physical access (P)

Maior nvel de acesso

Figura 2 - Nveis de privilgios [Kendall, 1999]

Remote network access (R), acesso remoto a rede; Local network access (L), acesso local a rede; User access (U), acesso de usurio, permite a execuo de comandos de usurios no sistema; Super-user access (S), acesso de superusurio ou administrador, conjunto de privilgios reservados ao administrador do sistema; Physical access (P), acesso fsico, corresponde ao acesso direto de um determinado usurio a servidores e/ou equipamentos de interconexo de rede; Mtodos de Transio

2.2.1.2

Os mtodos de transio correspondem aos meios utilizados por um intruso para que o seu nvel de privilgio sobre determinado sistema ou estao seja incrementado. A taxonomia em questo define um conjunto de cinco possveis mtodos, representados por um caracter, que podem vir a serem utilizados para a realizao do processo de transio entre os diferentes nveis de privilgios existentes: Masquerading (m), mtodo atravs do qual possvel fraudar um sistema fazendo-se passar por outro usurio ou host. Exemplos desse mtodo incluem o uso indevido de contas de usurio legtimos do sistemas, que tenham sido roubadas, ou ainda o envio de pacotes TCP com endereo de origem forjado; Abuse of feature (a), consiste na realizao de aes legitimas do usurio, mas que so executadas de forma a deixar o sistema, ou servio num estado de falha ou de indisponibilidade. Exemplo: um usurio realiza diversas conexes a um determinado servio at esgotar os recursos do mesmo, assim sendo, nenhum outro usurio conseguir conectar-se a tal servio at que essas conexes tenham sido excludas, ou ento, que o servio tenha sido reiniciado; Implementation bug (b), a partir da explorao de falhas na implementao, tais como buffer overflow ou formatstrings, possvel que se obtenha acesso privilegiado ao sistema; Social engineering (s), consiste na habilidade de obter informaes ou acesso indevido a determinado ambiente ou sistema com a utilizao de tcnicas de persuaso. Geralmente, ataques baseados em engenharia social so altamente eficazes e resultam na obteno de informaes que facilitaro o acesso a uma determinada organizao;

17

System Misconfiguration (c), mtodo no qual o intruso explora as possveis falhas de configurao existentes em determinados servios e obtm acesso privilegiado ao sistema. Tipos de aes

2.2.1.3

Existem muitas aes que podem ocorrer como parte de um ataque. Na taxonomia em questo as aes so identificadas por duas strings, sendo que a primeira representa a categoria da ao e a segunda determina o tipo especfico da ao realizada. A tabela 2, abaixo, descreve os cinco tipos de aes contempladas nessa taxonomia:
Categoria Probe Tipo especfico Probe (Machines) Probe (Services) Probe (Users) Deny Deny (Temporary) Descrio Determina os tipos e o nmero de estaes ativas na rede. Determina quais os servios em execuo e as respectivas portas. Fornece informaes sobre os usurios da rede. Negao de servio temporria.

Deny (Administrative) Negao de servio que requer interveno administrativa.

Deny (Permanent) Intercept Intercept (Files) Intercept (Network) Intercept (Keystrokes) Alter Alter (Data)

Negao de servio que requer interveno . Interceptao de arquivos. Interceptao do trfego da rede. Interceptao do conjunto de teclas pressionadas por um usurio. Alterao de dados armazenados.

Alter(Intrusion-Traces) Remoo dos sinais de uma intruso, tais como os registros de um arquivos de log. Use Use (Recreational) Uso do sistema para atividades tais como jogos e Internet Relay Chat, IRC.

Use(Intrusion-Related) Uso do sistema como um ponto de entrada para futuros ataques. Tabela 2 - Tipos de aes possveis [Korba, 2000]

Por exemplo, se um usurio com acesso remoto a rede (R), explorar uma falha no servidor de FTP (b) que resulte temporariamente em acesso negado a esse servio (Deny), o ataque em questo ser classificado como "R-b-Deny(Temporary)". 2.2.2 Tipos de trfego Por trfego de fundo entende-se todo o fluxo de dados transmitido paralelo aos ataques a serem reproduzidos. O objetivo do trfego de fundo fazer com que, a partir da reproduo de um fluxo de dados que represente diferentes situaes de um ambiente de rede, o processo de teste seja o mais real possvel. Os tipos de trfego de fundo normalmente reproduzidos a fim de realizar avaliao de IDSs so:

18

Trfego sinttico: o fluxo de dados gerado atravs de aplicaes instaladas em diversas estaes com o objetivo de reproduzir as aes dirias (previamente coletadas) de um conjunto de usurios; Trfego fragmentado, nesse tipo de trfego de fundo somente datagramas IP fragmentados so reproduzidos, com o objetivo de avaliar a capacidade do IDS de reconstruir esses datagramas.

Ainda que o processo de gerao do trfego de fundo esteja descrito muito superficialmente nas publicaes referentes ao trabalho em questo, esse um item que pode influenciar diretamente nos resultados obtidos [McHugh, 2000]. A primeira etapa da avaliao realizada em 1998 foi coletar amostras referentes ao trfego existente nas bases da fora area americana para, a partir dessa caracterizao, criar um conjunto de dados sintticos que representasse diversas atividades realizadas pelos usurios, tais como: navegar na Internet, ler e enviar emails, transferir arquivos via ftp, editar arquivos, compilar cdigos e estabelecer conexes com outras estaes. A partir de alteraes no kernel dos sistemas operacionais das estaes responsveis pela gerao do trfego de fundo, foi possvel simular, a partir de 10 estaes, atividades geradas por dezenas de usurios. Na etapa seguinte, coletar trfego de ataque, foram lanadas 300 instncias de 58 diferentes tipos de ataques contra as estaes Linux e Solaris da rede alvo para que o trfego de ataque gerado fosse armazenado para posterior reproduo. J na avaliao realizada em 1999 foram includos a esse trfego ataques contra servidores Windows NT, ataques fragmentados e, ainda, ataques denominados Stealthy attacks, cujo objetivo confundir o IDS em relao ao que trfego normal e o que de fato um ataque real. 2.2.3 Ambiente de teste Embora existam algumas divergncias, quanto s configuraes, entre o diagrama de rede disponvel em [Kendall, 1999] e as informaes existentes no site do laboratrio Lincoln, a seo 3 do artigo [Lippmann et al. 2000] descreve o ambiente reproduzido na figura abaixo como sendo o ambiente de teste atualmente utilizado [McHugh, 2000].
000000 Rede externa Rede interna

Firewall

Attacker, DNS Root & web RedHat 6.2

Traffic Generator RedHat 6.2

Network Director & Victim Windows 2000

Traffic Generator RedHat 6.2

Victim (s) Solaris 2.8 (x86) e RedHat 7.0

Figura 3 - Ambiente de teste usado na avaliao descrita em [Lippmann et al. 2000]

O lado esquerdo da figura 3 representa o ambiente externo (Internet) enquanto o lado direito representa o ambiente interno (Intranet) protegida contra diversos ataques por um firewall. A estao denominada Attacker, Root DNS & web, possui as funes de servidor de DNS (Domain Name Service), servidor web com a cpia de milhares de 19

sites e, ainda, promove os ataques contra a rede interna. As estaes Traffic Generator, executando Red Hat Linux 6.2, so responsveis pela gerao do trfego de fundo (tanto interno quanto externo) e possuem uma implementao especial do kernel Linux que permite, a partir de uma estao, simular o trfego de dezenas de estaes. As estaes Solaris 2.8 (x86), Red Hat 7.0 e Windows 2000 representam o conjunto de plataformas submetidas a diversos ataques e, portanto so denominadas Victims. J a estao Network Director possui uma aplicao em Java denominada Lincoln Adaptable Realtime Information Assurance Testbed (LARIAT) que, embora no esteja disponvel para utilizao, permite a configurao (ataques, tipo de trfego, taxa de reproduo, etc.) dos testes a serem executados [Lippmann et al. 2000].

2.3 Alessandri, 2000


Um dos trabalhos mais recentes desenvolvidos pela IBM [Alessandri, 2000] prope uma abordagem de avaliao, cujo objetivo testar as capacidades existentes nos IDSs e no as suas implementaes ou base de assinaturas. Atravs dessa forma de avaliao possvel averiguar a capacidade de deteco dos IDSs, frente a um ataque para o qual o IDS, ainda, no tenha uma assinatura desenvolvida 2.3.1 Metodologia Esse modelo de avaliao consiste em uma tcnica, implementada em prolog, que permite descrever em forma de regras as caractersticas existentes nos IDSs a serem avaliados e as caractersticas exploradas em diferentes ataques. Segundo essa proposta possvel identificar, a partir do cruzamento das regras que representam tais caractersticas, o comportamento dos IDSs sem que seja necessria a realizao de experimentos com os sistemas avaliados. A descrio das caractersticas dos IDSs realizada atravs de duas formas de classificao. A primeira forma separa as propriedades dos IDSs de acordo com o nvel de detalhe das caractersticas descritas. Para tal, so considerados os seguintes grupos: (a) grupo de propriedades genricas obtidas atravs da taxonomia proposta por [Herv, 1999] e (b) grupo de propriedades detalhadas, cujo objetivo descrever caractersticas relacionadas a protocolos e aplicaes. A segunda forma de classificao separa as propriedades dos IDSs em funo de caractersticas tais como: posicionamento dos sensores, tcnicas utilizadas para reconhecimento de padres e o tempo entre a ocorrncia de uma atividade e a gerao do respectivo alarme. Um exemplo simples de descrio de caractersticas de um IDS apresentado abaixo. A partir dessa descrio possvel afirmar que este um IDS baseado em rede (p.infoSrc.type.net = true) e que possui mecanismos capazes de analisar o protocolo IP (p.IP.aware = true). No entanto, o IDS no capaz de tratar campos do cabealho TCP (p.TCP.aware = false).
p.infoSrc.type.net = true p.IP.aware = true p.TCP.aware = false

A descrio de uma atividade representada por propriedades e regras que descrevem as caractersticas requeridas para que o IDS gere um alarme para essa atividade. A regra a seguir descreve uma atividade intrusiva denominada A.SMTP.pipe, que corresponde a explorao de uma vulnerabilidade a partir da qual possvel a execuo de comandos arbitrrios em verses antigas do Sendmail (servidor de email para sistemas operacionas padro Unix).
A.SMTP.pipe -> r.alarm.SMTP.pipe = p.infoSrc.type.net & r.tech.patRec & r.proto.SMTP.aware

20

Essa regra deve ser interpretada da seguinte forma: a atividade denominada (A.SMTP.pipe) pode fazer com que um sistemas de deteco de intruso gere um alarme (r.alarm.SMTP.pipe) se todas as premissas descritas forem verdadeiras, ou seja, a fonte de coleta de informaes do IDS for a rede (p.infoSrc.type.net), esse sistema possuir algum tipo de algoritmo de reconhecimento de padres para anlise das assinaturas (r.tech.patRec) e, ainda, possuir a capacidade de tratar o protocolo SMTP (r.proto.SMTP.aware). 2.3.2 Avaliao do IDS Uma vez que todas as caractersticas dos IDSs e das atividades tenham sido identificadas e devidamente representadas, a aplicao, desenvolvida em prolog, esta apta a executar a avaliao do IDS. A figura 4, abaixo, ilustra a interao entre os seguintes mdulos: descrio do IDS, descrio da atividade, sada do IDS e avaliao do resultado. Essa interao entre mdulos ocorre atravs dos avaliadores de regras e de resultado. O avaliador de regras responsvel pelo cruzamento e anlise das descries das caractersticas do IDS e das atividades, resultando em uma lista de alarmes gerados pelo IDS que armazenada no mdulo de sada. J o avaliador de resultados verifica a sada produzida e compara com o alarme que de fato deveria ser gerado (falso positivo, falso negativo, deteco correta) para essa atividade e que esta representado em forma de regras no mdulo descrio da atividade. Portanto, atravs dessa segunda comparao possvel afirmar se o resultado que o IDS gerou est correto.

Descrio do IDS

Descrio da atividade

Avaliador de Regras

Sada do IDS

Avaliador de Resultado

Avaliao do resultado

Figura 4 - Avaliao do IDS [Alessandri, 2000]

2.4 Barber, 2001

21

Conforme [Barber, 2001] o processo de escolha de um produto como um IDS requer a avaliao dos seguintes aspectos: Tecnolgico: refere-se forma com que a tecnologia utilizada no produto implementada, ou seja, analisa aspectos tcnicos do produto; Corporativo: o objetivo verificar a sade financeira da organizao que desenvolveu o produto em questo; Comercial: a avaliao deste aspecto procura identificar as estratgias que a empresa responsvel pelo produto adota no que se refere ao mercado e concorrncia.

A fim de realizar a avaliao dos aspectos corporativos e comerciais foram desenvolvidos alguns questionrios a serem aplicados em entrevistas com os representantes dos produtos avaliados. A avaliao dos aspectos tecnolgicos tem por objetivo identificar possveis falhas em um IDS considerando dois grupos de critrios, um quantitativo e outro qualitativo. No grupo dos critrios quantitativos so analisadas (a) as taxas de deteco de ataques, (b) a habilidade de reconhecer ataques fragmentados e (c) o desempenho (com e sem fragmentao). J o grupo de critrios qualitativos apresenta as seguintes anlises: (a) facilidade de instalao e gerenciamento e (b) flexibilidade para definir os eventos que sero armazenados. Para realizar os testes que consideram os critrios quantitativos foi construdo um cenrio com oito estaes e um roteador, sendo trs estaes para realizao de ataques (na primeira estao havia sido instalado Solaris 2.6, na segunda Windows NT e na terceira SuSe Linux 6.3), alm de outras trs estaes com os servios a serem atacados (nessas estaes haviam sido instalados os mesmos sistemas operacionais das estaes anteriores), e mais uma estao para gerenciamento do IDS, alm de uma ltima estao para instalao dos sensores dos IDSs. Para a realizao dos ataques previstos foram utilizadas vinte e trs ferramentas de ataque para promover basicamente dois tipos de ataques: negao de servio e varredura de portas. O trfego de fundo reproduzido nos testes de escalabilidade foi gerado a partir de ferramenta denominada fragrouter que permite monitorar a quantidade de pacotes IP fragmentados. Segundo [Barber, 2001], a partir do estudo realizado possvel afirmar que os IDSs disponveis no atendem satisfatoriamente s necessidades de mercado sendo necessrio, ainda, o desenvolvimento de muitas outras potencialidades para que sejam obtidas melhorias nas taxas de deteco e escalabilidade dos IDSs. Quanto ao futuro dos sistemas de deteco de intruso, Barber destaca dois aspectos: (a) essas ferramentas sero dotadas de mecanismos no apenas para detectar ataques de negao de servio, mas tambm para responder de forma eficiente a esses ataques e (b) os IDSs devem ter o escopo de monitoramento ampliado para aplicaes, ou seja, ao invs de monitorar a rede ou uma determinada estao, os IDSs deveriam monitorar e analisar especificamente o trfego endereado s aplicaes, por exemplo um banco de dados.

2.5 Sntese das propostas de metodologias existentes


A tabela 3 apresenta uma sntese das principais caractersticas das metodologias anteriormente mencionadas. As caractersticas consideras nessa anlise foram: o tipo de avaliao realizada, a forma de classificao dos ataques, o tipo do trfego de fundo gerado para realizao dos experimentos, o tipo de ambiente de teste necessrio e, por fim, as mtricas de avaliao disponvel em cada uma das metodologias. 22

Quanto ao tipo de avaliao, constatou-se que a maior parte das metodologias avalia apenas as bases de assinaturas dos IDSs ( [Puketza et al. 1997] , [Lippmann et al. 2000] e [Barber, 2001] ) o que, alm de exaustivo considerando-se o tamanho destas bases, gera um resultado vlido por um pequeno perodo de tempo, pois assinaturas so desenvolvidas muito rapidamente pelos fabricantes dos IDSs ou at mesmo pelos usurios destas ferramentas. Portanto, para que os resultados destas metodologias possam ser considerados confiveis necessrio que sejam refeitos os experimentos previstos cada vez que surgem novas assinaturas. Por outro lado, metodologias tais como a proposta nessa monografia e em [Alessandri, 2000] que ao invs de testarem a base de assinaturas testam as capacidades de deteco dos IDSs , devem ter seus experimentos refeitos somente quando novos recursos forem implementados essas ferramentas. No que tange classificao de ataques, a metodologia proposta nessa monografia utiliza a descrio tcnica. A descrio tcnica do ataque possibilita o conhecimento do mesmo a ponto de permitir no s o desenvolvimento de assinaturas, mas tambm uma seleo de ataques em funo das caractersticas comuns exploradas pelos mesmos, o que resulta na reduo dos cenrios de teste, uma vez que os ataques que possuem as mesmas caractersticas so rapidamente identificados. J a descrio do contexto dos ataques, possibilita o entendimento no da tcnica em si, mas da forma como o ataque ocorre e os mecanismos utilizados para a realizao do mesmo. Portanto, essa forma de classificao representa uma importante ferramenta de documentao de ataques [McHugh, 2000]. A caracterizao do trfego de fundo uma caracterstica fundamental na avaliao de IDSs, pois interfere diretamente nos resultados de alguns testes, tais como verificao das taxas de falsos positivos e escalabilidade. Algumas propostas como as publicadas em [Lippmann, 1998] e [Lippmann, 1999] no descrevem a composio do trfego de fundo. Isto faz com que os resultados, principalmente da avaliao de falsos positivos, sejam contestados, pois no h como afirmar se de fato existem ou no ataques inseridos nesse trfego, nem como identificar os motivos que levaram os IDSs a gerar tais resultados. Portanto, os resultados desses testes possivelmente representem valores incorretos. J a metodologia proposta nessa monografia utiliza um trfego de fundo homogneo, isto , um fluxo de dados composto por determinado tipo de pacote cujo tamanho e a taxa de reproduo so variveis. Com exceo da metodologia proposta em [Alessandri, 2000], todas as demais necessitam de algum tipo de ambiente de teste para a realizao dos experimentos previstos na metodologia. Propostas como [Puketza et al. 1997] e [Lippmann et al. 2000] requerem ambientes de teste complexos, com dezenas de estaes (atacantes, vitimas, sistemas avaliados, geradores e coletores de trfego), diferentes equipamentos de interconectividade (hub, switch e roteadores) e at mesmo firewalls. Essas caractersticas de um ambiente de teste, muitas vezes, inviabilizam a reproduo dos mesmos, pois alm de complexos demandam um grande intervalo de tempo e um ambiente dedicado at o trmino dos testes. Alm disso, o uso de firewalls faz com que diversos ataques no sejam capturados pelos IDSs, pois so bloqueados antes de chegarem rede interna da empresa. A utilizao de firewalls de extrema importncia para qualquer instituio e deve estar presente em todos os estudos cujo objetivo seja avaliar a infra-estrutura de segurana. No entanto, para o propsito em questo um componente que limita o processo de avaliao.

23

Puketza Tipo de avaliao Avaliao exaustiva Potencialidade de deteco Classificao de ataques Descrio tcnica do ataque Descrio do contexto do ataque Trfego de fundo Trfego de fundo sinttico Trfego fragmentado Trfego homogneo Ambientes de teste Independente Especfico Resultados apresentados Taxa de falsos positivos Tipos de ataques detectados Escalabilidade Aspectos de usabilidade Capacidade de deteco de ataques concorrentes X

Lippmann X

Alessandri

Barber X

Abordagem proposta

X X X

X X

X X X X

X X X X X

X X X X X

X X X X

Tabela 3 - Caractersticas das principais metodologias para avaliao de IDSs

A ltima caracterstica considerada nessa sntese refere-se aos resultados apresentados. Embora a proposta descrita em [Barber, 2001] considere mtricas que no so avaliadas em outras abordagens, essa proposta consiste em um conjunto de atividades exaustivas, uma vez que para cada critrio avaliado necessrio executar novamente um a um dos ataques de forma manual, pois no h uma ferramenta de apoio ao processo de teste. Outro aspecto negativo dessa proposta que os procedimentos no so sistematizados e a documentao existente no clara o suficiente quanto forma como os testes foram realizados. Abordagens como as desenvolvidas em [Lippmann et al. 2000] tambm so criticadas quanto ao esforo empregado nas atividades previstas, pois os mesmos resultados obtidos podem ser alcanados a partir de experimentos menos exaustivos [McHugh, 2000]. Propostas que prevem o uso de ferramentas como mecanismos de auxilio no processo de avaliao, devem garantir que tais mecanismos estejam em perfeito funcionamento e que sejam facilmente utilizados para avaliao de diferentes IDSs mediante diferentes ataques. No entanto, no o que se percebe em [Puketza et al. 1997], cuja ferramenta foi concebida e testada luz de caractersticas existentes em um nico IDS. Embora essa proposta consista no uso de uma plataforma de software baseada em scripts, que geram tanto o trfego de fundo quanto os ataques, a quantidade de scripts desenvolvidos bastante limitada. Assim, funo dos usurios dessa metodologia criar scripts, em linguagem C ou TCL, para simulao do trfego de fundo caracterstico da sua empresa, bem como para simular novos ataques. Outra abordagem que descreve o uso de uma ferramenta como principal mecanismo na realizao dos experimentos e na gerao do trfego [Lippmann et al. 2000]. No entanto passados aproximadamente dois anos a ferramenta ainda no possui uma verso estvel para utilizao o que inviabiliza a reproduo de tal abordagem. Na proposta desenvolvida pela IBM [Alessandri, 2000], a ferramenta de avaliao dispensa a necessidade de reproduzir um ambiente de teste, no entanto para que seja possvel 24

aplicar essa metodologia de forma a obter resultados que de fato reflitam a realidade dos IDSs avaliados, sero necessrios conhecimentos to especficos de como os IDSs tratam determinadas caractersticas dos protocolos que a aplicao dessa proposta, na prtica, limitada a IDSs de cdigo aberto. Outro fator referente s ferramentas que diminuem a probabilidade de utilizao das mesmas a necessidade de conhecimentos especficos em determinadas linguagens como prolog e TCL. De forma geral o que se observa nas metodologias citadas a ausncia de uma proposta, cuja aplicao seja voltada a empresas. Para que isto seja possvel necessrio o desenvolvimento de uma abordagem com procedimentos bem definidos, facilmente realizveis e que, de fato, reflitam a realidade dos critrios avaliados. As metodologias supracitadas falham em ambos os aspectos. Alm de no fornecerem documentao adequada sobre a realizao de alguns testes importantes, algumas destas abordagens ainda no foram devidamente validadas ou no apresentam a instrumentalizao necessria para serem aplicadas.

25

3 A metodologia de avaliao proposta


O principal objetivo dessa metodologia prover uma abordagem prtica de fcil e rpida utilizao para avaliao de IDSs. Para aplicar essa abordagem no necessrio o conhecimento dos sistemas de deteco de intruso, pois esses so considerados caixas pretas. Os sistemas de deteco de intruso submetidos a essa metodologia so avaliados quanto s seguintes caractersticas: (a) capacidade de deteco, (b) escalabilidade e (c) taxa de falsos positivos gerados. A metodologia proposta composta por cinco etapas: seleo dos ataques, seleo de ferramentas, gerao do trfego dos cenrios de avaliao, montagem do ambiente de avaliao e anlise dos IDSs. A seguir sero descritas cada uma das etapas citadas.

3.1 Seleo dos Ataques


Nessa etapa o objetivo selecionar um conjunto de ataques que explore caractersticas tcnicas nicas entre si. Ao invs de simplesmente reunir um conjunto de ataques o que se busca, ao finalizar esta etapa, selecionar ataques cuja deteco seja possvel a partir diferentes mecanismos de deteco existentes em um IDS. Por exemplo, para que um IDS seja capaz de detectar um ataque de insero, o URL Enconding, ele necessita mais do que simplesmente a capacidade de anlise de um pacote HTTP, pois necessrio, ainda, um mecanismo de decodificao do contedo do pacote. J o processo de deteco de um ataque de negao de servio, como o teardrop, requer capacidades como remontar pacotes IP fragmentados. Dessa forma, os ataques selecionados nessa etapa, representam um conjunto de caractersticas mpares que permitem avaliar as diferentes capacidades de deteco dos IDSs e no simplesmente a base de assinaturas dessas ferramentas. Essa forma de classificao denomina-se descrio tcnica do ataque. Para que essa forma de seleo de ataques seja colocada em prtica necessrio definir um conjunto inicial de ataques. Essa atividade est descrita na seo a seguir. 3.1.1 Ataques propostos A primeira atividade prevista para essa etapa de seleo de ataques definir quais os tipos de ataques que sero utilizados na avaliao. Nessa monografia foram considerados os seguintes tipos de ataques: Evaso: atravs de um ataque de evaso possvel obter desde o tipo e a verso de servidor web utilizados na estao alvo at a executar scripts que possam colocar em risco a segurana de tal servidor. Independente do tipo de ao executada o objetivo ao realizar este tipo de ataque primeiramente evitar a deteco do mesmo, fazendo com que no processo de anlise do contedo de um pacote os IDSs percam informaes vitais para a deteco. J as aplicaes alvo recebem todas as informaes contidas nos pacotes enviados e, portanto, sero vtimas do ataque.

26

Aplicao A T T A C K

IDS A T T C K

Dados aceitos pela aplicao Dados rejeitados pelo IDS Atacante T T C A A K

Figura 5 - Exemplo de evaso da letra A [Ptacek e Newsham, 1998]

A figura 5 ilustra a evaso da letra A, ou seja, o atacante envia para aplicao as seguintes informaes (TTCAAK). A aplicao recebe os dados enviados e os organiza de forma que o resultado seja (ATTACK). No entanto o IDS no momento organizar as informaes perde um dado importante, a letra A. Por conseguinte o IDS entende que a informao enviada (ATTCK) no corresponde a nenhum ataque existente na sua base de assinaturas, logo no gera nenhum alerta e o ataque realizado [Ptacek e Newsham, 1998]. Insero: a exemplo do ataque de evaso, as atividades realizadas podem variar desde a sondagem de servidores web at a tentativa de execuo de scripts que coloquem em risco a segurana do servidor em questo. Novamente, so exploradas as inconsistncias existentes entre as informaes coletadas pelo IDS e as informaes que de fato chegam aplicao. No entanto, diferentemente dos ataques de evaso, os ataques de insero fazem com que o IDS ao analisar um pacote receba mais informaes do que o sistema alvo. Dessa forma, o ataque realizado e o IDS no identifica na sua base de assinaturas um padro que corresponda ao ataque [Ptacek e Newsham, 1998].
Aplicao A T T A C K IDS A T X T A C K

Rejeitado pela aplicao Atacante T X T C A A K

Dados aceitos pelo IDS

Figura 6 - Exemplo de insero da letra X [Ptacek e Newsham, 1998] A figura 6 ilustra a insero da letra X, ou seja, o atacante envia aplicao o seguinte contedo (TXTCAAK), o IDS, por sua vez, aceita (TXTCAAK) 27

sofrendo ento a insero da letra X o que logicamente impede a deteco do ataque. J a aplicao, ao receber os pacotes, organiza as informaes e descarta a letra X, por ser um dado irrelevante para aplicao, obtendo ento (ATTACK). Varredura de portas ou port scan: normalmente essa uma das primeiras atividades realizadas por um intruso e consiste basicamente em uma coleta de dados, cujo objetivo reunir o maior nmero possvel de informaes sobre a rede ou o servidor alvo. Essas informaes podem variar desde o tipo de sistema operacional instalado em uma determinada estao at quais servios esto em execuo e as suas respectivas verses. Conforme o relatrio publicado no dia 1 de outubro de 2001 pelo instituto SANS (System Administration, Networking and Security) juntamente com o NIPC/FBI (National Infrastructure Protection Center, FBI), as varreduras de portas esto entre as vinte vulnerabilidades mais crticas de segurana na Internet [Cert, 2002]. Negao de servio ou Deny of Services (DoS): ataque cujo objetivo esgotar os recursos de um servio ou rede tornando-o inacessvel ou com respostas muito lentas. Os ataques de negao de servios so normalmente executados usando ferramentas que enviam de forma indiscriminada requisies a um determinado servidor, sobrecarregando os recursos do mesmo e, por vezes, tornando o sistema inopervel. Na grande maioria desses ataques o endereo de origem forjado (spoofing) e, portanto, dificultam o processo de auditoria. Todos os sistemas conectados Internet e que estejam executando servios de rede baseados no protocolo TCP esto sujeitos a ataques de negao de servios [Newsham e Ptacek, 1998]. Esse tipo de ataque possui uma variante denominada negao de servio distribuda, Distributed Denial of Service (DDoS), que corresponde a ataques de DoS realizados em larga escala, partindo de vrias estaes e disparados simultaneamente de forma coordenada sobre um ou mais alvos.

Uma vez definidos os tipos de ataques a serem utilizados na avaliao o momento de selecionar um conjunto de atividades intrusivas que ir representar cada um desses tipos de ataques. A seguir sero descritos os ataques que compe os cenrios de ataque propostos nessa monografia. importante ressaltar que caso esses ataques sejam de conhecimento, o leitor pode passar a etapa seguinte, a descrio tcnica do ataque. 3.1.1.1 Evaso

Case Sensitivity Os sistemas operacionais tais como o Windows 98 e Windows 2000 Server no diferem letras maisculas de letras minsculas (no so case sensitivity), ou seja, o arquivo phf.cgi pode ser referenciado tanto como PHF.cgi quanto como PHF.CGI. Logo os IDSs devem ser capazes de detectar ambas as requisies, caso contrrio o ataque ser bem sucedido. Method Matching No intuito de explorar as vulnerabilidades de um script e, ainda, tentar inviabilizar a deteco de tal ataque, pode-se utilizar mtodos alternativos de solicitaes tais como Put, Head e Post. Dessa forma, embora alguns IDSs identifiquem a requisio Get /cgi-

28

bin/phf.cgi HTTP/1.0 HTTP/1.0.

podem vir a no identificar uma requisio do tipo Put /cgi-bin/phf.cgi

Session Splicing Diferentemente dos ataques de fragmentao, este ataque consiste no envio de diversos pacotes. Por exemplo, a solicitao Get /cgi-bin/phf.cgi HTTP/1.0 pode ser dividida em mltiplos pacotes Ge, t, /, cgi, -bin, p, hf.c, gi, H, T, TP, /1, .0. Sendo assim o processo de deteco ainda mais difcil e para que seja possvel os IDSs devem ser capazes de analisar uma seqncia de pacotes. HTTP Mis-formating Conforme a RFC 2616 a estrutura de uma requisio a um servidor web deve seguir o seguinte formato: mtodo <espao> URL <espao> verso CRFL CRFL; onde CRFL corresponde a uma linha em branco obrigatria. No entanto muitos servidores web aceitam requisies que no estejam plenamente em conformidade com essas especificaes, por exemplo: mtodo <tabulao> URL <tabulao> verso CRFL CRFL. Portanto existe a possibilidade de iludir alguns IDSs, pois ao ser realizada a comparao entre o pacote e a base de assinaturas de ataques no haver relao, logo o pacote ser considerado uma solicitao normal e no um ataque. DOS Directory Syntax Em plataformas Windows o separador de diretrios representado por \, enquanto que a especificao do protocolo HTTP determina que o separador de diretrios web seja /. Isso faz com que toda vez que uma requisio do tipo Get /cgi-bin/phf.cgi enviada a um servidor web da Microsoft, esse tenha que converter / para \, de forma que a aplicao em questo interprete a requisio como Get \cgi-bin\phf.cgi. Portanto, este servidor aceita requisies como, \cgi-bin\phf.cgi, o que faz com que o IDS, ao analisar o pacote HTTP, no encontra a assinatura de um ataque conhecido. 3.1.1.2 Insero

Long URLs Existem vrias tcnicas que visam melhorar o desempenho dos IDSs. Uma dessas tcnicas limita a quantidade de informaes de uma requisio HTTP a serem analisadas. Dessa forma, possvel a insero de uma quantidade suficiente de caracteres para mover o cdigo de ataque para alm do escopo da anlise do IDS, o que faz com que o ataque no seja detectado. Self Reference Os caracteres .. quando utilizados para acessar diretrios conduzem o usurio para um diretrio superior (diretrio pai) ao diretrio atual. J o caracter . faz referncia ao diretrio atual. Sendo assim, ento c:\temp\.\.\.\.\.\ equivalente a c:\temp\. O objetivo da tcnica denominada Self Reference confudir os mecanismos de anlise de assinaturas dos IDSs enviando o seguinte tipo de requisio Get /./cgibin/./phf. URL Encoding Conforme a RFC 2616, caracteres binrios arbitrrios podem ser passados em uma requisio HTTP desde que estejam na seguinte notao: %xx, onde xx corresponde ao valor hexadecimal do caracter. Uma vez que a requisio Get /cgi-bin/teste.cgi HTTP/1.0 seja

29

codificada torna-se Get /cg%69-b%69n/t%65st%65.cg%69 HTTP/1.0. Portanto, os IDSs, antes de analisarem, qualquer string devem decodificar a mesma. Multiple Slashes Os servidores web aceitam requisies contendo mltiplas barras, slashes, como em Get /cgi-bin//scripts///phf.cgi HTTP/1.0 . Contudo, existe a possibilidade que alguns IDSs ao analisarem esses tipos de requisies falhem devido ao fato de que a assinatura existente contenha apenas uma barra. Parameter Hiding Uma requisio de pgina web pode conter informaes adicionais, parmetros, que sero utilizadas para construir o contedo de pginas dinmicas. Esses parmetros so determinados aps um sinal de interrogao no identificador uniforme de recursos, Uniform Resource Locator (URL), como em Get /index.htm?user=normal HTTP/1.0. Alguns IDSs, a fim de otimizar o processo de anlise de pacotes ignoram todas as informaes aps a indicao de parmetros; sendo assim, h a possibilidade da insero de um cdigo malicioso aps essa parte da requisio. Reverse Traversal Consiste em uma tentativa de iludir os IDSs atravs de uma requisio na qual existam referncias a outros diretrios que no estejam especificados na base de assinaturas dos IDSs. Por exemplo, a requisio Get /cgi-bin/phf.cgi HTTP/1.0, facilmente detectada. Alguns IDSs, porm, podem desconsiderar esta mesma requisio quando requerida da seguinte forma: Get /cgi-bin/scripts/../phf.cgi HTTP/1.0. 3.1.1.3 Varredura de portas e servios

TCP connect A chamada de sistema connect (), provida pelo sistema operacional, usada para estabelecer conexo com um conjunto de portas na mquina alvo. Caso a porta esteja no estado listening, connect ir estabelecer uma conexo; caso contrrio o usurio receber a mensagem de porta inalcanvel. SYN Scan Tcnica conhecida como half-open scanning por no estabelecer uma conexo TCP completa. O primeiro pacote a ser enviado est com o flag SYN configurado para estabelecer uma conexo real e, portanto, deve aguardar uma resposta da estao para a qual o pacote foi enviado. Ao receber uma resposta com os flags SYN/ACK ligados isto indica que a porta est no estado listening. J uma resposta com o flag RST ligado uma indicao que a porta est fechada. Se o flag SYN/ACK recebido, o flag RST imediatamente enviado para encerrar a conexo. ACK Scan Este tipo de sondagem envia pacotes com o flag ACK para uma porta especfica. Caso seja retornado um pacote TCP com flag RST ligado, a porta classificada como "no filtrada"; caso seja retornado um ICMP unreachable, a porta classificada como "filtrada". Window Scan Este tipo de scan muito similar ao ACK scan, no entanto possvel detectar portas abertas mesmo quando essas esto sendo filtradas por um firewall. Isso ocorre 30

devido ao tamanho da janela TCP existentes em diversos sistemas operacionais (por exemplo: FreeBSD, SunOS e OpenVMS). FIN Scan Esta tcnica consiste em enviar um pacote com o flag FIN habilitado para uma determinada porta. Segundo a RFC 793 as portas que estiverem fechadas devem responder com um pacote TCP com o flag RST ligado, enquanto que as portas que estiverem abertas devem ignorar o pacote em questo. UDP Scan Este mtodo usado para determinar quais as portas UDP (User Datagram Protocol) esto abertas. A tcnica implica em enviar 0 bytes de dados de pacotes UDP para cada porta da estao alvo. Caso a resposta seja uma mensagem ICMP port unreachable ento a porta est fechada. Null Scan Esta tcnica consiste em enviar um pacote TCP com todos os flags desabilitados para uma determinada porta na estao alvo, sendo que as portas que estiverem fechadas devem responder com um pacote TCP com o flag RST habilitado, enquanto que as demais devem ignorar o pacote em questo. Xmas Ao contrrio do mtodo denominado null scan esta tcnica envia um pacote para cada porta da estao alvo a ser sondada com todos os flags habilitados exceto o flag SYN. TCP Ping Atravs desta tcnica possvel determinar quais as estaes que esto ativas no momento. Para tal, ao invs de enviar pacotes ICMP echo request e aguardar pelas respostas so enviados pacotes com flag ACK habilitado por toda a rede. Estaes que estiverem ligadas devem responder com um pacote TCP com o flag RST habilitado. TCP fragmentation scanning Esta forma de sondagem utiliza vrias outras tcnicas de varredura de portas tais como SYN scan, FIN scan, Xmas e Null scan. Os pacotes enviados a estao alvo so fragmentados, ou seja, o cabealho TCP dividido em vrios pacotes. Com isso, os IDSs que no possuem mecanismos eficientes de remontagem de pacotes no conseguem identificar essa forma de ataque, pois os diversos datagramas enviados individualmente no correspondem a uma ameaa.. Sondagem do protocolo IP Este mtodo determina quais protocolos da famlia TCP/IP esto sendo utilizados na estao alvo. A tcnica consiste em enviar pacotes IP raw sem nenhum cabealho para cada porta na estao alvo; caso a resposta seja ICMP unreachable, o protocolo no esta sendo utilizado. Identificao Remota de Sistemas Operacionais (fingerprinting) A fim de identificar o sistema operacional instalado em uma determinada estao, se utiliza um conjunto de tcnicas que detectam caractersticas da implementao do protocolo TCP/IP do sistema operacional que est instalado na estao alvo. Uma vez que essas caractersticas tenham sido identificadas realizada uma comparao dessas 31

informaes com a base de dados da ferramenta de ataque, a fim de definir qual o sistema operacional da estao em questo. Atualmente as tcnicas mais utilizadas para determinar o tipo de sistema operacional so: sondagem FIN (FIN probe), identificao de padres do nmero inicial de seqncia (Initial Sequence Number - ISN) escolhido pelo TCP ao responder um pedido de conexo, verificao da existncia ou no do bit de no fragmentao, anlise do tamanho da janela entregue pelos pacotes de retorno (TCP Initial Window), valor do flag ACK, tamanho da mensagem ICMP de erro, verificao do valor do tipo de servio retornado pelas mensagens de ICMP port unreachable e, ainda, anlise da forma como feito o controle de fragmentao e das informaes existentes no campo de opes do cabealho TCP. IDENT Reverso TCP O protocolo IDENT (RFC 1413) retorna nomes de usurios vlidos e consultado por diversos servios (IRC, FTP, SMTP, etc.), alm de servir como mecanismo de restrio de acesso baseado na relao usurio e endereo IP. Porm, conforme notificado por Dave Goldsmith em 1996, o rastreamento do protocolo IDENT permite revelar o nome dos usurios donos dos processos conectados via TCP [Ref]. 3.1.1.4 Smurf Esse ataque se utiliza de redes que permitam trfego na interface de broadcast. O ataque consiste na falsificao do endereo de origem de um pacote ICMP echo request, fazendo com que uma grande quantidade de respostas, pacotes ICMP echo reply, sejam direcionadas ao endereo que foi falsificado. UDP Storm A exemplo do ataque anterior o objetivo congestionar a rede e, por conseguinte, diminuir a largura de banda da mesma. Ao se estabelecer uma conexo entre dois servios UDP, por exemplo, echo/UDP e chargen/UDP, sero gerados uma grande quantidade de pacotes na rede at que ocorra uma interveno externa, como, por exemplo, reiniciar o servio inetd. SYN Flood Este ataque explora as limitaes do processo inicial de uma conexo denominado handshake, procedimento que, atravs do envio de pacotes TCP com os flags SYN e ACK habilitados entre cliente e servidor, permite efetuar o inicio de uma conexo a um servio. O objetivo exceder os limites definidos para o nmero de conexes que podem ser estabelecidas um determinado servio. Isso faz com que no seja possvel estabelecer quaisquer outras conexes a esse servio at que o nmero de conexes em espera seja reduzido. O problema mais crtico que envolve esse tipo de ataque e os IDSs a alta probabilidade de falsos positivos, uma vez que nem todas as tentativas de conexes em um pequeno intervalo de tempo, podem ser consideradas tentativas de SYN Flood. Teardrop Ao contrrio do ataque denominado Smurf, que utiliza a fora bruta para gerar o ataque, o teardrop executa um ataque de DoS utilizando-se de falhas em diferentes implementaes da pilha TCP/IP. Este ataque explora a incapacidade de alguns sistemas operacionais de reconstituir pacotes IP fragmentados. Como resultado, os sistemas 32 Negao de Servios

suscetveis a esse ataque tm o seu funcionamento prejudicado, podendo inclusive travar o sistema operacional. ICMP Fragmentation Para ser transmitido entre redes locais, um pacote IP deve ser fragmentado toda vez que exceder o limite do maior quadro que uma determinada rede local capaz de transmitir (Maximum Transfer Unit - MTU). Nesse caso, necessrio dividir o pacote IP em fragmentos menores que a MTU. O protocolo ICMP um protocolo auxiliar ao IP, que carrega informaes de controle e diagnstico, informando falhas como TTL do pacote IP excedido, erros de fragmentao e roteadores congestionados. O ataque em questo consiste no envio de um pacote ICMP mal formado para uma determinada estao, fazendo com que a estao de destino ao receber este pacote reduza a MTU desnecessariamente. Isto faz com que a conexo entre essas duas estaes fique extremamente lenta. Alm disso, em funo da quantidade de pacotes enviados uma razovel quantidade da largura de banda consumida. 3.1.2 Descrio tcnica do ataque Para realizar a descrio tcnica do ataque proposta por essa metodologia de fundamental importncia o conhecimento das caractersticas tcnicas do ataque. Essas caractersticas foram obtidas atravs do estudo dos ataques descritos na seo anterior. A partir desse estudo identificou-se as seguintes caractersticas: tipo e quantidade de pacotes enviados, campos do cabealho desse pacote que so importantes para que o ataque seja realizado, a quantidade e o tamanho dos pacotes a serem gerados. Sendo assim, uma vez que os ataque propostos tenham sido estudados e as suas caractersticas forem conhecidas o momento de classificar os ataques em funo das suas caractersticas tcnicas. Isto deve reduzir o cenrio inicial de ataques a uma quantidade que represente apenas ataques que explorem caractersticas diferentes uns dos outros. A tabela 4 abaixo est organizada da seguinte forma: nas linhas foram representados todos os ataques propostos no primeiro cenrio de ataques, conforme descrito na seo 3.1.1. J nas colunas aparecem s caractersticas exploradas em cada ataque. Estas caractersticas esto agrupadas em funo dos tipos de pacotes utilizados (HTTP, IP, TCP, ICMP e UDP) e de aspectos relevantes para a realizao do ataque tais como: a quantidade de pacotes utilizados e o estabelecimento ou no de conexes com a estao a ser atacada. Assim que todos os ataques e todas as caractersticas forem colocadas nessa tabela o momento de relacionar os ataques com as suas respectivas caractersticas. Como resultado tem-se a viso detalhada de cada ataque, o que fundamental na etapa seguinte para seleo de quais ataques devem compor o cenrio de avaliao.

33

HTTP

IP Opes (NOP, MSS, Window, Timestamp)

TCP Pacote com todos os flags desativados

ICMP Tamanho da mensagem ICMP de Erro X

UDP

FLAGS de controle da fragmentao

No estabelece conexo(Half-Open)

Pacote IP com DF bit habilitado

Identificao do fragmento

Evaso Case Sensitivity Method Matching Session Splicing HTTP Mis-formating Dos Directory Syntax Insero Long URLs Self Reference URL Enconding Multiple Slashes Parameter Hiding Reverse Traversal Varredura de Portas TCP Connect Syn Scan Ack Scan Window Scan Fin Scan UDP Scan Null Scan Xmas TCP Ping TCP Fragmentation Varredura do protocolo IP Fingerpriting Ident Reverso TCP Negao de Servio Smurf UDP Storm Syn Flood Teardrop ICMP Fragmentation X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X

Tabela 4 - Descrio tcnica do cenrio inicial de ataques proposto

34

Pacote UDP de zero bytes

Codificao da requisio

Campo: Tipo de servio

Tamanho da requisio

Pacote com flag PUSH

Pacote com flag ACK

Pacote com flag URG

Pacote com flag SYN

Nmero de seqncia

Off-set de fragmento

Pacote com flag FIN

Linha de Requisio

TCP Initial Window

Estabelece conexo

Mltiplos pacotes

Pacote IP raw

Pacote ICMP

Uma vez que a descrio tcnica, representada na tabela 4, foi finalizada o prximo passo era realizar a simplificao dessa tabela. A etapa de simplificao corresponde a uma viso macro das caractersticas de cada um dos ataques. Para tal, foram identificadas as caractersticas genricas dos ataques. Essas caractersticas esto indicadas nas colunas da tabela 5. Estando a atividade de simplificao concluda, iniciou-se a seleo dos ataques que iro compor o cenrio de avaliao. A seguir sero apresentados os motivos que conduziram seleo dos ataques em destaque na tabela 5. Evaso O ataque Session Splicing o nico entre os ataques de evaso que utiliza mltiplos pacotes. Todos os demais utilizam somente um pacote HTTP. Entre os ataques que apresentam as mesmas caractersticas, Method Mathing foi arbitrariamente selecionado. Insero Os ataques selecionados, Long URLs e URL Enconding, apresentam como caractersticas exclusivas em relao aos demais ataques, respectivamente, uma requisio HTTP com uma grande quantidade de caracteres e a presena de um padro de codificao da requisio. Entre os ataques Self Reference, Multiple Slashes e Reverse Traversal que exploram as mesmas caractersticas foi escolhido arbitrariamente o Self Reference. Varredura de portas Os ataques UDP scan, varredura do protocolo IP e TCP Fragmentation foram selecionados pois geram, respectivamente, pacotes UDP, IP raw e IP fragmentados. Entre os ataques que estabelecem conexo (TCP connect e Ident Reverso TCP) ambos utilizam pacotes TCP, no entanto Ident Reverso TCP foi o escolhido para representar este tipo de tcnica de varredura de portas. O ltimo ataque selecionado Fingerprinting utiliza trs tipos diferentes de pacotes em uma mesma seo de ataque (IP, TCP e ICMP). J Xmas foi o ataque selecionado para representar todos os ataques de varredura de portas que utilizam somente pacotes TCP e que no estabelecem conexes. Negao de servio Os ataques Smurf, UDP Storm, Syn Flood e Teardrop foram selecionados, pois diferem um dos outros quanto aos tipos de pacotes utilizados, ou seja, ICMP, UDP, TCP e IP, respectivamente. J o ataque identificado como ICMP Fragmentation foi incluso nessa seleo, devido ao fato de que entre esses ataques o nico que utiliza pacotes do tipo ICMP fragmentados.

35

HTTP No estabelece conexo(Half-Open)

IP

TCP ICMP UDP

Codificao da requisio X X X X X X X X X X X X

Seleo Evaso HTTP Case Sensitivity X X X X X X

b b

Method Matching Session Splicing HTTP Misformating Dos Directory Syntax Insero HTTP

b b b

Long URLs Self Reference URL Enconding Multiple Slashes Parameter Hiding Reverse Traversal Varredura de Portas TCP Connect Syn Scan Ack Scan Window Scan Fin Scan X X X X X X X X X X X X X X X X X X X X X X X X

X X X X X X

Tamanho da requisio X

Estabelece conexo

Mltiplos pacotes

X X X X X X X X X X X X X X X X

b b b b b b

UDP Scan Null Scan Xmas TCP Ping TCP Fragmentation Varredura do protocolo IP Fingerpriting Ident Reverso TCP Negao de Servio

36

b b b b b

Smurf UDP Storm Syn Flood Teardrop ICMP Fragmentation

X X X X X

X X X X X X X X

X X

Tabela 5 - Seleo do cenrio de avaliao

3.2 Seleo de ferramentas


Essa etapa foi dedicada obteno de ferramentas que permitissem reproduzir o cenrio de avaliao proposto na etapa anterior. Essa atividade pde ser realizada num curto espao de tempo devido facilidade com que atualmente se pode encontrar e utilizar tais ferramentas. A figura abaixo est baseada no relatrio anual do General Account Office (GAO), rgo ligado ao congresso norte-americano, ilustra a relao entre a sofisticao das ferramentas de ataques atuais e o conhecimento tcnico necessrio para utiliz-las [Durst et al. 1999].
Alto Sofisticao das ferramentas Negao de servio Pacotes Forjados Sniffers Varredura de portas Backdoors Explorao de falhas Programas para quebra de senhas Baixo 1980 Cdigos auto-replicados 1985 1990 1995 Nvel de conhecimento

Figura 7 - Evoluo das ferramentas de ataque

Como se pode observar, a relao entre esses dois aspectos inversamente proporcional, ou seja, quanto mais sofisticadas as ferramentas de ataques, menor o conhecimento necessrio para oper-las e, dessa forma, promover ataques. Embora diversas tcnicas intrusivas sejam conhecidas h muitos anos, somente a partir da metade da dcada de noventa as ferramentas que implementam tais tcnicas tornaram-se amplamente disponveis por meio da Internet [Durst et al. 1999]. Ao longo dessa segunda etapa as principais fontes utilizadas para busca de ferramentas e aprendizado sobre as mesmas foram: (a) sites que disponibilizam informaes sobre segurana de sistemas operacionais [Linuxsecurity, 2002], (b) artigos

37

publicados em [Cert, 2002], (c) portais de segurana da informao [Securityfocus, 2002] e finalmente (d) os sites dos desenvolvedores de algumas dessas ferramentas [Nmap, 2002] e [Whisker, 2000].

3.3 Ferramentas de ataque


A tabela 6 exibe o nome dos ataques a serem reproduzidos (conforme determinado na seo 3.2.2), as ferramentas utilizadas para tal e os pr-requisitos bsicos para instalao e configurao dessas ferramentas.
Ataques Evaso Method Mathing Session Splicing Insero Long URLs Self Reference URL Enconding Varredura de portas TCP Fragmentation UDP Scan TCP Connect Varredura do protocolo IP Fingerpriting Ident Reverso TCP Negao de servios Smurf UDP Storm SYN Flood Teardrop ICMP Fragmentation Ferramentas Whisker 1.4 Pr-requisitos GNU/Linux, Perl 5.0 e Libwhisker

Whisker 1.4

GNU/Linux, Perl 5.0 e Libwhisker

Nmap 2.54

GNU/Linux

Smurf 4.0 Udpstorm 1.0 Synk4 Teardrop 2.0 Jolt2

GNU/Linux e gcc 2.9.6 GNU/Linux e gcc 2.9.6 GNU/Linux e gcc 2.9.6 GNU/Linux e gcc 2.9.6 GNU/Linux e gcc 2.9.6

Tabela 6 - Ferramentas para reproduzir os ataques selecionados

A seguir descreve-se cada uma das ferramentas utilizadas para promover os ataques propostos na etapa anterior. Whisker 1.4 um conhecido scanner de vulnerabilidades, cujo objetivo procurar por falhas em servidores web, atravs da execuo de diversos scripts desenvolvidos em perl. Esta ferramenta implementa tcnicas, anti-IDSs, que dificultam a deteco dos ataques por parte dos sistemas de deteco de intruso. Essas tcnicas so denominadas, respectivamente, evaso e insero e foram descritas na seo 3.2. Atravs dessa ferramenta possvel obter, entre outras informaes, o tipo de servidor web utilizado, a verso do mesmo e as vulnerabilidades s quais esse servidor est exposto. Alm disso, a ferramenta possui uma arquitetura modular que permite a instalao de novos plugins, o que viabiliza a deteco de novas vulnerabilidades assim que as mesmas so descobertas. Nmap 2.54 uma ferramenta de varredura de portas, desenvolvida para diversas plataformas Unix, capaz de realizar (a) sondagem convencional de porta, para descobrir quais portas esto abertas em uma estao, e (b) sondagem furtiva, tambm conhecida como stealth

38

scan, que ao mesmo tempo em que procura identificar portas abertas tenta evitar a deteco por parte dos IDSs. Smurf 4.0 A ferramenta Smurf permite realizar o ataque de negao de servio que possui o mesmo nome da aplicao. Atravs dessa ferramenta possvel definir os endereos IP de origem (IP forjado), de destino e o endereo de broadcast da rede. UDPstorm uma ferramenta atravs da qual o ataque UDP Storm rapidamente realizado. Para tal, o usurio dessa ferramenta deve informar os endereos IP de origem (IP forjado) e de destino. Dessa forma ser gerada, em um pequeno intervalo de tempo, uma grande quantidade de pacotes UDP entre as duas estaes. Teardrop 2.0 Esta uma pequena aplicao que possibilita a realizao do ataque Teardrop. Nessa verso a ferramenta suporta endereos IP forjados para definir a estao de origem dos pacotes, alm do endereo IP da estao destino. Synk4 A ferramenta em questo reproduz o ataque Syn Flood. O usurio define, a exemplo das ferramentas anteriores, os endereos IP de origem (IP forjado) e de destino, alm do intervalo de portas para as quais os pacotes devem ser enviados. Jolt2 Essa ferramenta reproduz o ataque de negao de servio ICMP fragmentation. Igualmente, como nas demais ferramentas, so passados como parmetros os endereos IP de origem (IP forjado) e de destino, alm da quantidade de pacotes ICMP a serem gerados.

3.4 Gerao do trfego do cenrio de avaliao


O cenrio de avaliao formado pelos ataques selecionados na seo 3.2.2 e pelo trfego de fundo necessrio para a anlise de escalabilidade. A seguir sero descritas as formas propostas nessa metodologia para armazenar o trfego de ataque e gerar o trfego de fundo. 3.4.1 Coleta do trfego de ataque Os testes previstos na etapa de anlises dos IDSs so realizados a partir da reproduo do trfego de ataque, fazendo com que no seja necessria a utilizao de cada uma das ferramentas de ataque cada vez que os testes tiverem que ser reproduzidos. A primeira atividade prevista nessa etapa corresponde montagem do ambiente de rede, conforme a figura 7. Esse ambiente composto por apenas trs estaes, todas com sistema operacional Linux, distribuio RedHat 7.3. Na estao Ataque esto instaladas todas as ferramentas de ataque selecionadas na etapa de seleo de ferramentas. J na estao Vtima esto instalados todos os servios a serem atacados, por exemplo, o servidor web Apache para ataques de evaso e insero. A estao sniffer possui como atribuio coletar o trfego gerado pelas ferramentas de ataque. Para tal, o sniffer tcpdump [Tcpdump, 2002 ] precisa ser instalado nessa estao.

39

Hub

Sniffer 10.10.10.10

Ataque 10.10.10.2

Vtima 10.10.10.8 Figura 8 - Ambiente de rede para gerao do trfego dos cenrios de teste

O tcpdump uma ferramenta Unix utilizada para coletar dados de uma interface de rede. Todo o trfego coletado armazenado para, posteriormente, ser reproduzido. A fim de realizar essa coleta de dados a linha de comando a seguir deve ser utilizada.
$:tcpdump w nomearquivo

O parmetro w indica que os registros esto gravados em formato binrio e nomearquivo refere-se ao nome do arquivo gravado. Para ler esse arquivo necessrio executar a seguinte linha de comando:
$:tcpdump r nomearquivo 09:30:45:920000 10.10.10.2.1173 > 10.10.10.8.21: S 72797701: 72797701(0) win 512

A sada gerada pelo tcpdump segue o seguinte formato: dois dgitos para hora, dois dgitos para minuto, dois dgitos para segundos e seis dgitos para a parte fracionria de um segundo. Em seguida so exibidos os endereos IP e as portas de origem e destino, separados pelo caracter > que indica o sentido do fluxo de dados. O flag TCP indicado pela letra S (SYN) representa uma requisio de conexo e os nmeros (72797701:72797701(0)) representam, respectivamente, o nmero de seqncia TCP inicial; e o nmero de seqncia TCP final, o valor zero entre parnteses corresponde ao nmero de bytes enviados para uma requisio de estabelecimento de conexo. O ltimo dado fornecido (win 512) o tamanho do buffer TCP da estao destino. Uma vez que todas as estaes foram configuradas iniciou-se as atividades de coleta do trfego de ataque. O fluxograma abaixo, ilustrado na figura 8, representa a seqncia em que essas atividades foram executadas para cada um dos ataques selecionados.

40

Incio Iniciar o tcpdump

Executar ataque

Parar o tcpdump

Armazenar trfego coletado

No

O cenrio esta completo ? Sim Fim

Figura 9 - Seqncia de atividades a serem realizadas para coletar o trfego de ataque

Antes de reproduzir um determinado ataque o tcpdump deve ser iniciado, conforme descrito anteriormente; s ento o ataque executado. Assim que o ataque estiver concludo o tcpdump parado e o arquivo gerado por esse sniffer armazenado para que posteriormente possa ser reproduzido. Essa seqncia de atividades realizada at que o ltimo ataque tenha sido reproduzido. 3.4.2 Gerao do trfego de fundo Conforme j mencionado, o trfego de fundo necessrio para realizar a anlise de escalabilidade dos IDSs. Inicialmente, foi considerada a hiptese de compor o trfego de fundo por pacotes UDP de tamanhos (payload) variados (256, 512 e 1024 bytes). No entanto, ao realizar os testes de escalabilidade, verificou-se que a variao no tamanho dos pacotes praticamente no influenciou nos resultados obtidos pelos IDSs. Sendo assim, optou-se por utilizar um trfego de fundo composto somente por pacotes UDP de 256 bytes. Esse trfego reproduzido em diferentes taxas de transmisso. A primeira dessas taxas corresponde a 4 (Mbps), taxa na qual os IDS geralmente ainda no descartam pacotes. Sugere-se que as demais taxas sejam reproduzidas em uma seqncia linear, por exemplo: 6, 8, 10 e 12 Mbps. Esta metodologia no determina uma taxa limite para reproduo desse trfego. No entanto, o gerador de pacotes UDP utilizado nos experimentos tem capacidade para reproduzir at 100 Mbps. A ferramenta utilizada para gerao do trfego de fundo denominada gerador_udp e foi desenvolvida pelo Laboratrio de Modelagem/Anlise e Desenvolvimento de Sistemas de Computao (LAND) da Universidade Federal do Rio de Janeiro (UFRJ). Atravs dessa ferramenta possvel determinar (a) o endereo IP da estao destino, (b) o tamanho do pacote a ser enviado, (c) a taxa de transmisso em Kbps e (d) o tempo de gerao do trfego. Caso este tempo no seja determinado o trfego gerado at que seja cancelada a execuo do comando. A seguir, exibida a 41

linha de comando que permite reproduzir pacotes UDP de 256 bytes a uma taxa de 4 Mbps.
$:./gerador_udp 10.10.10.8 256 8000 Durao da sesso: 42 segundos Total de PDUs transmitidas: 90560 Erros de escrita: 0 Tamanho das PDUs: 256 bytes Intervalo entre geraes: 0,010240 segundos Banda terica: 8000 Kbps Banda efetivamente gerada: 4098 Kbps

A sada gerada por essa aplicao informa que o trfego de fundo foi gerado por 42 segundos. Durante esse intervalo de tempo foram transmitidos a cada 0,010240 segundos exatamente 90560 pacotes UDP de 256 bytes a uma taxa efetiva de 4098 Kbps o que corresponde a aproximadamente 4Mbps.

3.5 Montagem do ambiente de avaliao


ambiente foi composto pelos IDSs a serem avaliados, pelas estaes-alvo (vtimas) que sofreram os ataques, alm de uma estao para reproduzir o trfego de ataque (Trf_ataque) e outra para reproduzir o trfego de fundo (Trf_fundo) ao longo dos testes de escalabilidade.
Hub 0000Esse

Trf_ataque 10.10.10.10

Vtima 10.10.10.8

IDS1 10.10.10.6

IDS2 10.10.10.4

Trf_fundo 10.10.10.2

Figura 10 - Ambiente de rede para o cenrio de avaliao

A figura acima representa o ambiente utilizado nessa avaliao, cujos resultados sero apresentado no capitulo 4. Para a avaliao proposta nessa monografia esse ambiente adequado. No entanto, a quantidade de estaes vtimas e o sistema operacional instalado nessas estaes podem variar conforme os ataques selecionados para compor o cenrio de avaliao. Por exemplo, caso o cenrio de avaliao seja constitudo por ataques a estaes Solaris e Windows 2000 Server, o ambiente de rede representado na figura acima dever contar com mais duas mquinas vtimas, nas quais esses sistemas devem estar instalados e devidamente configurados. Alm disso, a quantidade de IDSs avaliados tambm pode variar, por conseguinte o nmero de estaes para esses sistemas dever ser maior do que ilustrado na figura 9. As estaes responsveis pela gerao dos trfegos de ataque e de fundo devem conter, respectivamente, a ferramenta tcpreplay [Tcpreplay, 2002] e o gerador de pacotes UDP. O tcpreplay uma ferramenta que possibilita a reproduo dos pacotes capturados, via tcpdump. A linha de comando abaixo demonstra como proceder para reproduzir um determinado trfego na mesma taxa em que foi capturado.

42

$:tcpreplay i interface_de_rede arquivo_tcpdump

3.6 Analises dos IDSs


A metodologia aqui proposta avalia as seguintes caractersticas dos IDSs: capacidade de deteco, escalabilidade e taxa de falsos positivos gerados por esses sistemas. Capacidade de deteco o teste a partir do qual possvel identificar as potencialidades de deteco dos IDSs, ou seja, quais os tipos de ataques que esse sistema esta apto a detectar. O teste de escalabilidade permite identificar a partir de qual taxa os IDSs comeam a descartar pacotes. J a taxa de falsos positivos identifica a tendncia desses sistemas em gerar alarmes falsos, isto , confundir um trfego considerado normal com um ataque ou, ainda, quando submetido a um ataque gerar alarmes referentes a outros ataques [Durst, et al. 1999]. 3.6.1 Capacidade de deteco O fluxograma apresentado na figura 10 ilustra a seqncia de atividades que deve ser realizada para analisar a capacidade de deteco dos IDSs avaliados. A primeira atividade a ser realizada certificar-se que os arquivos de log estejam vazios. To logo essa verificao tenha sido concluda, o servio de log dos IDSs deve ser iniciado. Em seguida, o primeiro ataque deve ser reproduzido a partir da estao Trf_ataque via tcpreplay conforme j exemplificado.
Incio Iniciar o servio de log

Reproduzir ataque

Parar o servio de log

Gravar o arquivo de log

No

O cenrio esta completo ?

Sim Analisar arquivos de log

Fim

Figura 11 - Seqncia de atividades a serem realizadas para analisar capacidade de deteco dos IDSs

Assim que o ataque estiver finalizado o servio de log de cada um dos IDSs deve ser parado e os arquivos gerados, armazenados para posterior anlise. Caso o cenrio de 43

avaliao no tenha sido completamente reproduzido, essa seqncia de atividades (figura 10) deve ser repetida at que todos os ataques tenham sido reproduzidos. O passo seguinte corresponde anlise dos arquivos de log dos IDSs. A tabela 7 representa a forma como os resultados obtidos nesse teste devem ser expressos. Esta tabela, para fins de exemplo, est considerando resultados obtidos para dois IDSs fictcios (IDS1 e IDS2) e um cenrio de avaliao apenas com ataques de negao de servio.
Ataques Smurf UDP Storm Syn Flood Teardrop ICMP Fragmentation IDS1 X X X X IDS2 X X -

Tabela 7 - Exemplo de resultados da anlise de capacidade de deteco

A capacidade de deteco representada nessa metodologia atravs de dois tipos de indicadores, sendo que - significa que o ataque no foi detectado e X, que o ataque foi detectado. 3.6.2 Escalabilidade Para que os resultados da anlise de escalabilidade sejam os mais confiveis possveis, fundamental que sejam reproduzidos apenas os ataques que cada um dos IDSs detectou na anlise anterior. A figura 11 representa a relao entre o trfego de ataque e o trfego de fundo que reproduzido nessa anlise.
Ataque

5s

2s

2s Trfego de fundo

2s

2s

Figura 12 - Seqncia de reproduo dos trfegos utilizados na anlise de escalabilidade

Cada um dos tipos de ataques considerado na avaliao (negao de servios, evaso, insero e varredura de portas) foi executado separadamente um do outro, mas sempre em paralelo ao trfego de fundo. Por exemplo, considerando que a figura acima seja referente a anlise de escalabilidade de um IDS frente aos ataques de negao de servio, tem-se cinco ataques (Smurf, UDP Storm, Syn Flood, Teardrop e ICMP Fragmentation), ambos representados na figura 11 pelos crculos, e sendo reproduzidos em paralelo ao trfego de fundo. Esses ataques so executados uns aps os outros separados em intervalos de dois segundos, o que facilita a leitura dos logs, posteriormente, pois os ataques ocorrem em instantes distintos. A fim de que o trfego de fundo j esteja sendo gerado no momento em que o primeiro ataque for realizado, previsto um perodo de cinco segundos antes do incio da execuo dos ataques. A gerao do trfego de fundo finalizada somente aps todos os ataques terem sido reproduzidos. 44

O shell script abaixo ilustra a seqncia em que os ataques de negao de servio, do exemplo em questo, devem ser reproduzidos.
# /bin/bash # Identificao: script_dos # Este script reproduz os ataques de negao de servio # selecionados. A sintaxe do comando tcpreplay utilizado nesse # script informa a interface de rede utilizada para reproduzir o # trfego e o nome do arquivo (tcpdump) que representa o trfego de # ataque a ser gerado. sleep 5 tcpreplay i eth0 smurf sleep 2 tcpreplay i eth0 udpstorm sleep 2 tcpreplay i eth0 synflood sleep 2 tcpreplay i eth0 teardrop sleep 2 tcpreplay i eth0 icmpfrag

Para cada tipo de ataque deve haver um shell script que reproduza um a um dos ataques selecionados para este grupo de ataques. Ao trmino da reproduo de um determinado tipo de ataque uma determinada taxa, o sistema de log deve ser parado e deve-se registrar o nmero de alertas gerado pelo IDS. A tabela 8 abaixo ilustra a forma como esses dados foram registrados. Inicialmente registrou-se o nmero de alertas gerados para cada ataque, quando submetidos a uma determinada taxa de transmisso do trfego de fundo. Em seguida, foram calculados os totais de alarmes gerados a cada taxa e o percentual de ataques detectados.
Identificao: IDS1 Tipo de ataque: negao de servio Taxas (Mbps) 4 6 8 Smurf 100 80 40 UDP Storm 150 75 35 Syn Flood 125 65 32 Teardrop 115 62 31 ICMP 1500 750 250 Total 1990 1032 388 Percentual 100% 51,6% 19,5%

Tabela 8 - Exemplo de resultados da anlise de escalabilidade

A partir dos dados exibidos na tabela 8 observou-se que a 4Mbps este IDS no perdeu alarmes. J nas taxas de transmisso seguintes o percentual de ataques detectados foi reduzindo bruscamente. Uma vez que todos os tipos de ataques tenham sido reproduzidos em todas as taxas estipuladas, pode-se gerar os grficos referentes aos resultados obtidos por esses IDSs para cada tipo de ataque, conforme o grfico ilustrado a seguir.

45

2000 1800 Nmero de alertas gerados 1600 1400 1200 1000 800 600 400 200 0 4

100%

51,60%

19,50%

6 Taxas de transmisso (Mbps)

Figura 13 - Exemplo dos resultados da anlise de escalabilidade em relao aos ataques de negao de servio

Em seguida, os resultados alcanados pelos IDSs avaliados foram dispostos a fim de comparar os valores obtidos. A tabela 9 representa esta comparao.
Taxas (Mbps) 4 6 8 IDS1 100% 51,60% 19,50% IDS2 100% 31,60% 9,50%

Tabela 9 - Exemplo dos resultados da anlise de escalabilidade em relao aos ataques de negao de servio

Os dados da tabela acima podem ser representados atravs figura abaixo.


100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% 4 6 Taxas de transmisso (Mbps) 8

Percentual de alertas gerados

IDS1 IDS2

Figura 14 - Exemplo de comparao dos resultados da anlise de escalabilidade em relao aos ataques de negao de servios

46

3.6.3

Taxa de falsos positivos

Falsos positivos so todos os alarmes que indicam que um determinado ataque esta em execuo, quando de fato o que esta ocorrendo outro tipo de atividade. Por exemplo, um usurio do suporte executa um comando ping para um servidor, o IDS registra este evento como um ataque. Outro exemplo de falsos positivos quando a rede est sofrendo um determinado tipo de ataque (UDPstorm), e o IDS gera alarmes tanto para este ataque, quanto para outros tipos de ataques (ICMP fragmentation) que no esto ocorrendo e no possuem relao com o evento em questo [McHugh, 2000]. Ao longo dos estudos desenvolvidos durante essa monografia, verificou-se que para avaliar a incidncia de falsos positivos de forma a seguir a proposta dessa metodologia, de ser uma abordagem prtica de fcil execuo e na qual o IDS visto como uma caixa preta, as alternativas mais prudentes so: (a) realizar essa anlise em relao ao trfego de fundo coletado junto a rede das instituies ou (b) em funo do trfego de ataques utilizado nos experimentos anteriores. A anlise de falsos positivos, tendo como parmetro o trfego de fundo coletado junto a rede de uma instituio conduzida da seguinte forma, aps coletar durante um determino perodo (dias ou semanas) o trfego dirio de um segmento de rede de uma instituio, esse trfego reproduzido em paralelo ao conjunto de ataques detectados na anlise da capacidade de deteco. Dessa maneira, aps analisar os logs possvel determinar quais alertas correspondem a falsos positivos e, ainda, quais os alertas de fato representam os ataques gerados. Essa forma de anlise apresenta como limitao, a impossibilidade de garantir que no trfego coletado no estejam inseridos ataques, que por ventura tenham ocorrido durante o perodo de coleta desse trfego. Caso isto ocorra a anlise de falsos positivos est comprometida, uma vez que o nmero de ataques inseridos no trfego de fundo desconhecido. J a anlise de falsos positivos em relao a um trfego de ataque conhecido uma abordagem que permite, a partir da anlise dos logs gerados nos testes de capacidade de deteco, identificar a quantidade de falsos positivos resultante. Por exemplo, atravs da ferramenta jolt2, conforme descrito na seo 3.3.1, possvel determinar o nmero de pacotes ICMP que iro compor o ataque conhecido por ICMP fragmentation. Caso o log do IDS avaliado registre um nmero maior de alarmes do que o nmero de pacotes gerados, ou ainda, apresente qualquer outro tipo de registro referente a outros ataques, estes sero os falsos positivos. A forma de anlise utilizada nesta metodologia obtm a taxa de falsos positivos em relao ao trfego de ataque utilizado nas anlises de capacidade de deteco e escalabilidade. Para tal, os arquivos de log resultantes dos testes de capacidade de deteco foram novamente consultados. No entanto, os registros contabilizados nessa consulta foram todos aqueles que no faziam referncia a nenhum dos ataques executados. A tabela abaixo ilustra a forma como esses dados foram registrados.
Identificao: IDS1 Tipo de ataque: negao de servio Alertas Positivos Falsos positivos Smurf 100 25 UDP Storm 150 0 Syn Flood 125 100 Teardrop ICMP Total 115 1500 1990 96 750 975 Total de alarmes: 2965 Taxa de falsos positivos: 32,80%

Tabela 10 - Exemplo dos resultados da anlise das taxas de falsos positivos em relao aos ataques de negao de servio

47

Uma vez conhecidas, as quantidades de alertas reais e de falsos positivos obtm-se a taxa de falsos positivos em relao ao trfego de ataque em questo (negao de servio). Este procedimento repetido para cada um dos tipos de ataques considerados na avaliao. Sendo assim, as taxas de falsos positivos obtidos para cada um dos tipos de ataques so apresentadas conforme o exemplo a seguir.
Alertas IDS1 IDS2 Evaso 15,20% 10,70% Insero 17,68% 15,00% Varredura de portas 27,70% 21,00% Negao de servio 32,80% 31%

Tabela 11 - Exemplo dos resultados da anlise das taxas de falsos positivos obtidos por dois IDSs

Os dados obtidos nessa anlise podem ser representados atravs de um grfico de barras conforme o exemplo da figura abaixo.
35,00% Taxa de falsos positivos 30,00% 25,00% 20,00% 15,00% 10,00% 5,00% 0,00% Evaso Insero Varredura de portas Negao de servio IDS1 IDS2

Tipos de ataques

Figura 15 - Exemplo de comparao entre as taxas de falsos positivos geradas pelos IDSs avaliados

48

4 Estudo de caso
Nesse captulo sero apresentados os resultados alcanados pelos dois IDSs submetidos metodologia descrita no capitulo anterior. Os sistemas de deteco de intruso utilizados nesse estudo de caso foram os seguintes: o Snort 1.83 e o Firestorm 0.4.6, ambos disponveis sobre licena GNU GPL verso 2. O Snort um dos sistemas de deteco de intruso mais utilizados no momento, esta ferramenta combina simplicidade e eficincia. De livre distribuio, desenvolvido por Marty Roesch, esse IDS coleta os dados junto a rede e os compara com uma base de assinaturas. A base de assinatura do Snort atualizada semanalmente. Atualmente, existem verses desse IDS para Linux e Windows [Campello, 2001]. Semelhante a ferramenta anterior, o Firestorm um sistema de deteco de intruso baseado em rede, cuja anlise dos dados realizada a partir de uma base de assinaturas. Este IDS distribudo livremente e foi desenvolvido exclusivamente para ambiente Linux [Tedesco, 2002]. As duas ferramentas escolhidas apresentam, segundo os seus desenvolvedores, capacidade para detectar todos os tipos de ataques conhecidos at o presente momento. Alm disso, tanto o responsvel pela criao do Snort (Marty Roesch) quanto do Firestorm (Gianne Tedesco) afirmam que os seus IDSs so extremamente velozes e que apresentam uma baixa taxa de falsos positivos. A seguir os resultados obtidos pelo Snort e pelo Firestorm sero apresentados. A apresentao desses dados ser atravs de tabelas e grficos.

4.1 Capacidade de deteco


A anlise da capacidade de deteco foi realizada em relao seleo de ataques apresentada na seo 3.2.2. Essa anlise foi realizada simultaneamente com os dois IDSs escolhidos. Os resultados obtidos tanto pelo Snort quanto pelo Firestorm so apresentados na tabela abaixo.
Ataques Evaso Method Matching Session Splicing Insero Long URLs Self Reference URL Enconding Varredura de Portas UDP Scan Xmas TCP Fragmentation Snort X X X X X X X X Firestorm X X X X X X

49

Varredura do protocolo IP Fingerpriting Ident Reverso TCP Negao de servio Smurf UDP Storm Syn Flood Teardrop ICMP Fragmentation

X X X X X X X X

X X X X X X X

Tabela 12 - Resultados obtidos na anlise da capacidade de deteco

Conforme mostrado na tabela 12 o Snort detectou todos os ataques aos quais foi submetido. J o Firestorm no detectou um ataque de insero (URL Enconding) e dois ataques de varredura de portas (UDP Scan e sondagem do protocolo IP). Quando submetido ao ataque de insero, o Firestorm, ao invs de identificar esse ataque, gerou diversos alertas de varredura de portas, tais como Portscan Detected. Em relao ao ataque UDP Scan foram gerados alertas do tipo UDP echo+chargen que correspondem ao ataque de negao de servio UDPstorm. Para a varredura do protocolo IP no foram gerados alertas. Os resultados obtidos nessa anlise demonstram que o Snort uma ferramenta de deteco de intruso capaz de detectar ataques de insero, evaso, varredura de portas e negao de servio de forma bastante eficiente. Em relao ao Firestorm constatou-se que no h um mecanismo eficiente de decodificao de requisies HTTP. O desenvolvimento de melhorias em relao a este mecanismo consta como um dos objetivos para as futuras verses deste IDS [Tedesco, 2002].

4.2 Escalabilidade
As anlises de escalabilidade foram realizadas mediante uma limitao no que tange as taxas de transmisso em que o trfego de fundo foi reproduzido. Esta limitao consistiu na utilizao de um hub de 10 Mbps, o que, por conseguinte no possibilitou reproduzir o trfego de fundo a velocidades mais elevadas. A reproduo de taxas de transmisso superior possibilitaria uma anlise mais ampla. Os testes de escalabilidade foram realizados individualmente para cada um dos IDSs avaliados. Isto ocorreu em funo dos diferentes resultados apresentados na anlise da capacidade de deteco. Conforme descrito anteriormente atravs dos experimentos realizados constatou-se que a uma taxa de transmisso de 4 Mbps, os IDSs avaliados no apresentam descartes de pacotes. Sendo assim os nmeros de alertas gerados nessa taxa correspondem ao nmero de pacotes efetivamente gerados. A seguir sero apresentados os resultados obtidos pelos sistemas de deteco de intruso avaliados. 4.2.1 Anlise de escalabilidade do Snort A tabela 13 apresenta o nmero de alertas gerados para cada um dos ataques de insero, detectados pelo Snort na anlise anterior, ao longo das trs taxas de transmisso nas quais o trfego de fundo foi reproduzido.

50

Taxa (Mbps) 4 6 8 Tabela 13 -

Long URL 642 638 595

Self Reference 96 92 77

URL Encoding 101 99 83

Total de alertas 839 829 755

Alertas 100% 98,81% 89,99%

Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de insero

Conforme ilustrado na figura 16, a diferena entre o nmero total de alertas gerados nas duas primeiras taxas de 1,19%. J a 8 Mbps a quantidade de alertas gerados reduz aproximadamente 10% em relao primeira taxa de transmisso(4 Mbps).
860 840 Nmero de alertas gerados 820 800 780 760 740 720 700 4 6 Taxas de transmisso (Mbps) 8 89,99%

100% 98,81%

Figura 16 - Anlise de escalabilidade do Snort em relao aos ataques de insero

Em relao aos ataques de evaso observou-se, conforme os dados apresentados na tabela 14, que a 6 Mbps o IDS em comparao a primeira taxa gerou 2,74% a menos de alertas. Entretanto, uma vez que o trfego de fundo foi reproduzido na taxa mxima prevista nesse estudo de caso, o nmero de alertas em relao a taxa de 4 Mbps foi reduzido em aproximadamente 14%.
Taxa (Mbps) 4 6 8 Method Matching 111 109 98 Session Splice 76 74 63 Total de alertas 187 183 161 Alertas 100% 97,86% 86,10%

Tabela 14 - Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de evaso

A figura 6, a seguir, ilustra os resultados supracitados.

51

190 185 Nmero de alertas gerados 180 175 170 165 160 155 4

100% 97,86%

86,10%

6 Taxas de transmisso (Mbps)

Figura 17 - Anlise de escalabilidade do Snort em relao aos ataques de evaso

Quanto aos ataques de varredura de portas, cujos percentuais de alertas gerados a cada taxa de transmisso constam na tabela 15, constatou-se que o Snort gerou praticamente o mesmo nmero de alertas nas duas primeiras taxas. Sendo que somente a 8 Mbps a diferena entre o nmero de alertas gerados, em relao a primeira taxa, pode ser considerada significativa como mostra a figura 18.
Taxa (Mbps) Fragmentation Fingerprinting Ident Reverso Protocolo IP Xmas UDP Scan Total de alertas Alertas 4 6 8 1115 1109 1084 15 13 9 9 9 9 251 249 237 942 936 877 35 35 29 2367 2351 2245 100% 99,32% 94,85%

Tabela 15 - Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de varredura de portas

2380 2360 Nmero de alertas gerados 2340 2320 2300 2280 2260 2240 2220 2200 2180 4

100% 99,32%

94,85%

6 Taxas de transmisso (Mbps)

Figura 18 - Anlise de escalabilidade do Snort em relao aos ataques de varredura de portas

52

Na anlise de escalabilidade em relao aos ataques de negao de servios, novamente o Snort apresentou resultados bastante prximos nas duas primeiras taxas de transmisso, como pode ser observado na tabela 16.
Taxa (Mbps) 4 6 8 Smurf 2000 1996 1870 Teardrop 110 108 95 UDP ICMP Syn Flood 215 215 212 2010 2008 1909 1000 999 951 Total de alertas 5335 5326 5037 Alertas 100% 99,83% 94,41%

Tabela 16 - Resultados obtidos na anlise de escalabilidade do Snort em relao aos ataques de negao de servios

Os dados da tabela acima esto representados na figura 19. A partir desse grfico percebe-se que h uma queda de aproximadamente 5,5% na quantidade de alertas gerados entre a primeira e a ltima taxa de transmisso.
5400 5350 5300 5250 5200 5150 5100 5050 5000 4950 4900 4850 4 100% 99,83%

Nmero de alertas gerados

94,41%

6 Taxas de transmisso (Mbps)

Figura 19 - Anlise de escalabilidade do Snort em relao aos ataques de negao de servio

Na tabela 17 constam as quantidades de alertas geradas para cada um dos ataques de insero, detectados pelo Firestorm na anlise da capacidade de deteco ao longo das trs taxas de transmisso nas quais o trfego de fundo foi reproduzido.
Taxa (Mbps) 4 6 8 Long URL 642 630 560 Self Reference 96 90 77 Total de alertas 738 720 635 Alertas 100% 97,56% 86,04%

Tabela 17 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de insero

53

Conforme ilustrado na figura 20, a diferena entre o nmero total de alertas gerados nas duas primeiras taxas de 2,44%. J a 8 Mbps a quantidade de alertas gerados reduz aproximadamente 14% em relao primeira taxa de transmisso(4 Mbps).
760 740 Nmero de alertas gerados 720 700 680 660 640 620 600 580 4 6 Taxas de transmisso (Mbps) 8 86,04% 100% 97,56%

Figura 20 - Anlise de escalabilidade do Firestorm em relao aos ataques de insero

Referente aos ataques de evaso cujos percentuais de alertas gerados a cada taxa de transmisso constam na tabela 18, verificou-se que o Firestorm apresentou uma diferena de aproximadamente 5% em relao quantidade de alertas gerados nas duas primeiras taxas. Quando submetido a um trfego de fundo reproduzido a uma taxa de transmisso de 8 Mbps, a diferena entre o nmero de alertas gerados em relao primeira taxa foi de praticamente 16,6%. A figura 21, abaixo, representa os resultados obtidos nessa anlise.
Taxa (Mbps) 4 6 8 Method Matching 111 105 91 Session Splice Total de alertas 76 73 65 187 178 156 Alertas 100% 95,19% 83,42%

Tabela 18 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de insero

54

190 185 Nmero de alertas gerados 180 175 170 165 160 155 150 145 4

100% 95,19%

83,42%

6 Taxas de transmisso (Mbps)

Figura 21 - Anlise de escalabilidade do Firestorm em relao aos ataques de evaso

Em relao aos ataques de varredura de portas observou-se, conforme os dados apresentados na tabela 19, que nas duas primeiras taxas nas quais o trfego de fundo foi reproduzido o percentual de alertas gerados praticamente o mesmo. Entretanto, a uma taxa de 8 Mbps o percentual de alertas gerados foi reduzido a aproximadamente 10% em relao s duas primeiras taxas. A figura 22 ilustra os resultados obtidos na anlise.
Taxa (Mbps) 4 6 8 TCP Fragmentation 1115 1113 998 Fingerprinting 15 14 10 Ident Reverso 9 9 8 Xmas Total de alertas 942 936 867 2081 2072 1883 Alertas 100% 99,57% 90,49%

Tabela 19 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de varredura de portas

2150 Nmero de alertas gerados 2100 2050 2000 1950 1900 1850 1800 4 6 Taxas de transmisso (Mbps) 8 90,49% 100% 99,57%

Figura 22 - Anlise de escalabilidade do Firestormt em relao aos ataques de varredura de portas

55

Na anlise de escalabilidade em relao aos ataques de negao de servio, novamente os percentuais de alertas gerados nas duas primeiras taxas foram praticamente iguais. J o que se constatou em relao ao trfego de fundo reproduzido a 8 Mbps uma queda de aproximadamente 8% no percentual de alertas gerados. A figura 23 representa estes resultados.
Taxa (Mbps) 4 6 8 Smurf 2000 1991 1817 Teardrop UDP ICMP Syn Flood Total de alertas 110 101 91 215 212 205 2010 1998 1867 1000 999 941 5335 5301 4921 Alertas 100% 99,36% 92,24%

Tabela 20 - Resultados obtidos na anlise de escalabilidade do Firestorm em relao aos ataques de negao de servios

5400 5300 Nmero de alertas gerados 5200 5100 5000 4900 4800 4700 4

100% 99,36%

92,24%

6 Taxas de transmisso (Mbps)

Figura 23 - Anlise de escalabilidade do Firestormt em relao aos ataques de negao de servio

4.2.2

Comparao dos resultados da anlise de escalabilidade

A tabela 21 rene os percentuais de alertas gerados pelos IDSs avaliados, em relao aos ataques de evaso a cada taxa de transmisso estipulada.
Taxa(Mbps) 4 6 8 Snort 100% 98,81% 89,99% Firestorm 100% 97,56% 86,04%

Tabela 21 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de evaso

56

Conforme os dados representados na figura 24, nota-se que o Snort apresentou uma pequena superioridade em relao ao Firestorm quanto anlise de escalabilidade frente aos ataques de evaso. importante ressaltar que, embora os percentuais apresentados sejam bastante prximos, o Firestorm no detectou um dos ataques de evaso (URL Encoding).
100% Percentual de alertas gerados 95% 90% 85% 80% 75% 4 6 Taxas de transmisso (Mbps) 8 Snort Firestorm

Figura 24 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de evaso

A anlise de escalabilidade realizada em relao aos ataques de insero apresentou resultados favorveis ao Snort, embora a diferena entre os percentuais de alarmes gerados entre os dois IDSs, novamente, tenha sido muito pequena.
Taxa(Mbps) 4 6 8 Snort 100% 97,86% 86,10% Firestorm 100% 95,19% 83,42%

Tabela 22 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de insero

O grfico ilustrado na figura 25, abaixo, representa os resultados obtidos nessa anlise pelos dois IDSs avaliados.

57

100% Percentual de alarmes gerados 95% 90% 85% 80% 75% 4 6 Taxas de transmisso (Mbps) 8

Snort Firestorm

Figura 25 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de insero

Na anlise de escalabilidade que considera os ataques de varredura de portas, novamente registrou-se muito equilbrio entre os resultados obtidos. No entanto, conforme j mencionado na seo anterior, o Firestorm na anlise da capacidade de deteco no detectou dois ataques de varredura de portas.
Taxa(Mbps) 4 6 8 Snort 100% 99,32% 94,85% Firestorm 100% 99,57% 90,49%

Tabela 23 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de varredura de portas

Os resultados obtidos nessa anlise foram representados na figura 26 apresentada a seguir.

58

100% Percentual de alertas gerados 98% 96% 94% 92% 90% 88% 86% 84% 4 6 Taxas de transmisso (Mbps) 8

Snort Firestorm

Figura 26 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de varredura de portas

Os teste de escalabilidade em relao aos ataques de negao de servio confirmaram o equilbrio existente ao longo dessa anlise. No entanto, novamente o sistema de deteco de intruso que apresentou os melhores resultados foi o Snort.
Taxa(Mbps) 4 6 8 Snort 100% 99,83% 94,41% Firestorm 100% 99,36% 92,24%

Tabela 24 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de negao de servio

O equilbrio entre os resultados obtidos pelos dois IDSs nessa ltima anlise de escalabilidade representado na figura 27, a seguir.
100% Percentual de alarmes gerados 98% 96% 94% 92% 90% 88% 4 6 Taxas de transmisso (Mbps) 8 Snort Firestorm

Figura 27 - Comparao dos resultados obtidos na anlise de escalabilidade em relao aos ataques de negao de servio

59

4.3 Taxas de falsos positivos


A anlise das taxas de falsos positivos, conforme descrita no capitulo anterior, realizada mediante consultas aos arquivos de logs criados pelos IDSs no momento da anlise da capacidade de deteco. 4.3.1 Anlise das taxas de falsos positivos gerados do Snort A tabela 25 apresenta o percentual de falsos positivos gerados pelo Snort em relao aos ataques de evaso. Este percentual de 36,73% formado principalmente pela grande quantidade de alarmes falsos gerados em funo do ataque Session Splice.
Alertas Verdadeiros Falsos positivos Method Matching 111 16 Total: Taxa de falsos positivos: Session Splice 75 92 Subtotal 186 108 294 36,73%

Tabela 25 - Snort: percentual de falsos positivos em relao aos ataques evaso

A taxa de falsos positivos em relao aos ataques de insero mostrada na tabela 26. Esta taxa de aproximadamente 30% e o ataque que gerou a maior quantidade de alarmes falsos foi o Long URL.
Alertas Verdadeiros Falsos positivos Long URL 642 321 Self Reference 96 25 URL Enc Subtotal 101 13 Total: 839 359 1198

Taxa de falsos positivos: 29,97% Tabela 26 - Snort: percentual de falsos positivos em relao aos ataques insero

Em relao aos ataques de varredura de portas, tabela 27, foram gerados apenas 4,71% de falsos positivos, sendo que para as sondagens de protocolo IP e UDP no foram gerados alarmes falsos.
TCP Fingerprinting Ident Reverso Protocolo IP Xmas UDP Scan Subtotal Fragmentation 1115 24 15 10 9 6 251 0 942 77 35 0 Total: 2367 117 2484

Alertas Verdadeiros Falsos positivos

Taxa de falsos positivos: 4,71% Tabela 27 - Snort: percentual de falsos positivos em relao aos ataques de varredura de portas

60

Ao exemplo dos ataques de varredura de portas os ataques de negao de servios, tabela 28, geraram uma pequena taxa de falsos positivos. Alm disso, o Snort no gerou alarmes falsos para o ataque UDPstorm.
Alertas Verdadeiros Falsos positivos Smurf 2000 105 Teardrop UDP ICMP Syn Flood 110 7 215 0 2010 89 1000 58 Total: Taxa de falsos positivos: Subtotal 5335 259 5594 4,63%

Tabela 28 - Snort: percentual de falsos positivos em relao aos ataques negao de servio

4.3.2

Anlise das taxas de falsos positivos gerados do Firestorm

Em relao aos ataques de evaso, o Firestorm gerou aproximadamente 41% de alarmes falsos (tabela 29). Sendo que a exemplo do que ocorreu na anlise com o Snort, o ataque denominado Session Splice foi o responsvel pela maior quantidade de falsos positivos gerados.
Alertas Verdadeiros Falsos positivos Method Matching 111 35 Session Splice 75 96 Total: Taxa de falsos positivos Subtotal 186 131 317 41,32%

Tabela 29 - Firestorm: percentual de falsos positivos em relao aos ataques evaso

A tabela 30 mostra a quantidade de falsos positivos gerados para os ataques de insero. Esta taxa corresponde a 42,97% de falsos positivos gerados. O ataque denominado URL Enconding, embora no tenha sido detectado pelo Firestorm foi o responsvel por 114 alarmes falsos. Alm disso, a exemplo da anlise com o Snort o ataque Long URL gerou um elevado percentual de falsos positivos.
Alertas Verdadeiros Falsos positivos Long URL 642 397 Self Reference 96 45 URL Enconding 0 114 Total de alertas: Subtotal 738 556 1294

Taxa de falsos positivos: 42,97% Tabela 30 - Firestorm: percentual de falsos positivos em relao aos ataques insero

O IDS em questo gerou uma taxa de aproximadamente 13% de alarmes falsos em relao aos ataques de varredura de portas. Conforme os dados da tabela 31, os ataques que contriburam significativamente para esta taxa foram Fingerprinting e UDP Scan que, embora no tenha sido detectado, gerou falsos positivos.

61

Alertas Verdadeiros Falsos positivos

TCP Fragmentation 1115 98

Fingerprinting 15 15 Total de alertas:

Ident Reverso Xmas UDP Scan 9 7 942 154 0 35

Subtotal 2081 309 2390 12,93%

Taxa de falsos positivos:

Tabela 31 - Firestorm: percentual de falsos positivos em relao aos ataques de varredura de portas

A taxa de falsos positivos gerados em relao aos ataques de negao de servio foi de 7,47%. A exemplo do que ocorreu com o Snort, no foram gerados falsos positivos para o ataque UDPstorm.
Alertas Verdadeiros Falsos positivos Smurf 2000 181 Teardrop UDP ICMP Syn Flood 110 17 215 0 2010 64 1000 169 Subtotal 5335 431 5766 7,47%

Total de alertas: Taxa de falsos positivos:

Tabela 32 - Firestorm: percentual de falsos positivos em relao aos ataques de negao de servio

4.3.3

Comparao dos resultados da anlise de taxas de falsos positivos

Ao analisar os resultados da tabela 33 conclui-se que o Snort, em geral, retornou um nmero de falsos positivos menor do que o Firestorm.
Alertas Snort Firestorm Evaso 36,73% 41,32% Insero 29,97% 42,97% Varredura de portas 4,71% 12,93% Negao de servio 4,63% 7,47%

Tabela 33 - Comparao entre os resultados obtidos na anlise das taxas de falsos positivos

Conforme se pode observar na figura 28, a diferena entre as taxas de falsos positivos gerados por esses IDSs nos ataques de evaso e negao de servio no ultrapassaram a margem dos 5%. Entretanto, para os ataques de varredura de portas, a diferena entre as taxas de falsos positivos geradas de aproximadamente 8% a favor do Snort. J em relao aos ataques de insero, registrou-se a maior diferena entre os dois IDSs avaliados; praticamente 12%. Novamente o Firestorm gerou uma quantidade mais elevada de falsos positivos.

62

50% 45% 40% 35% 30% 25% 20% 15% 10% 5% 0% Evaso Insero Varredura de portas Negao de servio

Percentual de falsos positivos gerados

Snort Firestorm

Tipos de ataques

Figura 28 - Comparao entre os resultados obtidos na anlise das taxas de falsos positivos

63

5 Consideraes finais
No decorrer desta monografia apresentou-se uma metodologia para avaliao de sistemas de deteco de intruso. Esta nova abordagem constitui-se em uma metodologia factvel fora do ambiente acadmico, que possui um conjunto de procedimentos sistematizados, realizveis em um curto espao de tempo e que no exige o conhecimento prvio das ferramentas de deteco de intruso a serem avaliadas. A metodologia proposta, ao contrrio de outras abordagens, avalia as potencialidades dos IDSs e no a implementao ou a base de assinaturas dos mesmos. As anlises previstas nessa metodologia avaliam as seguintes caractersticas: capacidade de deteco, taxas de falsos positivos e escalabilidade dos sistemas avaliados. Este trabalho foi estruturado da seguinte forma: o captulo 1 apresentou uma introduo ao tema proposto e os aspectos que motivaram esse estudo. No captulo 2 realizou-se uma sntese das principais publicaes relacionadas ao tema em questo. J o captulo 3 corresponde a descrio da metodologia proposta para avaliao de IDSs. Os resultados obtidos no estudo de caso foram apresentados no captulo 4. As principais contribuies da metodologia desenvolvida neste trabalho so abordadas a seguir.

5.1 Seleo de ataques


Conforme descrito no captulo 2 as principais metodologias voltadas avaliao de sistemas de deteco de intruso, partem da premissa de que quanto maior a quantidade de ataques executados mais detalhado o processo de avaliao. No entanto, o que de fato pode-se observar que no existem critrios pr-estabelecidos para a seleo destes ataques. Sendo assim, muitos dos ataques utilizados nessas metodologias exploram as mesmas caractersticas e, portanto, no possibilitam uma avaliao ampla e detalhada das potencialidades dos IDSs. Alm disso, este tipo de seleo de ataques torna os experimentos previstos extremamente exaustivos dada a quantidade de ataques a serem realizados. A metodologia desenvolvida ao longo desta monografia descreve um mtodo de seleo de ataques, a partir do qual o cenrio de ataques utilizado no processo de anlise dos IDSs foram compostos apenas por ataques que apresentam caractersticas nicas entre si. Atravs desta proposta de seleo de ataques (descrita no capitulo 3), reduziuse o cenrio inicial de ataques (tabela 4) em aproximadamente 50% (tabela 5). Isto significa que em relao a abordagens como [Puketza et al. 1997], [Lippmann et al. 2000], [Alessandri, 200] e [Barber, 2001] esta metodologia apresenta uma forma eficiente e sistemtica de seleo de ataques que permite avaliar as potencialidades de deteco presentes nos IDSs.

5.2 Capacidade de deteco


A anlise da capacidade de deteco desenvolvida nessa metodologia difere-se das abordagens supracitadas pelo fato de avaliar as potencialidades de deteco existentes nos IDSs ao invs de avaliar a base de assinaturas dessas ferramentas. O desenvolvimento de novas assinaturas ocorre diariamente. J a implementao de novos recursos (por exemplo, um decodificador HTTP) um processo mais lento. Portanto, as 64

metodologias que avaliam os IDSs somente em relao base de assinaturas tm seus resultados desatualizados rapidamente. Outra contribuio desta metodologia, quanto anlise em questo, refere-se ao fato de que, ao contrrio do que proposto em [Ref], no necessrio o conhecimento da implementao dos IDSs para avali-los.

5.3 Anlise de escalabilidade


Entre as metodologias referenciadas no captulo 2, somente [Barber, 2001] apresentou resultados referentes a escalabilidade dos IDSs avaliados. Todavia, a forma como essa anlise foi realizada no esta documentada. A anlise de escalabilidade desenvolvida nessa monografia esta baseada em procedimentos simples tais como, reproduzir o trfego de fundo definido na seo 3.4.2 em paralelo ao trfego de ataque e, em seguida, analisar os arquivos de logs dos sistemas avaliados.

5.4 Anlise das taxas de falsos positivos


Algumas metodologias como [Puketza et al. 1997] e [Barber, 2001] no descrevem a forma exata como foram realizados os experimentos de anlise das taxas de falsos positivos. Outras abordagens como [Lippmann et al. 2000] utilizam tcnicas questionveis para a realizao desta anlise conforme descrito no capitulo 2. J na metodologia descrita nessa monografia a anlise de falsos positivos realizada a partir do trfego de ataque previamente capturado. Dessa forma, possvel verificar a taxa de falsos positivos em relao a um trfego composto por ataques. Entretanto, somente esta anlise no suficiente para determinar as taxas de falsos positivos gerados por um IDS, sendo necessrio ampliar o escopo dessa anlise para avaliar de forma mais precisa o comportamento destes sistemas em relao s taxas de falsos positivos.

5.5 Possibilidade de expanso da metodologia


No que tange a utilizao desta metodologia, o usurio pode tanto utiliz-la entendendo que o cenrio de avaliao proposto (tabela 5) suficiente para a realizao da avaliao, quanto aumentar o nmero de ataques que sero submetidos ao processo de seleo. A partir do estudo desses ataques o cenrio de avaliao pode ser ampliado. Os usurios que optarem pela primeira opo devem iniciar o uso desta metodologia pela preparao do ambiente de teste e realizao das anlises da capacidade de deteco, escalabilidade e taxas de falsos positivos conforme descrito na seo 3.6. Aqueles usurios que desejarem ampliar o escopo de ataques propostos por esta metodologia, devem submeter novos ataques a etapa de seleo, a fim de verificar a necessidade de testar os IDSs contra os mesmos. Uma vez que estes ataques tenham de ser reproduzidos, h um novo cenrio de avaliao definido. Portanto, o prximo passo pesquisar por ferramentas que implementem esses ataques e em seguida realizar a preparao da etapa de gerao do trfego do cenrio de avaliao. Tendo os novos trfegos de ataques devidamente coletados o momento de montar o ambiente de avaliao e realizar as anlises citadas anteriormente.

5.6 Trabalhos futuros


Embora os objetivos propostos nesse trabalho tenham sido atingidos existem diversas melhorias a serem realizadas. Uma dessas melhorias corresponde a ampliao do cenrio de avaliao, atravs da seleo de outros tipos de ataques. Alm disso, o desenvolvimento de uma ferramenta para instrumentalizar essa metodologia algo de extrema importncia. 65

A exemplo de outras reas da computao, como a escolha de qual o banco de dados mais adequado para uma determinada instituio, a seleo de um IDS est relacionada com as peculiaridades existentes em cada caso. Portanto, o sistema de deteco de intruso ideal aquele que melhor atende as necessidades no tocante a segurana. Para que essas necessidades sejam definidas necessrio o conhecimento da poltica de segurana da instituio. Uma vez que os objetivos a serem atingidos estejam claramente definidos, o momento de realizar a avaliao dos IDSs. Embora a metodologia proposta nessa monografia avalie caractersticas fundamentais dessas ferramentas, existem outros aspectos tais como: o nvel de conhecimento necessrio para administrar essas ferramentas, o suporte fornecido a esta soluo, as possibilidades de integrao com outros mecanismos de segurana, e a capacidade de resposta dos IDSs devem ser considerados no processo de avaliao. Estudos que avaliem a eficincia dos recursos de integrao dos IDSs com outros mecanismos de segurana e a capacidade de resposta desses sistemas, so estudos de fundamental importncia, a fim de aprimorar o processo de seleo de um sistema de deteco de intruso.

66

Bibliografia
[Puketza et al. 1997] Puketza, Nicholas; Chung, Mandy; Olsson, Ronald A. and Mukherjee, Biswanath. A software plataform for testing intrusion detection systems. IEEE Software vol. 14, no. 5, pp. 43 51, 1997. [Lippmann et al. 1998] Lippmann, Richard P.; Fried, David J.; Graf, Isaac; Haines, Joshua W.; Kendall, Kristopher R. McClung, David; Weber, Dan; Webster, Seth E.; Wyschogrod, Dan; Cunningham, Robert K. and Zissman, Marc. Evaluating intrusion detection systems: The 1998 DARPA off-line intrusion detection evaluation. In proceedings of the on DARPA Information Survivability Conference and Exposition (DISCEX) 2000, IEEE Computer Society Press, Los Alaminos, CA. [Ptacek e Newsham, 1998] Ptacek, Thomas H.; Newsham, Timothy N. Insertion, Evasion, and deny of service: Eluding network intrusion detection. [online], 1998. Disponvel em http://www.clark.net/pub/roesh/public_html/IDSpaper.pdf. [Durst et al. 1999] Durst, Robert; Champion, Terrence; Witten, Brian; Miller, Eric and Spagnuolo, Luigi. Testing and evaluating computer intrusion detection systems. Communications of ACM vol. 42, no. 7, pp. 53 61, 1999. [Herv, 1999] Herv, Debar. Towards a taxonomy of intrusion detection systems. Computer Networks, vol. 31, pp. 805-822, 1999. [Iss, 1999] Internet Security Systems, Inc. Real Secure. [online], 1998. Disponvel em http://iss.net/prod/realsecure.pdf. [Kendall, 1999] Kendall, Kristopher. A database of computer attacks for the evaluation of intrusion detection systems. Masters Thesis. Massachusetts Institute of Technology, Cambridge, MA, 1999. [Mutaf, 1999] Mutaf, Pars. Defending against a deny of service attack on TCP. Recent Advances in Intrusion Detection (RAID). West Lafayette, Indiana, USA, 1999. [Paxson, 1999] Paxson, Vern. Bro: a system for detecting network intruders in realtime. Computer networks, vol. 31, pp. 2435 2463, 1999. [Lippmann et al. 1999] Lippmann, Richard; Haines, David; Fried, David J.; Das, Kumar J.; Korba, Jonathan. Evaluating intrusion detection systems: The 1999 DARPA offline intrusion detection evaluation. Computer Networks, vol. 34, pp. 579 - 595, 2000. [Roesch, 1999] Roesch, Martin. Snort Lightweight intrusion detection for networks. USENIX LISA Conference 1999. Seattle, WA. [Lippmann et al. 2000] Lippmann, Richard P.; Haines, Joshua W. Extending the DARPA off-line intrusion detection evaluations. Submitted for consideration by DISCEX-II. 2000. [Korba, 2000] Korba, Jonathan. Windows NT attacks for the evaluation of intrusion detection systems. Masters Thesis. Massachusetts Institute of Technology, Cambridge, MA, 2000.

67

[Das, 2000] Das, Kumar J. Attack development for intrusion detection. Masters Thesis. Massachusetts Institute of Technology, Cambridge, MA, 2000. [Northcutt, 2000] Northcutt, Stephen. Como detectar invaso em rede uma guia para analistas. Rio de Janeiro: Editora Cincia Moderna Ltda., 2000. [Alessandri, 2000] Alessandri, Dominique. Using rule-based activity descriptions to evaluate intrusion-detection systems. Recent Advances in Intrusion Detection (RAID). ONERA: Toulouse, France, 2000. [McHugh, 2000] McHugh, John. Testing intrusion detection systems: A critique of the 1998 and 1999 DARPA intrusion detection systems evaluations as performed by Lincon labotatory. Transactions on Information and System Security. ACM vol. 3, pp. 262 294, 2000. [Whisker, 2000] Rain Forest Puppy. Anti-IDS tools and tactics. [online], 2000. Disponvel em http://www.wiretrip.net/rfp/pages/whitepapers/whiskerids.html. [Barber, 2001] Barber, Richard. The evolution of intrusion detection systems the next step. Computer & Security, vol. 20, pp. 145, 2001. [Campello, 2001] Campello, Rafael. Sistemas de deteco de intruso. 19 Simpsio Brasileiro de Redes de Computadores. UFSC: Florianpolis, 2001. [Nfr, 2001] Network Flight Recorder, Inc. Overview of NFR intrusion detection systems. [online], 1998. Disponvel em http://www.nfr.com/. [Cert, 2002] Cert Coordination Center. Cert security improvement modules. [online], 2002. Disponvel em http://www.cert.org/security-improvement/ [Enterasys, 2002] Enterasys Networks, Inc. Sistemas de deteco de intruso. [online], 2002. Disponvel em http://www.enterasys.com/ids/. [Linuxsecurity, 2002] Linuxsecurity. Linux Security The communitys center for security. [online], 2002. Disponvel em http://www.linuxsecurity.com/. [Nmap, 2002] Nmap. Network mapper. http://www.insecure.org/nmap/index.html [online], 2002. Disponvel em

[Securityfocus, 2002] SecurityFocus. SecurityFocus corporate site. [online], 2002. Disponvel em http://www.securityfocus.com. [Tcpdump, 2002] Tcpdump. TCPDUMP public repository. [online], 2002. Disponvel em http://tcpdump.org. [Tcpreplay, 2002] Tcpreplay. Tool to replay captured network traffic. [online], 2002. Disponvel em http://sourceforge.net/projects/tcpreplay/. [Tedesco, 2002] Tedesco, Gianni. Firestorm network intrusion detection system. [online], 2002. Disponvel em http://www.scaramanga.co.uk/.

68