Você está na página 1de 103

UNIVERSIDADE CATLICA DE BRASLIA

PROGRAMA DE PS-GRADUAO LATO SENSU EM REDES DE COMPUTADORES

SISTEMAS DE PREVENO DE INTRUSO BASEADO EM SOFTWARE LIVRE: DEBIAN E SNORT

IGOR DA SILVA NEIVA MAIA SANDRO HERMAN PEREIRA REHEM

BRASLIA

2/2005

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia

IGOR DA SILVA NEIVA MAIA SANDRO HERMAN PEREIRA REHEM

SISTEMAS DE PREVENO DE INTRUSO BASEADO EM SOFTWARE LIVRE: DEBIAN E SNORT

Projeto final apresentado ao Programa de Ps-Graduao Lato Sensu em Redes de Computadores da Universidade Catlica de Braslia, como requisito a obteno do grau de Especialista em Rede de Computadores.

Orientador: Jernimo Jardim

Braslia DEZEMBRO/2005
Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia

TERMO DE APROVAO
Monografia defendida e aprovada como requisito parcial obteno do grau de Especialista em Rede de Computadores, defendida e aprovada, em 12 de dezembro de 2005, pela banca examinadora constituda por:

JERNIMO JARDIM (ORIENTADOR)

LAERTE PEOTA (EXAMINADOR INTERNO)

Braslia UCB

Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

ii

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia

Aos nossos pais, familiares e namoradas pela compreenso e incentivo nos momentos mais difceis.

Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

iii

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia

Agradecemos:

Primeiramente a Deus.

Universidade Catlica de Braslia.

Ao Professor Mestre Jernimo Jardim Incentivador e esclarecedor de muitas dvidas surgidas ao longo do projeto

E a todos aqueles que nos ajudaram e incentivaram no desenvolvimento das atividades realizadas neste projeto.

Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

iv

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia

LISTA DE FIGURAS
Ilustrao 1.1 Crescimento dos sistemas de informao...................... ...............................1 Ilustrao 2.2 Estatsticas de incidentes relatados ao CERT/CC.........................................5 Ilustrao 2.3 Estatsticas de incidentes relatados ao CERT.br............................... .............5 Ilustrao 2.4 Comparativo entre conhecimento e sofisticao dos ataques........................ 6 Ilustrao 2.5 Processos para implementao de segurana..............................................9 Ilustrao 3.6 IDS como segunda camada de defesa da rede..................... ......................25 Ilustrao 3.7 Localizao dos sensores................................................................... .........31 Ilustrao 4.8 Princpio fundamental de defesa ativa. ................................ .......................37 Ilustrao 4.9 Arquitetura de IPS.............................................................................. ..........39 Ilustrao 5.10 Mecanismo de processamento de pacotes no Snort................................ ..51 Ilustrao 5.11 Exemplo de assinatura do Snort.................................... ............................56 Ilustrao 6.12 Disposio do Snort Inline............................................. ............................63 Ilustrao 6.13 - Mecanismo de processamento de pacotes no Snort Inline.........................63 Ilustrao 7.14 Topologia utilizada em laboratrio.................................................... ..........66 Ilustrao 7.15 Tela de configurao inicial do BASE.................................................. .......82 Ilustrao 7.16 Tela de status da configurao inicial do BASE.........................................82 Ilustrao 8.17 Anlise de logs no BASE............................................... ............................84

Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia

RESUMO
Este trabalho visa a implantao de um IPS (Intruder Prevention System) utilizando o Snort Inline como ferramenta. Inicialmente apresentada a teoria envolvida no projeto, definindo IPS e suas funcionalidades. Logo aps, so descritas as ferramentas necessrias para a implementao do ambiente do IPS, bem como a implementao em si. Em seguida, so apresentados os dados da coleta a respeito de ataques e sua anlise. Finalmente, so feitas as consideraes finais e sugestes de trabalhos futuros.

Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

vi

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia

ABSTRACT
This work aims at the implantation of IPS (Intruder Prevention System) using the Snort Inline as tool. This work initially presents the theory involved in the project, explaining what a IPS is for and how it works. Afterwards, all the tools needed to implement the IPS environment are described, as well as the implementation itself. Thereafter, the collected data about the attacks and their analysis are presented. Finally, final statements are made and future works are suggested.

Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

vii

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia NDICE

Captulo

Pgina

LISTA DE FIGURAS................................................................................................ ...............v RESUMO.......................................................................................................................... .....vi 1 INTRODUO..................................................................................................... ................1 1.1 Objetivo......................................................................................................... ................3 1.2 Escopo.................................................................................................... ......................4 2 SEGURANA.......................................................................................... ............................4 2.1 Polticas de Segurana............................................................................................... ..7 2.2 Crimes Computacionais..................................................................... ...........................9 2.3 Firewalls............................................................................................ ..........................11 2.4 Ameaas e Ataques.............................................................................................. ......12 2.4.1 Classificao.............................................................................. ..........................12 2.4.2 Tipos de Ataques.................................................................................. ................13 2.4.3 Exemplos de Ataques.............................................................................. .............14 2.5 Intruso................................................................................................ .......................17 2.5.1 Classificao de uma Intruso........................................................................ ......18 2.5.2 Deteco de uma Intruso................................................................................. ...19 3 SISTEMAS DE DETECO DE INTRUSO.................................................. ...................20 3.1 Tipos de IDS........................................................................................................ ........21 3.1.1 IDS baseados em Redes (NIDS)............................................................ ..............21 3.1.2 IDS baseados em Hosts (HIDS)....................................................... ....................25 3.1.3 IDS baseados em kernel .......................................................... ...........................29 3.2 Consoles e Sensores........................................................................ ..........................29 3.2.1 Gerncia..................................................................................................... ..........29 3.2.2 Sensores....................................................................................... .......................30
Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

viii

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia 3.3 Assinaturas........................................................................................................... .......33 3.4 Estmulos e Respostas........................................................................................ ........33 4 SISTEMAS DE PREVENO DE INTRUSO.................................................................. .35 4.1 Surgimento da Necessidade da Pesquisa..................................................... ..............35 4.2 Princpios fundamentais......................................................................... .....................36 4.2.1 Defesa ativa.......................................................................................................... 36 4.2.2 IPS........................................................................................................................ 38 4.3 Riscos e impactos............................................................................... ........................43 4.4 Solues disponveis no mercado................................................................ ...............45 4.4.1 Ferramentas gratuitas........................................................................................... 46 4.4.2 Ferramentas comerciais................................................................... ....................48 5 SNORT.............................................................................................................................. .50 5.1 Mecanismo..................................................................................................... .............51 5.2 Configurao................................................................................................. ..............52 5.2.1 Variveis................................................................................................... ............53 5.2.2 Preprocessor..................................................................................... ...................53 5.2.3 Assinaturas............................................................................................... ............55 5.2.4 Sada...................................................................................................... ..............60 6 SNORT INLINE............................................................................................. .....................62 6.1 Mecanismo IPtables................................................................................. ...................63 6.1.1 Mecanismo IPFW.......................................................................... .......................64 6.2 Configurao................................................................................................. ..............64 6.2.1 Mecanismo Inline............................................................................................... ...64 7 IMPLEMENTAO................................................................................ ............................66 7.1 Sistema Operacional................................................................................ ...................67 7.1.1 Instalao............................................................................................ .................68 7.2 Firewall.............................................................................................................. ..........68
Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

ix

Lato Sensu em Redes de Computadores Universidade Catlica de Braslia 7.2.1 Configurao..................................................................................... ...................68 7.3 Sensor............................................................................................................... ..........69 7.3.1 Snort Inline................................................................................... ........................70 7.3.2 Bridge.................................................................................................... ...............74 7.3.3 IPtables.................................................................................... ............................75 7.4 Gerncia................................................................................................................. .....76 7.4.1 MySQL..................................................................................... ............................76 7.4.2 Apache HTTP................................................................................... ....................79 7.4.3 BASE............................................................................................................ ........79 8 RESULTADOS........................................................................................ ...........................83 8.1 Resultados obtidos.......................................................................................... ............83 8.2 Anlise e Discusso dos Resultados................................................................ ...........85 8.3 Problemas diagnosticados e futuras implementaes........................................ .........85 CONCLUSO........................................................................................... ...........................87 REFERNCIAS BIBLIOGRFICAS................................................................... ..................89

Sistemas de Preveno de Intruso Baseado em Software Livre: Debian e Snort

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

1 INTRODUO
A cada dia milhares de sistemas esto sendo interconectados, operando em conjunto com outros sistemas, tornando a vida das pessoas cada dia mais fcil e, por conseqncia, mais perigosa. So sistemas de controle mdico: mquinas de vigilncia de pacientes, diagnsticos pela rede e at cirurgias online; Controle areo: interoperabilidade entre diversos aeroportos; Trnsito: semforos, pontes mveis, pedgios; At sistemas de monitoramento de vulces que mandam seus alarmes pela rede. Com a popularizao das redes de computadores, principalmente a Internet, elas assumiram um papel fundamental na atividade de empresas e instituies como universidades, bancos, corretoras, ONGs, e-commerce, entre outras. Assim, essas redes passaram a trafegar, armazenar e disponibilizar informaes, muitas vezes, valiosas e sigilosas, Ilustrao 1.1 .

Ilustrao 1.1 Crescimento dos sistemas de informao.

A disponibilizao cada vez mais acelerada de diversos servios de rede multiplicou as portas de acesso aos sistemas computacionais, multiplicando tambm a possibilidade da ocorrncia de acessos indevidos. Na medida em que se amplia o acesso s informaes e 1

Sistemas de Preveno de Intruso baseado em Software Livre: De

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia mais recursos so disponibilizados aos clientes internos e externos, mais difcil se torna garantir a integridade do ambiente. Este problema agravado pela diversidade de inovaes tecnolgicas implementadas a cada dia. Com isso a segurana da informao umas das maiores preocupaes das grandes organizaes no mundo atual, proteger a rede corporativa contra ataques uma tarefa constante dos administradores de segurana da informao de uma empresa, para que os negcios da Empresa no sejam afetados por aes malficas, que viriam a se tornar alvo de tentativas de ataques, que em geral, buscam o acesso no autorizado e a tentativa de indisponibilizar o sistema. Tecnicamente uma rede de computadores funciona como elos de uma corrente e a fragilidade da mesma se d pela possvel fragilidade de um nico elo mais desprotegido. A abertura e disponibilizao de acesso a uma porta em uma rede segura pode ser um elo bastante frgil, caso no seja realizada um controle criterioso. Tudo um processo de anlise de segurana deve ser realizado de forma a tornar segura todo o acesso e garantindo que toda a informao trafegue da forma mais segura possvel. Durante toda a evoluo, os primatas que criaram o hbito de acender uma fogueira na entrada das suas cavernas durante a noite viviam mais, ao contrrio dos outros que, vez por outra, eram devorados por tigres dentes-de-sabre. Este costume se espalhou e, mesmo que os mais novos no soubessem o motivo da fogueira, este "comportamento adquirido" era de extrema importncia para a sua sobrevivncia. Saindo da filosofia preciso conscientizar a todos de que a segurana muito mais do que um simples ramo de trabalho, ela est presente no cotidiano e preciso se adaptar. Segurana deve ser uma preocupao geral, caso contrrio estar-se-ia sujeito a ficar nas mos de pessoas que se aproveitam do fato de no se dar a devida importncia ao assunto. Para tornar uma rede de computadores mais segura so necessrias ferramentas complexas de analise de dados/trfego, pois a quantidade de informaes so extramentes altas e a rapidez na anlise uma exigncia da segurana da informao. Existe uma necessidade crescente por sistemas de segurana. Sistemas de Preveno de Intruso baseado em Software Livre: De 2

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia O elemento mais comum para segurana atribudo a firewalls e as prticas atribudas a listas de acesso em outros elementos de rede. Mas um tipo importante de software de segurana que surgiu foram os IDS (Intrusion Detection System), entretanto no interessante somente em detectar ataques, mas preveni-los. Essa mudana de foco levou ao desenvolvimento de uma nova classe de ferramentas de segurana, os Sistemas de Preveno de Intruso (IPS), que tm se tornado uma tendncia. Um firewall um requisito bsico para redes conectadas Internet, sem um firewall no h o mnimo de segurana para proteger as redes corporativas bem como os computadores pessoais. Os IDS (Sistemas de Deteco de Intruso) so planejados para farejar o trfego e analisar a reconhecer atividades e ataques em rede e hosts, detectando atividades maliciosas o detector de intrusos, permite reagir a ameaas contra o ambiente corporativo. Um IPS um sistema que detecta e obstrui automaticamente ataques computacionais a recursos protegidos. Um contraste com os IDS tradicionais, que localiza e notifica os administradores sobre anomalias, um IPS defende o alvo sem uma participao direta dos administradores. Tal proteo pode envolver o uso de tcnicas baseadas em assinatura ou tcnicas conhecidas para identificar um ataque, bloquear um trfego malicioso ou alguma chamada de sistema que posa causar algum dano. O IPS combina as

funcionalidades de um IDS mais um firewall para oferecer uma soluo que automaticamente bloqueia aes ofensivas e detecta ataques.

1.1 Objetivo
O projeto visa implementar um sistema de preveno de intruso com plataforma e ferramentas de uso livre, abordando estudo dos conceitos de Redes de Computadores. Visando um aprofundamento no segmento de segurana da informao torna-se desejvel conhecer as ferramentas disponveis para esta implementao.

Sistemas de Preveno de Intruso baseado em Software Livre: De

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Ao final espera-se que seja uma fonte de referncia: objetiva e de fcil entendimento; e propor novas possibilidades de continuidade do projeto.

1.2 Escopo
O sistema operacional adotado foi o Debian, organizado pelo projeto

autodenominado. O Debian um sistema operacional livre baseado no projeto GNU o qual a distribuio oficial Linux. O Debian usa o kernel Linux, mas a maior parte das ferramentas do SO vm do projeto GNU, da o nome GNU/Linux . A ferramenta, capaz de analisar o trfego e registro de pacotes na rede, adotada foi o Snort. O Snort um sistema de deteco e preveno contra intrusos que utiliza linguagem dirigida por regras, o qual combina os benefcios de assinatura, protocolo e anomalias baseados nos mtodos de inspeo e . A implementao do ambiente proposto utiliza mquinas virtuais emuladas.

2 SEGURANA
Segurana significa minimizar a vulnerabilidade de bens e recursos. Vulnerabilidades podem ser exploradas para se violar um sistema ou as informaes nele contidas. A Segurana Computacional est relacionada necessidade de proteo contra o acesso ou a manipulao, intencional ou no, de informaes confidenciais por elementos no autorizados: a utilizao no autorizada do computador ou de seus dispositivos perifricos. As estatsticas de incidentes de ataques mostram um crescimento quase exponencial nos ltimos anos, de forma assustadora. De acordo com o CERT/CC (Computer Emergency Response Team Coordination Center), esse nmero aumentou de 9859 para 137529 incidentes relatados, no perodo de 1999 a 2003, Ilustrao 2.1. Os dados a partir de 2004 ainda no foram publicados .

Sistemas de Preveno de Intruso baseado em Software Livre: De

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Ilustrao 2.2 Estatsticas de incidentes relatados ao CERT/CC.

De acordo com o CERT.br (Centro de Estudos, Resposta e Tratamento de Incidentes de Segurana no Brasil), o nmero de incidentes relatados aumentou de 3107 para 75722, no perodo de 1999 a 2004, at setembro de 2005 foram 46205, Ilustrao 2.2 .

Ilustrao 2.3 Estatsticas de incidentes relatados ao CERT.br.

Juntamente com a evoluo no nmero de ataques, evoluram tambm as tcnicas utilizadas para proced-los. Assim, obter acesso no autorizado aos sistemas, deixou de ser Sistemas de Preveno de Intruso baseado em Software Livre: De 5

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia uma prtica somente de especialistas, para ser diverso de usurios que tenham interesse e possuam as ferramentas corretas, Ilustrao 2.3 .

Ilustrao 2.4 Comparativo entre conhecimento e sofisticao dos ataques.

Dado ao uso disseminado de ferramentas automticas, os ataques a sistemas tornam os incidentes bastante comuns, entretanto existem poucas informaes a respeito do impacto dos ataques. Em virtude desse quadro assim como em uma guerra, conhecer o inimigo algo de extrema importncia. No mundo dos computadores, saber as tcnicas e ferramentas empregadas nos ataques s redes de computadores algo fundamental para que as tcnicas de defesa mantenham sua eficcia. Mesmo assim, com a tecnologia disponvel no momento, praticamente impossvel impedir que um ataque acontea. No existe um mecanismo nico que fornea uma soluo para esse problema. Desta forma, foi introduzido o conceito de segurana em profundidade, que faz uso de vrias camadas de segurana, englobando os sistemas de informao e as redes que os interligam. Existem diferenas fundamentais na segurana voltada para o mercado corporativo, onde se depara com a utilizao de tecnologias avanadas, alta capacidade de trfego, alta disponibilidade e gerenciamento de estaes, quando comparadas segurana voltada

Sistemas de Preveno de Intruso baseado em Software Livre: De

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia para o mercado domstico, do usurio da internet. Esta pesquisa contribui com a resoluo dos problemas de corporaes. A necessidade de proteo deve ser definida em termos das possveis ameaas e riscos e dos objetivos de uma organizao formalizados em uma poltica de segurana.

2.1 Polticas de Segurana


Uma poltica de segurana a expresso formal das regras pelas quais fornecido acesso aos recursos tecnolgicos da empresa. Ou seja, um conjunto de leis, regras e prticas que regulam como uma organizao gerencia, protege e distribui suas informaes e recursos. Um sistema considerado seguro em relao a uma poltica de segurana, caso garanta o cumprimento das leis, regras e prticas definidas na mesma. O principal propsito de uma poltica de segurana informar aos usurios, equipe e gerentes, as suas obrigaes para a proteo da tecnologia e do acesso informao. A poltica deve especificar os mecanismos atravs dos quais estes requisitos podem ser alcanados. Outro propsito oferecer um ponto de referncia a partir do qual se possa adquirir, configurar e auditorar sistemas computacionais e redes, para que sejam adequados aos requisitos propostos. Portanto, uma tentativa de utilizar um conjunto de ferramentas de segurana na ausncia de pelo menos uma poltica de segurana implcita no faz sentido. Uma poltica de uso apropriado pode tambm ser parte de uma poltica de segurana. Ela deve expressar o que os usurios devem e no devem fazer em relao aos diversos componentes do sistema, incluindo o tipo de trfego permitido nas redes. Essa poltica deve ser to explcita quanto possvel para evitar ambigidades ou maus entendimentos. As decises que um administrador toma ou deixa de tomar, relacionadas segurana, iro determinar a quo segura ou insegura a rede, quantas funcionalidades ela ir oferecer, e qual ser a facilidade de utiliz-la. No entanto, no se consegue tomar boas decises sobre segurana, sem antes determinar quais so as metas de segurana. At que Sistemas de Preveno de Intruso baseado em Software Livre: De 7

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia sejam determinadas, no se poder fazer uso efetivo de qualquer coleo de ferramentas de segurana, pois simplesmente no se sabe o que checar e quais restries impor. Os objetivos devem ser formulados a partir das seguintes determinantes: a. Servios oferecidos versus Segurana fornecida Cada servio oferecido para os usurios carrega seus prprios riscos de segurana. Para alguns servios, o risco superior ao benefcio do mesmo, e o administrador deve optar por eliminar o servio ao invs de tentar torn-lo menos inseguro. b. Facilidade de uso versus Segurana O sistema mais fcil de usar deveria permitir acesso a qualquer usurio e no exigir senha, isto , no haveria segurana. Solicitar senhas torna o sistema um pouco menos conveniente, porm mais seguro. Requerer senhas "one-time" geradas por dispositivos, torna o sistema ainda mais difcil de utilizar, mas bastante mais seguro. c. Custo da segurana versus o Risco da perda H muitos custos diferentes para segurana: monetrio (o custo da aquisio de hardware e software como firewalls, e geradores de senha "one-time"), desempenho (tempo cifragem e decifragem), e facilidade de uso. H tambm muitos nveis de risco: perda de privacidade (a leitura de uma informao por indivduos no autorizados), perda de dados (corrupo ou deleo de informaes), e a perda de servios (ocupar todo o espao disponvel em disco, impossibilidade de acesso rede). Cada tipo de custo deve ser contra balanceado ao tipo de perda [7].

Sistemas de Preveno de Intruso baseado em Software Livre: De

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Ilustrao 2.5 Processos para implementao de segurana.

Pode haver requisitos regulamentares que afetem alguns aspectos da poltica de segurana (como a monitorao). Os criadores da poltica de segurana devem considerar a busca de assistncia legal na criao da mesma. No mnimo, a poltica deve ser revisada por um conselho legal.

2.2 Crimes Computacionais


A era da Internet cada vez mais presente na vida das pessoas. Esta por sua vez, tende a trazer grandes benefcios para o cotidiano dos seres humanos. Contudo, nem sempre h o uso devido das tecnologias. Da mesma forma ocorre com a Internet: possvel us-la para o bem ou para o mal. Entre os males causados pelo uso indevido da Internet, pode-se citar os crimes virtuais. O conjunto de normas, princpios e instrues que regulam as relaes jurdicas emergentes da atividade informtica, constitui a interseco entre direito e informtica. O crime virtual est por todo o mundo, inclusive no Brasil, mais nem sempre publicado, e no se restringe somente ao vrus digital. Isso ocorre pelo fato de que os computadores se tornaram populares e esto ao alcance de todos. Por sua vez, a tica nem Sistemas de Preveno de Intruso baseado em Software Livre: De 9

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia sempre engloba os princpios da Informtica, fazendo com que a segurana nos computadores seja deturpada. Atualmente, para os usurios da Internet no existe limite para o crime por computador, pois a fiscalizao muito fraca. No Brasil existem inmeros casos de crimes virtuais, onde, segundo fontes como revistas, jornais e documentrios, pode-se notar que este assunto no to recente quanto parece. Existem alguns tipos de diversificaes de denominaes referentes a este assunto, que so: Computer crime; Abuso de computador; Crime de computao; Criminalidade mediante computadores; Delito informtico; Fraude informtica; Delinqncia econmica; Computer kriminalistat; Conceituando crime informtico, para a Cooperao Econmica e Desenvolvimento (OECD): "Computer crime qualquer conduta ilegal, no autorizada, que envolva processamento automtico de dados e/ou transmisso de dados. Um crime pode ser realizado com base nas diferentes reas de um computador, como na unidade de entrada, na de sada, na unidade central de processamento, num dispositivo de armazenamento ou de transmisso de informaes. Sendo que os crimes ocorrem de acordo com a criatividade do agente. Segundo Ulrich Sieber, os crimes podem ser classificados da seguinte forma: Fraude por manipulao de um computador contra um sistema de processamento de dados; Sistemas de Preveno de Intruso baseado em Software Livre: De 10

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Espionagem informtica; Furto de tempo; Acesso no autorizado a sistemas; Ofensas tradicionais; Segundo C.M Romeo Casabona so:

Manipulao de entrada de dados (input); Manipulao no programa; Manipulao na sada de dados (output); Manipulao a distncia; Totalmente ligados ao computer crime, esto os Hackers. Os Hackers interagem com

os demais dentro de uma estrutura anarquista, sem liderana forte ou padro rgido a seguir. E tem como finalidade desbravar novos horizontes, mesmo que o objetivo principal seja a infiltrao de valores novos para a sociedade, a contra cultura.

2.3 Firewalls
Firewall o mecanismo de segurana interposto entre a rede interna e a rede externa com a finalidade de liberar ou bloquear o acesso de computadores remotos aos servios que so oferecidos em um permetro ou dentro da rede corporativa. Este mecanismo de segurana pode ser baseado em hardware, software ou uma mistura dos dois. O firewall o ponto de conexo com a rede externa, tudo o que chega rede interna deve passar pelo firewall, ele tambm o responsvel por aplicar as regras de segurana, autenticar usurios, registrar trfego para auditoria e deve limitar a exposio dos hosts internos aos hosts da Internet, para que elas no seja alcanveis, por exemplo, o servidor de banco de dados. Entretanto, algumas tarefas no podem ser executadas, como, proteger

Sistemas de Preveno de Intruso baseado em Software Livre: De

11

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia a rede contra usurios internos mal intencionados, conexes que no passam por ele, ameaas novas, no qual ele no foi parametrizado para executar uma ao. Um ataque pode ocorrer explorando as vulnerabilidades do aplicativo em mquinas protegidas por firewalls com listas permitindo o acesso. So trs os fatores em risco: a reputao, os computadores e as informaes guardadas; e so trs os fatores precisam ser resguardados: a privacidade, a integridade e a disponibilidade. Existem situaes de riscos como, roubo de conexo depois dela ter sido autenticada, espionagem de dados secretos enquanto em trnsito pela rede e um usurio no autenticado convence a rede que ele foi autenticado. O firewall no deve ser substitudo por IPS, deve existir uma barreira de segurana adicional na rede.

2.4 Ameaas e Ataques


Uma ameaa consiste em uma possvel violao da segurana de um sistema. Algumas das principais ameaas s redes de computadores so: Destruio de informao ou de outros recursos Modificao ou deturpao da informao Roubo, remoo ou perda de informao ou de outros recursos Revelao de informao Interrupo de servios.

2.4.1 Classificao
As ameaas podem ser classificadas como: Acidentais ou Intencionais Ativas ou Passivas

Sistemas de Preveno de Intruso baseado em Software Livre: De

12

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Ameaas acidentais so as que no esto associadas inteno premeditada. Por exemplo, descuidos operacionais e bugs (falhas) de software e hardware. A concretizao das ameaas intencionais variam desde a observao de dados com ferramentas simples de monitoramento de redes, a ataques sofisticados baseados no conhecimento do funcionamento do sistema. Ameaas passivas so as que, quando realizadas, no resultam em qualquer modificao nas informaes contidas em um sistema, em sua operao ou em seu estado. Uma estao que processa todos os quadros que recebe em uma rede local (incluindo os que no so a ela endereados) um exemplo de realizao de uma ameaa passiva. Uma realizao de ameaa ativa a um sistema envolve a alterao da informao contida no sistema, ou modificaes em seu estado ou operao. Uma estao de uma rede em anel que no retransmite mensagens quando deveria faz-lo (ela no a responsvel pela retirada da mensagem do anel) um exemplo de realizao de uma ameaa ativa.

2.4.2 Tipos de Ataques


A materializao de uma ameaa intencional configura um ataque. Alguns dos

principais ataques que podem ocorrer em um ambiente de processamento e comunicao de dados so: Personificao (masquerade): uma entidade faz-se passar por outra. Uma entidade que possui poucos privilgios pode fingir ser outra, para obter privilgios extras Replay: Uma mensagem, ou parte dela, interceptada, e posteriormente transmitida para produzir um efeito no autorizado. Por exemplo, uma mensagem vlida, carregando informaes que autenticam uma entidade A, pode ser capturada e posteriormente transmitida por uma entidade X tentando autenticar-se no sistema (possivelmente personificando a entidade A). Modificao: O contedo de uma mensagem alterado implicando em efeitos no autorizados sem que o sistema consiga detectar a alterao. Sistemas de Preveno de Intruso baseado em Software Livre: De 13

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Recusa ou impedimento de servio: ocorre quando uma entidade no executa sua funo apropriadamente ou atua de forma a impedir que outras entidades executem suas funes. Uma entidade pode utilizar essa forma de ataque para suprimir as mensagens, por exemplo, direcionadas a entidade encarregada da execuo do servio de auditoria de segurana. Outro exemplo de utilizao dessa forma de ataque a gerao de mensagens com intuito de atrapalhar o funcionamento de algoritmos de roteamento.

Ataques internos: Ocorre quando usurios legtimos comportam-se de modo no autorizado ou no esperado

Armadilhas (trapdoor): Ocorre quando uma entidade do sistema modificada para produzir efeitos no autorizados em resposta a um comando (emitido pela entidade que est atacando o sistema) ou a um evento, ou seqncia de eventos predeterminado. Um exemplo desse ataque seria a modificao do processo de autenticao de usurios para dispensar a verificao da senha em resposta a uma combinao de teclas especfica, por exemplo, Ctrl+Alt+U, ou a um evento do tipo hora do sistema 23:35:00

Cavalos de Tria: Nesse ataque, uma entidade executa funes no autorizadas. Um procedimento de login modificado, que alm de sua funo normal de iniciar a

sesso de trabalho dos usurios, grava suas senhas em um arquivo desprotegido, um exemplo de Cavalo de Tria

2.4.3 Exemplos de Ataques


2.4.3.1 Backdoors
Antigamente, todo sistema tinha uma "porta dos fundos" (ou backdoor), por onde o criador do sistema poderia entrar a qualquer hora, independente de quem fosse o responsvel pelo mesmo.

Sistemas de Preveno de Intruso baseado em Software Livre: De

14

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia O autor garantiria sua entrada criando uma passagem secreta, que somente ele saberia o local. H algum tempo vrios programadores deixavam sempre um local por onde eles poderiam passar no futuro. Hoje isso mais difcil, pois existem muito mais pessoas interessadas em procurar falhas do que antes. De qualquer forma, quando se fala em "encontrar uma backdoor" ou "deixar uma backdoor em algum sistema", geralmente, refere-se a uma caracterstica secreta e obviamente no documentada que permite o acesso de quem implantou esta backdoor. perfeitamente possvel existir backdoors em scripts de IRC, programas de FTP, ou qualquer outro servio encontrado pela Internet. Portanto, os programas devem ser bem escolhidos. Algumas verses de Cavalos de Tria possuem a capacidade de se anexar a outros programas, fazendo com que este se transforme em uma backdoor, sem que se perceba nada de diferente no sistema.

2.4.3.2 Portscan
Portscan o processo de conexo em diversas portas TCP/UDP com o intuito de identificar quais portas esto em listening, ou seja, aptas para receber uma conexo. Deste modo possvel identificar alguns dados sobre o sistema, assim como servios (TCP/UDP) que o mesmo executa, sistema operacional, etc. Existem 6 tipos de Portscans: TCP Connect Scan: Este tipo de Portscan conecta na porta de destino e completa as 3 etapas do Handshake (completar a conexo): SYN - SYN/ACK - ACK. Ou seja: envia o SYN, recebe o SYN/ACK e retorna o ACK novamente. Este tipo de Portscan facilmente detectado pelo destino, devido o fato de completar as conexes (3 etapas do handshake).

Sistemas de Preveno de Intruso baseado em Software Livre: De

15

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

TCP SYN Scan: O TCP Syn Scan por outro lado, emprega uma tcnica chamada half-open scanning, ou seja: A conexo TCP no realizada por completo. O Pacote SYN enviado ao destino, se o destino retornar o pacote SYN/ACK porque provavelmente a porta esta disponvel. Ao no enviar o terceiro pacote (ACK) evitase do Portscan ser logado pelo sistema (Ao menos nas ferramentas mais rudimentares).

TCP FIN Scan: Funciona somente em Unix Based, enviando um pacote FIN na porta de destino, o mesmo responde com um sinal RST para todas as portas fechadas.

TCP Xmas Tree Scan: Deste modo, o host fonte envia 3 pacotes (FIN, URG e PUSH) para o host remoto, o mesmo retornando com um pacote RST para todas as portas fechadas.

TCP Null Scan: Esta tcnica 'desliga' todas as flags, o host remoto. Tambm envia pacotes RST para todas as portas fechadas.

UDP Scan: Com o UDP scan, o host envia um pacote UDP pra determinada porta no host de destino. Se o host responde com um sinal ICMP 'ICMP Port Unreachable', a porta esta fechada, se no recebe esta resposta, pode-se deduzir que a porta esta aberta.

2.4.3.3 Exploits locais e remotos


Exploits locais so programas geralmente feitos em C que exploram a vulnerabilidade de programas e sistemas para ganhar acesso root (de administrador). 90% dos exploits so para sistemas Linux. Os exploits locais so scripts em C que iro rodar no servidor a partir de uma shell adquirida , os exploits locais so os melhores de se usar , por sua variedade e confiana de acesso (desde que se saiba o que est fazendo). Alguns possuem pequenos trojans para dar acesso ao desenvolvedor. Existem vrios tipos de exploits locais, cada um com sua funo e seu jeito de executar.

Sistemas de Preveno de Intruso baseado em Software Livre: De

16

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Os Exploits remotos como o prprio nome j diz, so parecidos com os exploits locais, no entanto, no precisam de uma shell para hackear a mquina desejada, o que necessrio uma base para rod-lo, geralmente um sistema UNIX/Linux, pois esses exploits so, em geral, em C ou Perl; os exploits remotos exploram bugs remotamente, dando a hackers1 acesso privilegiado no sistema.

2.5 Intruso
De forma simples, pode-se dizer que um intruso algum que tenta invadir um sistema ou fazer mau uso do mesmo. Uma intruso pode ser definida como qualquer conjunto de aes que tentem comprometer a integridade, confidencialidade ou disponibilidade dos dados e/ou do sistema. Para se diferenciar as aes legtimas das nocivas, faz-se necessria a definio da poltica de segurana. comum pensar que uma instituio est sujeita, na maior parte do tempo, as tentativas de invaso externas, ou seja, ataques originados de fora da instituio, geralmente da Internet. No entanto, estudos revelam que a maior porcentagem de ataques tem origem dentro da prpria instituio (intrusos internos), que poderia melhor conhecer a topologia da rede, que sabe onde os dados sensveis esto armazenados e quais so os recursos de segurana disponveis. Levando-se em considerao o fato de que a maioria dos mecanismos de segurana implementado com o objetivo de proteger a instituio dos ataques externos, muitos ataques ocorrem e muitas vezes no so notados; ou, quando o so, j tarde demais. Fazse necessrio, ento, um mecanismo que previna os dois tipos de ataque, uma tentativa externa ou interna. Um IPS eficiente previne os dois tipos de ataques.

Hackers so pessoas com grande conhecimento de sistemas operacionais e linguagens de

programao que utilizam disso para explorar fraquezas de outras mquinas

Sistemas de Preveno de Intruso baseado em Software Livre: De

17

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

2.5.1 Classificao de uma Intruso


Todas as intruses devem estar definidas na poltica de segurana. Enquanto no for definido o que permitido e o que no permitido no sistema, intil tentar entender uma intruso. Uma intruso pode ser definida como qualquer conjunto de aes que tentem comprometer a integridade, confidencialidade ou disponibilidade dos dados e/ou do sistema. Pode-se classificar as intruses em duas classes principais: Intruso devido ao mau uso do sistema - so os ataques realizados a pontos fracos do sistema (pontos conhecidos). Eles podem ser detectados a partir da monitorao de certas aes. Intruso devido a mudana de padro - so detectados com a observao de mudanas de uso em relao ao padro normal do sistema. Primeiro monta-se um perfil do sistema, em seguida, atravs de monitorao, procura-se por divergncias significantes em relao ao perfil construdo. Como a intruso de mau uso segue padres bem definidos, ela pode ser descoberta atravs da comparao de padres em relao a auditoria do sistema. Por exemplo, uma tentativa de criar um arquivo com set UID root pode ser detectada atravs da anlise dos logs realizados pela chamadas ao sistema. Uma intruso devido a mudana de padres detectada observando-se divergncias significantes em relao a utilizao normal do sistema. Pode-se construir um modelo a partir de valores derivados da operao do sistema. Estes valores so apurados a partir de parmetros do sistema, tais como utilizao da CPU, nmero de conexes por minuto, nmero de processos por usurio, entre outros. Uma variao significativa nestes padres pode ser um indcio de intruso. Devido ao grupo de valores que podem definir a utilizao normal do sistema, pode-se assumir o seguinte:

Sistemas de Preveno de Intruso baseado em Software Livre: De

18

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

A explorao

das

vulnerabilidades

de

um

sistema

envolve

utilizao

indevida/anormal do sistema; ento, podem ser descobertas violaes de segurana a partir de padres anormais de uso de sistema. Intruses devido mudana de padres so difceis de serem detectadas. No existe um padro fixo que possa ser monitorado, desta forma deve-se trabalhar com aproximao. O ideal seria a combinao de padres humanos com programas. Desta forma, o sistema seria monitorado constantemente a procura de intruso ao mesmo tempo em que teria a capacidade de ignorar as aes de usurios legtimos.

2.5.2 Deteco de uma Intruso


Muitas ferramentas de IDS realizam suas operaes a partir da anlise de padres do sistema operacional e da rede tais como: utilizao de CPU, I/O de disco, uso de memria, atividades dos usurios, nmero de tentativas de login, nmero de conexes, volume de dados trafegando no segmento de rede, entre outros. Estes dados formam uma base de informao sobre a utilizao do sistema em vrios momentos do tempo, outras j possuem bases com padres de ataque previamente montadas permitindo tambm a configurao dos valores das bases bem como incluso de novos parmetros. Com estas informaes, uma ferramenta de IDS pode identificar as tentativas de intruso e at mesmo registrar a tcnica utilizada.

Sistemas de Preveno de Intruso baseado em Software Livre: De

19

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

3 SISTEMAS DE DETECO DE INTRUSO


Um Sistema de Deteco de Intrusos (IDS) uma ferramenta de Segurana Computacional que se bem desenvolvida e programada poder ser aliada a outros dispositivos de segurana, como firewall, para incrementar a proteo dos sistemas e dados da rede. Um IDS uma aplicao que detecta ataques na rede ou no computador. O IDS pode ajudar a tratar ameaas em invases na rede ou em sistemas computacionais. Segue alguns benefcios de se usar um IDS: Detectar um ataque: O IDS pode informar se existe um worm na rede, se a mesma est sendo atacada ou se um computado est comprometido. Fortalecer polticas: Um IDS pode monitorar uma rede interna para verificar o comportamento da rede interna e o uso de polticas aceitveis. Proporcionar trilhas de auditoria: O IDS pode prover uma trilha de auditoria, para se saber como comeou o ataque e de onde ele veio. Justificativa do recurso: Um IDS pode armazenar informaes sobre como o firewall est trabalhando e exatamente quantas pessoas esto de fora. Essa informao muito importante quando justificativas para o melhoramento do firewall e de recursos da rede so necessrios. Dessa forma, um IDS constitui uma segunda linha de defesa, que tem sido o foco de muitas pesquisas recentemente. Esse interesse motivado por um bom nmero de consideraes. Algumas dessas consideraes esto listadas a seguir: Se um intruso detectado rapidamente, ele pode ser identificado e retirado do sistema antes que qualquer dano seja feito. Quanto mais cedo se detectar um intruso, menos riscos de aes prejudiciais o sistema estar correndo; Um sistema de deteco de intruses eficiente pode servir como um meio de desencorajar a ao de intrusos; Sistemas de Preveno de Intruso baseado em Software Livre: De 20

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

A deteco de intruses habilita a aquisio de informaes sobre tcnicas de intruso que podem ser usadas para reforar a preveno na ao de intrusos; A deteco de intruses baseada na suposio de que o comportamento de um

intruso difere do comportamento de um usurio legtimo de forma que possa ser quantificado. Naturalmente, no se pode esperar que exista uma exata distino entre um ataque e uma ao normal de um usurio. Mas usando-se abordagens estatsticas e de probabilidade pode-se chegar a resultados bastante satisfatrios.

3.1 Tipos de IDS


Basicamente, os IDSes so classificados da seguinte maneira: Baseados em Host (Host Based), que realizam anlises somente no host ou servidor onde o mesmo foi instalado; Baseados em rede (Network Based), que analisam o trfego de um segmento independentemente do nmero de servidores instalados. Os IDSes baseados em rede ainda podem ter outras classificaes, geralmente baseadas em assinaturas (signature based) e baseados em trfego (traffic based). Baseados em kernel (Kernel Based), que cuida basicamente de bufferOverflow, estouro da capacidade de armazenamento temporrio. Essa classificao ser mais bem detalhada nos itens a seguir.

3.1.1 IDS baseados em Redes (NIDS)


Sistemas de Deteco de Intrusos baseados em rede so aqueles que monitoram o trfego de um segmento de rede inteiro. Uma placa de interface de rede (NIC Network Interface Card) pode operar em dois modos: Modo normal: onde os pacotes destinados ao computador (como determinado pelo endereo ethernet ou MAC do pacote) so retransmitidos da rede para o host, e quadros com outros endereos so descartados pelo host. Sistemas de Preveno de Intruso baseado em Software Livre: De 21

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Modo promscuo: tem o objetivo de analisar todo o trfego que passa por aquele segmento de rede, mesmo no sendo destinados para aquela mquina. Uma placa de rede normalmente pode ser trocada do modo normal para promscuo,

e vice-versa, usando funes de baixo nvel do sistema operacional que diz diretamente a placa de rede para fazer essa mudana. Sistemas de Deteco de Intrusos baseado em redes normalmente requerem que a placa de rede esteja em modo promscuo.

3.1.1.1 Sniffers de Pacotes e Monitores de Rede


Sniffer um programa ou dispositivo que monitora o fluxo de dados em uma rede. Sniffers de pacotes e monitores de rede foram projetados originalmente para ajudar no processo de monitorar o trfego de uma rede Ethernet. Esses produtos basicamente capturam todos os pacotes que trafegam na rede, uma vez capturados, surgem vrias possibilidades: Pacotes podem ser contados: contando os pacotes e somando seu tamanho total durante um determinado tempo (incluindo overheads como cabealhos de pacotes) possvel ter uma boa indicao da utilizao da rede. Pacotes podem ser examinados detalhadamente: por exemplo, seria possvel capturar um conjunto que chega a um servidor Web para diagnosticar algum problema com o servidor. Produtos sniffers de pacotes ficaram mais sofisticados nos ltimos anos. Programas como Ethereal e verses mais recentes do Network Monitor podem desmontar vrios tipos de pacotes para mostrar que tipo de comunicao est ocorrendo dentro dos pacotes. Sniffers de pacotes tambm podem ser usados de modo destrutivo. Por exemplo, um sniffer de pacote pode ser usado para descobrir uma senha Unix de algum observando os pacotes telnet, pois uma vez que o invasor tenha comprometido a rede, uma de suas primeiras aes poderia ser a instalao de um sniffer de pacote.

Sistemas de Preveno de Intruso baseado em Software Livre: De

22

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

3.1.1.2 Sniffers de Pacotes e Modo Promscuo


Todos os sniffers de pacotes requerem que a interface de rede esteja em modo promscuo. Somente em modo promscuo todos os pacotes recebidos pela NIC iro ser repassados para o sniffer. O sniffer normalmente requer privilgios administrativos na mquina que est sendo executado de forma que o hardware da placa de rede possa ser manipulado para estar em modo promscuo. Outro ponto a se considerar a utilizao de switchs no lugar de hubs numa rede. Observe que os pacotes recebidos em uma interface de um switch no sero sempre enviados a outras interfaces do switch. Por isso, em um ambiente que utiliza switchs no lugar de hubs (segmento nico), o uso de sniffers de pacotes freqentemente ser intil. Infelizmente, do ponto de vista da segurana, um sniffer de pacote um benefcio limitado. A tarefa de capturar todos os pacotes da rede, desmont-los, e manualmente executar uma ao baseado no contedo do pacote muito demorado, at mesmo para um grupo de especialistas treinados. Isto basicamente o que um sistema de deteco de intruso baseado em rede faz.

3.1.1.3 Tipos de NIDS


Os IDSes baseados em redes podem eventualmente ser divididos em: IDS baseado em assinaturas (signature based), a anlise realizada atravs de assinaturas de ataques onde o contedo dos pacotes analisado e comparado com ataques conhecidos, identificando anomalias atravs de uma base pr-definida. IDS baseado em trfego (traffic based), a anlise baseada nos cabealhos dos pacotes e, por definio, no h anlise de seus contedos. Na prtica, isto significa que alguns ataques no sero capturados por um IDS e vice-versa. Tambm verdade que um IDS baseado em trfego exige um esforo muito maior do profissional que realizar as anlises e identificar dentre o trfego capturado, o que ataque e o que no . O conceito de falso positivo, onde trfego legtimo Sistemas de Preveno de Intruso baseado em Software Livre: De 23

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia considerado ataque erroneamente, agora transferido para o analista responsvel. Cabe a ele garantir a identificao de ataques atravs de sua anlise.

3.1.1.4 Atividades Principais


Alguns dos tipos de deteco contra intrusos que um IDS baseado em rede pode realizar esto apresentados a seguir: Examinar pacotes que passam pela rede. Para pacotes legtimos, permitir sua passagem (talvez os registrando para futura anlise). Encerrar a transmisso do pacote enviando as mensagens connection closed do TCP ou port unreachable do ICMP para o sistema alvo e o que est enviando o pacote, quando um pacote arrisca a segurana ou integridade de um sistema. Dessa maneira, um IDS baseado em rede pode executar uma efetiva segunda camada de defesa para um sistema que est atrs de um firewall, Ilustrao 3.1. Algumas implementaes tambm usam IDS no lugar do firewall, porm, isso no recomendado. Sistemas de deteco contra intrusos baseado em rede podem executar, opcionalmente, algumas outras tarefas, por exemplo: Monitorar a rede por Port-scan, Monitorar conexes vlidas por ataques bem conhecidos, Identificar tentativas de falsificaes de IP de vrios tipos. Quando uma atividade indesejvel detectada, um sistema de Deteco de Intrusos baseado em rede pode realizar aes. Essas aes podem incluir interferncias no futuro trfego do intruso ou reconfigurar um firewall prximo para bloquear todo trfego proveniente do computador ou rede do intruso, Ilustrao 3.1.

Sistemas de Preveno de Intruso baseado em Software Livre: De

24

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Ilustrao 3.6 IDS como segunda camada de defesa da rede.

3.1.2 IDS baseados em Hosts (HIDS)


Uma vez que um pacote tenha atingido o computador destino, ainda h disponvel uma terceira linha de defesa alm do firewall e monitor de rede. Ela chamada de Sistema de Deteco de Intrusos baseado em Host, do ingls Host Intrusion Detection System (HIDS), e est disponvel em vrios tipos.

3.1.2.1 Tipos de HIDS


Os dois principais tipos de sistemas de Deteco de Intrusos baseado em host so: Monitores de rede: monitoram as conexes do host e tentam determinar se quaisquer dessas conexes representam uma ameaa. Conexes de rede que representam algum tipo de tentativa de invaso so contra-atacadas. Observe que estes so diferentes dos sistemas de Deteco de Intrusos baseado em rede devido a s capturar o trfego de rede destinado ao host em que est sendo executado, e Sistemas de Preveno de Intruso baseado em Software Livre: De 25

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia no todo trfego que passa na rede. Por essa razo eles no requerem modo promscuo da interface de rede. Monitores de host. Estes monitoram arquivos, sistemas de arquivo, logs ou outras partes do host procurando tipos especficos de atividade suspeita que poderiam representar uma tentativa de invaso (ou uma invaso bem sucedida). A equipe de administrao de sistemas pode ento ser notificada sobre qualquer problema encontrado.

3.1.2.2 Atividades Principais


As principais funes desempenhadas por um IDS de host so: 1. Monitoramento de Conexes possvel na maioria dos hosts monitorar os pacotes que tentam acessar o host antes desses pacotes serem passados para a camada de rede do prprio host. Este mecanismo tenta proteger um host interceptando os pacotes que chegam ao host antes deles causarem qualquer dano. Algumas das aes que podem ser tomadas incluem: o Detectar tentativas de conexo a portas TCP ou UDP no autorizadas, como tentativas de conectar a portas onde no h servios. Isto freqentemente indicativo de um possvel cracker fazendo um poke around (inspeo) para encontrar fraquezas. o Detectar Portscan. De novo, esta uma questo que deve ser enfocada, alertando um firewall ou modificando a configurao IP local para negar acesso ao host de um possvel invasor. 2. Monitoramento de Atividade de Login Apesar dos melhores esforos de administradores de rede e os mais recentes softwares de Deteco de Intrusos, ocasionalmente um invasor se mover silenciosamente e conseguir conectar em um sistema usando um tipo de ataque desconhecido. O invasor 26

Sistemas de Preveno de Intruso baseado em Software Livre: De

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia obter uma senha de rede por meios desconhecidos (sniffer de pacote ou outra maneira) e ter a habilidade de entra remotamente no sistema. Procurar por atividade incomum no sistema um trabalho de anlise. Esse tipo de anlise monitora tentativas de logon e logout, e alerta o administrador do sistema as atividades que so incomuns e inesperadas. 3. Monitoramento de Atividade do root O objetivo de todos invasores obter acesso de superusurio (root) ou administrativo no sistema que eles tm comprometido. Sistemas com boa manuteno e seguros que so usados como servidores Web e banco de dados iro normalmente ter pouca ou nenhuma atividade do superusurio (root) exceto em tempos especficos do dia ou noite para agendadas manutenes de sistema. Felizmente, os crackers no acreditam em manuteno de sistema. Eles raramente agem nas janelas de tempo das manutenes agendadas e freqentemente trabalham em horas estranhas do dia. Eles realizam atividades no sistema que so incomuns at mesmo para o mais ativo administrador de sistema. H uma linha de defesa: monitorar qualquer ao realizada pelo usurio root ou administrador do sistema. Muitos sistemas Unix permitem registrar todas as atividades do usurio root e pacotes como Logcheck podem ento examinar estes registros a procura de atividades incomuns e notificar sobre isso. Administradores de sistemas operacionais Open Source (cdigo aberto) tem uma opo final: alterar o kernel para registrar tipos especficos de atividades. Como isso feito est fora do escopo desse trabalho, no entanto h vrios sites na Internet que detalham como fazer isso. 4. Monitoramento de Sistemas de Arquivos Uma vez que um invasor tenha comprometido um sistema (e apesar de suas melhores esperanas e melhores esforos dos sistemas de Deteco de Intrusos que voc utilizar, ningum pode contar completamente que um dia um invasor no ir comprometer um sistema), ento comear a mudar os arquivos no sistema. Por Sistemas de Preveno de Intruso baseado em Software Livre: De 27

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia exemplo, um invasor bem sucedido poderia querer instalar um sniffer de pacote ou Portscan, ou modificar alguns dos arquivos do sistema ou programas para desabilitar algum mtodo de Deteco de Intrusos. Instalar um software no sistema normalmente envolve modificar alguma parte do sistema. Estas modificaes normalmente sero na forma de modificar arquivos ou bibliotecas no sistema. Programas como Tripwire, Fcheck e AIDE so projetados para detectar quando arquivos so modificados e alertar o administrador do sistema sobre essas mudanas. Por exemplo, as seguintes abordagens podem ser utilizadas: o Criar MD5 ou outro checksum criptogrfico de tudo do sistema de arquivo e armazenar estes em bancos de dados. Quando um arquivo mudar, seu checksum ir mudar. o Armazenar a data e hora de criao e modificao de todos os arquivo do sistema de arquivos. Procure por quaisquer mudanas nesses tempos. o Manter um registro de qualquer programa suid (executado como root por qualquer usurio) do sistema. Se quaisquer desses ou mudar ou se um novo for instalado ou apagado ento h um problema. o Os mtodos usados pelo Tripwire, Fcheck e AIDE variam um pouco, mas eles so todos baseados nos mtodos anteriores. Estes programas tambm se preocupam em ter certeza de que o banco de dados de checksum criptogrfico conhecido no foi comprometido. Por exemplo, seria possvel para um invasor com conhecimento de sistemas operacionais e softwares de deteco de intrusos modificar os arquivos do sistema e tambm modificar o checksum criptogrfico do banco de modo que nada pareceria ter sido modificado.

Sistemas de Preveno de Intruso baseado em Software Livre: De

28

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

3.1.3 IDS baseados em kernel


Sistemas de deteco de intrusos baseados em kernel so uma nova forma de arte e esto comeando a ser utilizados em plataformas mais comuns, especialmente no Linux e outros sistemas UNIX.

3.1.3.1 Atividades Principais


H dois sistemas principais de deteco de intrusos baseado em kernel disponvel para Linux. Estes so OpenWall e LIDS. Estes sistemas utilizam a abordagem de prevenir buffer overflows, aumentando a proteo do sistema de arquivos, bloqueando sinais e geralmente dificultando um invasor de comprometer um sistema. O LIDS tambm previne certas aes do usurio root como instalar um sniffer de pacote ou modificar as regras do firewall.

3.2 Consoles e Sensores


Consoles e sensores so responsveis pela averiguao do trfego de um determinado segmento da rede da empresa, onde normalmente esto localizados recursos crticos como servidores. Eles no conhecem quem pode ou no acessar determinado recurso, o que admitido ser acessado, nem quando o recurso pode ser acessado. Eles apenas sabem quais so os padres de tentativa de mau uso dos recursos disponibilizados naquele segmento. Pode se entender que o console e o sensor ficam espera de aes suspeitas e so capazes de avisar quando essas atividades ocorrem.

3.2.1 Gerncia
A gerncia geralmente feita por uma console, que a interface entre o sistema de deteco de intrusos e o administrador. O console recebe todas as informaes que foram concentradas e serve como apresentao do panorama atual, bem como pode armazenar um conjunto de registros de todas as ocorrncias de mau uso. Essas informaes ajudaro

Sistemas de Preveno de Intruso baseado em Software Livre: De

29

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia ao administrador determinar qual o perfil de cada uma das tentativas de invaso mais freqentes. Uma verificao de deteco de intruso baseada na anlise de console do IDS. Uma empresa, ao comprar um IDS observa os seguintes fatores: Real-Time; Capacidade de resposta automtica; Deteces reais; Interao do sistema com os sistemas operacionais como Windows Server/UNIX. Para todas as deteces mostradas no console, o analista tem a oportunidade de analisar o evento desejado. O sistema determina a construo de um relatrio, ao qual o analista rev e comenta antes de enviar. Um sensor fora da proteo do firewall definido para detectar ataques que originalmente venham da Internet. DNS, e-mail, e Servidores Web so o objetivo principal de todos os atacantes direcionados Internet. Estes sistemas de deteco tm interagido com a Internet para uma melhor proteo contra invases. Desta forma, deve-se ter um software de IDS que informe bem por meio do console tudo que acontece na rede.

3.2.2 Sensores
Um sensor responsvel por enviar alarmes para um console de gerenciamento quando uma atividade no autorizada for detectada. O sensor pode fornecer detalhes da atividade bem como controlar outros sistemas, como roteadores, para terminar as sesses no autorizadas. Um sistema baseado na deteco de intruso no estar trabalhando corretamente se o sensor no estiver colocado corretamente. Apesar de nem todos os ataques poderem ser detectados, um sensor na sada do firewall a melhor localizao para tentar detectar o ataque. O benefcio desse tipo de localizao que a anlise permite determinar quais so os tipos de ataques a que um site Sistemas de Preveno de Intruso baseado em Software Livre: De 30

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia e firewall esto expostos. recomendado sensores IDSes em todos os segmentos de rede e IPSes nas interconexes mais importantes, como, por exemplo, redes de parceiros, Ilustrao 3.2.

Ilustrao 3.7 Localizao dos sensores.

O lugar mais comum para a localizao de um sensor fora do firewall, mas certamente no o nico lugar que beneficia a empresa. Muitos sensores podem ser usados em lugares opcionais para o suporte da segurana, incluindo os seguintes: Redes interligadas podem direcionar conexes para clientes e fornecedores muitas vezes sobre a proteo do firewall pessoal;

Sistemas de Preveno de Intruso baseado em Software Livre: De

31

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Sub-Redes que parecem ter o objetivo externo (Internet), ou que tm mostrado indicaes de intruso ou outras irregularidades.

3.2.2.1 Classificao de sensores


De acordo com o seu campo de ao, os sensores podem ainda ser classificados de dois tipos: Sensores de rede: Estes devem localizar-se em segmentos estratgicos, observando o trfego da rede, o formato de pacotes, entre outros; Sensores de hosts: Estes ficam dentro dos servidores crticos, observando as aes realizadas no sistema operacional, as aes dos servios e o comportamento da pilha TCP/IP.

3.2.2.2 Caractersticas de sensores


Os sensores devem interagir entre si a fim de construrem uma matriz de eventos que tem por objetivo a qualificao do padro de ataque, minimizando, desta forma, a ocorrncia de alertas falsos (falso positivo). Outras caractersticas fundamentais so: o gerenciamento centralizado, a

possibilidade do sensor interagir com outros elementos de rede como firewall, roteadores e consoles de gerncia; e a possibilidade de construir uma base de conhecimento centralizada de forma a permitir uma viso ampla do nvel de segurana da rede. Desta forma, quando algum ataque for detectado pelos sensores, torna-se possvel aes de conta-ataque que podem ser: envio de e-mail para o administrador, envio de mensagem via pager, ativao de alertas nas estaes de gerncia via SNMP, reconfigurao de elementos de rede como firewall e roteadores, e at mesmo o encerramento da conexo atravs do envio de pacotes de reset (flag RST do TCP) para a mquina atacante e para a mquina atacada, com o objetivo de descarregar a pilha TCP. Em um sistema de segurana, uma caracterstica de fundamental importncia o aprendizado constante com a utilizao de estratgias mltiplas. Sistemas de Preveno de Intruso baseado em Software Livre: De 32

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

3.3 Assinaturas
Os programas de Deteco e Preveno de Intruso sabem como selecionar uma poltica de segurana. Cada sistema de preveno de intrusos trabalha o fator sites/firewall em seu Sistema de preveno de intrusos. Infelizmente, muitas anlises que utilizam a deteco de intruso no do importncia s polticas dos filtros e procuram apenas indicadores (assinaturas) de ataques conhecidos. Existem razes preliminares para que isso acontea: O firewall e o IDS no buscam muita informao; O analista no explora a ferramenta.

O resultado que se o sistema for projetado para aceitar uma poltica de segurana, muitos locais podem no adotar a mesma poltica. A maioria de sistemas de Deteco de Intrusos muitas vezes no so configurados para combinar com todas as polticas. Isto sobrecarrega o filtro dos softwares de deteco. As assinaturas de intruso esto ainda em desenvolvimento. No obstante, softwares de deteco de vrus conseguem filtrar, atualmente, cerca de 20.000 deteces de assinaturas de vrus. As indstrias de antivrus so capazes de reagir novos vrus rapidamente. Freqentemente, muitos trabalhos so desenvolvidos para analisar uma assinatura isolada e atualizar o software de antivrus para incluir no filtro o novo cdigo disponvel e distribu-lo pela Web.

3.4 Estmulos e Respostas


Grande parte dos IDSes possuem altas taxas de falsos positivos. Em outras palavras, no definem com absoluta certeza se o trfego que atravessa a rede prejudicial ou incuo e alarmam mesmo quando no h problema. Ento, cabe ao analista fazer a distino entre um ataque real e um falso positivo. Para tomar essa deciso, preciso definir quando um trfego aparenta ser normal e quando no . Ou seja, preciso definir o comportamento esperado para uma aplicao tpica e para os protocolos de rede. Sistemas de Preveno de Intruso baseado em Software Livre: De 33

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia As RFCs so documentos padres sobre os quais o TCP/IP e a Internet foram construdos. Elas descrevem como algo deve supostamente trabalhar quando todos seguem as mesmas regras. Infelizmente os hackers descobriram que diferentes implementaes do TCP/IP reagem de forma diferente com o intuito de violar os padres definidos nas RFCs. Esse um dos principais artifcios de hacking: explorar condies excepcionais que os desenvolvedores do cdigo TCP/IP no previram. Hackers atentam para a identificao do sistema operacional, enviando estmulos estranhos e observando as respostas e reaes dos hosts. Existem respostas nicas para os mesmos estmulos dependendo das circunstncias e da disponibilidade do servio requisitado. As respostas tambm dependem da capacidade do host ou roteador de responder a uma conexo em particular. Cada

protocolo possui suas respostas esperadas. Existem inmeras variaes de atividades anormais, com diferentes propsitos. Algumas tentam evadir a vigilncia dos IDSes/IPSes e enganar a filtragem. Outras so descaradamente hostis. Deve-se tomar cuidado para no confundir atividades que realmente so respostas normais do host e tambm entender que programas como o Nmap usam um estmulo nico para deduzir respostas, identificando caractersticas peculiares do sistema operacional. No se deve nunca menosprezar as atividades percebidas: um echo reply de ICMP, no necessariamente significa que o host de origem no seja um agressor. Se h alguma dvida quanto a atividade observada, o melhor conselho examinar todo o datagrama capturado e verificar seus campos de cabealho e dados procurando por anomalias. Deve-se adotar a atitude de que nada previsvel quando se analisa o trfego de uma rede.

Sistemas de Preveno de Intruso baseado em Software Livre: De

34

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

4 SISTEMAS DE PREVENO DE INTRUSO


Os Sistemas de Preveno de Intrusos (IPS) constituem uma nova ferramenta que, atualmente, considerada uma das primeiras linhas de defesa de um sistema de informaes. Em poucas palavras, o sistema age atravs da monitorao silenciosa dos pacotes de rede, alertando quando identificar uma determinada seqncia que venha a se concretizar como um ataque. Na maioria dos casos, o IPS toma aes pr-ativas, derrubando as conexes mal intencionadas antes que venham a causar algum prejuzo para o sistema protegido. A preveno de intruso uma tecnologia recente e promissora na rea de segurana de redes. Os sistemas de preveno de intruso surgiram como uma evoluo dos IDSes e combinam a capacidade de profunda inspeo de pacotes com caractersticas de filtragem naturais dos firewalls, porm de forma transparente. A diferena entre IPS e IDS est no fato de que, enquanto os IDSes agem somente aps a ocorrncia da intruso, como um alarme que detecta a presena de um invasor, os IPSes foram desenvolvidos como medidas de preveno, como o prprio nome j diz, para bloquear possveis ataques antes que eles tenham sucesso, ou pelo menos para limitar suas conseqncias negativas, caso venham a ocorrer. IPS e IDS so ferramentas de segurana que se complementam, por isso no podem ser vistos como solues opostas. A tecnologia de IPS tem evoludo muito nos ltimos tempos, mas surge como um novo recurso de proteo para uma rede, no como um substituto a outras tecnologias.

4.1 Surgimento da Necessidade da Pesquisa


IPS uma adio essencial, mas no constitui um substituto aos firewalls (barreiras de proteo). Quando esses so configurados corretamente evitam o trfego indesejvel. Uma vez que o intruso tenha acesso a um sistema dentro da rede, outros sistemas Sistemas de Preveno de Intruso baseado em Software Livre: De 35

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia tornam-se vulnerveis, e embora o firewall no pare esse tipo de ataque, o IPS sim. Monitorando o trfego da rede atrs do firewall, o IPS pode detectar e terminar tentativas de obter acesso no autorizado. Outra vantagem que utilizando um IPS dentro da rede podese reduzir boa parte do trfego indesejvel, ou seja, mesmo se o administrador escolher no terminar as conexes indesejveis, vrios alarmes sero gerados pelo IPS para indicar que o firewall no est fazendo seu trabalho adequadamente.

4.2 Princpios fundamentais


4.2.1 Defesa ativa
Um dos ramos principais e novos da preveno do intrusos a chamada defesa ativa, ao contrrio da defesa passiva, como monitorao passiva de sistemas e redes, as listas de controle de acesso (ACLs) nos roteadores e os firewalls. A defesa ativa significa a anlise da condio dos sistemas e das redes fazendo que apropriado para tratar o que est errado. De acordo com Dave Dittrich da Universidade de Washington, h quatro nveis da defesa ativa: Levantamento de dados locais, anlise e bloqueio; Levantamento remoto de dados externos; Levantamento remoto de dados internos; e Alteraes de dados remotos, supresso do ataque e interdio.

A Ilustrao 4.1 mostra uma possvel arquitetura da defesa ativa. Os numerosos hosts dentro de uma rede hipottica coletam dados de deteco de intrusos e emitem a um analisador central, sempre que apropriado, emite mudanas de polticas aos hosts individuais, mantm e executam determinadas instrues na memria, mudam o ndice de determinados arquivos, e assim por diante. O firewall externo a camada mais externa da infra-estrutura da defesa ativa, detecta ataques relativamente diretos tais como SYN flooding. Os IDS baseado em rede, dentro dessa rede, recolhem informaes dos sensores Sistemas de Preveno de Intruso baseado em Software Livre: De 36

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia localizados no gateways externos e na entrada de diversas sub-redes; envia mudanas de ACLs para os firewalls e dados aos analisadores centrais onde as bases dos ataques sero decifrados.

Ilustrao 4.8 Princpio fundamental de defesa ativa.

Um dos fatores mais importantes (e controversos) da defesa ativa e da preveno de intrusos est em determinar uma resposta apropriada. A noo da resposta apropriada inclui uma considerao chamada proporcionalidade de resposta, o que assegura que a resposta seja proporcional ameaa. No caso de um host est inundando uma rede com pacotes fragmentados, bloquear o trfego desse host, certamente a resposta mais apropriada. Se uma grande quantidade de hosts operados por uma ISP atacassem repetidamente uma organizao, o bloqueio de todo o trfego do range de endereos IPs da ISP, poderia ser uma possvel resposta. Alguns defensores da defesa ativa acreditam que mesmo que um host remoto esteja atacando repetidamente a rede de uma organizao, contra-atacar o host talvez com a inundao utilizando pacotes fragmentados, causando desse modo um crash, seria o curso de uma ao apropriada. Embora a preveno de intrusos parea promissor (como mencionado), ainda muito recente. As taxas de ataques externos para sistemas de preveno de intrusos, no so elevados a ponto de necessitar um excesso de preocupao com ataques. Adicionalmente os alarmes falsos podem facilmente causar um eficiente DoS em sistemas individuais. Os sistemas de preveno de intrusos futuramente, podero impedir uma Sistemas de Preveno de Intruso baseado em Software Livre: De 37

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia quantidade maior de ataques, no somente a nvel de host individuais, mas tambm dentro de redes de organizaes e possivelmente dentro da prpria Internet. A ltima possibilidade particularmente intrigante.

4.2.2 IPS
Os sistemas IPS so similares aos IDSes. Podem ser IPS baseados em hosts (HIPS), que trabalha melhor protegendo a aplicao ou um IPS baseado em rede (NIPS ou Inline). As aes do usurio, devem corresponder a aes predefinidas em uma base de conhecimento; se uma ao no estiver na lista de aceitaes, o IPS impedir a ao. Ao contrrio do IDS, no IPS a lgica deve ser aplicada antes que a ao esteja sendo executada em memria. Outro mtodo do IPS consiste na comparao dos checksums de controle de arquivo, h uma listagem de controle de checksums bons que verificada, antes de permitir que o arquivo seja executado, se no for permitido, o IPS impedir as chamadas no sistema. Um IPS consiste tipicamente em quatro componentes principais: Traffic normalizer Service scanner Detection engine Traffic shaper O traffic normalizer interpreta o trfego na rede, analisa e reestrutura os pacotes, assim como executa as funes bsicas de bloqueio. O traffic normalizer alimenta a detection engine e o service scanner. O service scanner, constri uma tabela de referncia, que classifica a informao e ajuda o traffic shaper a controlar o fluxo de informaes. A detection engine faz uma comparao entre a tabela de referncia e determina a resposta apropriada. A figura abaixo mostra o processo.

Sistemas de Preveno de Intruso baseado em Software Livre: De

38

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Ilustrao 4.9 Arquitetura de IPS.

Os pontos positivos da preveno de intrusos: Protege a camada de aplicao; Previne ataques em vez de simplesmente reagir a eles; Pode usar uma aproximao de uma forma particular; Fornece uma defesa profunda; Permite correlao de eventos em real-time; Os pontos negativos da preveno de intrusos: Gera falso-positivos, que podem criar problemas srios se as respostas automatizadas forem usadas; Cria gargalos na rede; uma tecnologia nova; caro.

4.2.2.1 Network Intrusion Prevention (NIPS)


A principal diferena entre uma rede com sistema de resposta ativa e uma rede com IPS um dispositivo inline, isto , est situado exatamente no caminho que os pacotes passam para chegar na rede. Um roteador pode ser um dispositivo inline, pois ele responsvel pela passagem dos pacotes IP entre redes conectadas.

Sistemas de Preveno de Intruso baseado em Software Livre: De

39

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Quando um IPS est inline, entre um atacante e o sistema-alvo. No somente os ataques com grande nmero de mecanismos podem ser parados, mas tambm ataques individuais. O IPS inline no obrigado a repassar pacotes determinados como maliciosos. Por exemplo, um IPS inline pode derrubar portas em um switch, interagir com polticas de firewall externos ou ACLs dos roteadores e gerar trfego de sesso na camada de transporte. Outra contramedida importante disponvel nos IPSes inline a modificao dos dados na camada de aplicao. Essa tcnica permite o IPS alterar o pacote de dados de modo que os ataques na camada de aplicao torne-se intil antes de atingir o alvo. 4.2.2.1.1 Contramedidas Existem 4 classes de contramedidas que um IPS de rede pode utilizar para parar um ataque na rede. Cada classe aplica-se uma camada da pilha de protocolos. As camadas de sesso e apresentao do modelo OSI foram colocadas dentro da camada de aplicao. Abaixo, segue a lista das classes de contramedidas e a lista das camadas correspondentes na pilha de protocolos: Contramedidas na camada de enlace: Administrativamente shutdown na porta do switch que est saindo o ataque. Essa atitude s praticvel para ataques que so gerados de um sistema local. Ter a possibilidade de parar a porta importante, desde que no seja um shutdown indefinido. Contramedidas na camada de rede: Interagir com o firewall externo ou roteador, para adicionar uma regra geral para bloquear todas as comunicaes de endereo IP individual ou a rede inteira. Um IPS inline pode realizar a mesma coisa sem ter que apelar para um dispositivo externo, desde que pacotes de um IP especfico possa ser simplesmente bloqueado depois que um ataque foi detectado. Similar a respostas da camada de enlace, os timeouts so importantes na camada de rede, desde que as modificaes nas regras do firewall ou nas ACLs dos roteadores possam ser removidas. Sistemas de Preveno de Intruso baseado em Software Livre: De 40

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Contramedidas na camada de transporte: Gerar pacotes TCP RST para derrubar sesses TCP maliciosas ou emitir algum pacote ICMP de erro, dos diversos disponveis para responder a um trfego UDP malicioso. Os timeouts, no so aplicveis aqui, porque as bases de contramedidas so dribladas pelo atacante a cada sesso ou a cada pacote.

Contramedidas na camada de aplicao: Alertas de dados maliciosos na camada de aplicao no podem causar danos antes de alcanar o sistema alvo. Essa contramedida requer que o IPS esteja inline, no caminho da comunicao. Previamente calculado o checksum na camada de transporte deve ser recalculado nessa camada. Similar a camada de rede, timeouts no so aplicveis. Desde que os efeitos da troca de dados na camada de aplicao sejam transitrios e no desapaream uma vez que os pacotes alterados so encaminhados atravs do IPS

4.2.2.1.2 Resposta ativa baseada em host Um sistema de resposta ativa para host normalmente implementado em um software e instalado diretamente em um host. Uma vez que um evento suspeito foi detectado em um host (atravs do arquivo de log, deteco de um arquivo especfico, chaves de registros associados a algum exploid conhecido, ou um server suspeito conectado em uma porta alta), um sistema de resposta ativa baseada em host carregado com aes. Como em uma resposta ativa baseada em rede, a expectativa para um sistema de resposta ativa baseada em host as contramedidas no necessariamente preveniro um ataque inicialmente bem sucedido. A nfase est em tentar, amenizar os efeitos e danos causados por um ataque depois da deteco. Depois que um ataque detectado, repostas automticas, podem incluir alteraes de permisses em filesystems, mudando as permisses de acessos dos usurios ao sistema, automaticamente remover worms ou vrus do host e ento pegar os pasos para remover o cdigo ofendido atravs das operaes normais do filesystem . O VirusScan um bom exemplo de antivirus e removedor de produtos. A adio de novas regras no firewall uma resposta que normalmente requer o Sistemas de Preveno de Intruso baseado em Software Livre: De 41

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia conhecimento de um endereo IP ofendido o qual, s vezes, pode ser extrado do log do sistema. Isso pode ser usado para adicionar uma regra de bloqueio contra um IP ofendido para uma poltica de filtro de rede local em reposta a monitorao feita por um backdoor em um sistema Linux.

4.2.2.2 Host Intrusion Prevention (HIPS)


Existem muitas tcnicas de resposta ativa e preveno de intrusos, que podem ser colocados a nvel de host. Com o acesso direto as APIs do sistema operacional e no prprio kernel, o realce de segurana tido recursos por um host IPS podem ser importantes. A preveno de ataques no somente alertada, mas h ganho na habilidade de detectar atividades maliciosas, desde que truques de evaso no network IDS e links encriptados sejam sem sentido. As tcnicas de IPS baseados em host incluem mecanismos que sero reforados pelo kernel do sistema operacional, cdigo de especfico de aplicaes que rodam diretamente com o processo de endereamento de espao de uma aplicao, e medidas de proteo da pilha que sero reforados por um compilador especializado (ou runtime no kernel). Quando uma aplicao est comprometida, tentar provavelmente executar uma operao que requer uma chamada de sistema, fornecida pelo kernel (exemplo inicializao de um novo servidor, escrita no disco, ou fazendo uso de uma interface de rede todos requerem o uso interveno do kernel). O mecanismo de preveno construdos diretamente no kernel a nica coisa que permite ou nega a qualquer aplicao a habilidade de executar chamadas no sistema. O Linux Intrusion Detection System (LIDS), fornece um patch para o Kernel do Linux que implementa restries a chamadas de sistema. Tambm deve ser mencionado que no modelo normal do Unix, enquadra-se na categoria Discretionary Access Control, que no to forte quanto as implementaes de segurana

Sistemas de Preveno de Intruso baseado em Software Livre: De

42

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia e capacidade de preveno dos sistemas que implementam o Mandatory Access Control dentro do Kernel do sistema operacional. Preveno de Buffer Overflow das mais importantes tecnologias HIPS disponvel devido a vulnerabilidades existentes. Mtodos de preveno de buffer overflow (ou pelo menos os seus efeitos) so categorizadas em tempo de compilao e tempo de execuo: Mtodos de tempo de compilao envolvem modificaes especiais de compiladores que interferem com o objetivo final de um ataque o qual forar uma aplicao a rodar um cdigo arbitrrio fornecido pelo atacante; Mtodos de tempo de execuo so fortalecidos pelo Kernel do sistema operacional que inclui anormalidades como tornar uma pilha no executvel. 4.2.2.2.1 Contramedidas Algumas contramedidas de resposta ativa e preventiva podem ser utilizadas em um host para responder e mitigar os ataques: Modificao no sistema: alterao de permisses no sistema de arquivos, controle de usurios, remoo de vrus e worm e reconfigurao do conjunto de regras do firewall local aps o ataque. Todas essas so mecanismos de resposta ativa. Mecanismos do kernel: O sistema chama mecanismos de interceptaes e de MAC fortalecidos por aplicaes de preveno de kernel, a partir de recursos comprometidos, o sistema utilizado por um atacante durante e aps t-lo comprometido finalizado usando os servios providos pelo kernel; Preveno de buffer overflow: medidas de uso de tempo de compilao e tempo de execuo.

4.3 Riscos e impactos


A promessa da proteo de intruso muito atrativa, mas h alguns riscos que no so to bvios. Estes riscos devem ser considerados no planejamento de utilizao de um IPS incluindo o Snort que opera em uma das modalidades do IPS. Sem dvida h lugar Sistemas de Preveno de Intruso baseado em Software Livre: De 43

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia para o IPS na maioria de ambientes. O mais freqente e pode ser melhor utilizado como uma outra camada em uma estratgia robusta de defesa profunda. Alguns dos riscos associados ao IPS so: a. Interceptao de sesso e identificao do IPS Quando um sensor do Snort detecta um ataque e termina uma sesso TCP com o envio de um pacote RST, as caractersticas do pacote podem permitir que o atacante descubra no s que um IPS foi responsvel pela finalizao da sesso, mas tambm sobre que tipo de sistema, o IPS est rodando. Existem algumas ferramentas que analisam como os sistemas operacionais tratam e transmitem os pacotes, com isso podem fazer uma suposio sobre o funcionamento do Sistema operacional. Uma dessas ferramentas, o p0f (Passive OS fingerprint Tools). Ele simplesmente fica escutando os pacotes na rede , o p0f, pode determinar que tipo de mquina emitiu pacote de RST, permitindo ao atacante descobrir que um IPS est emitindo tais pacotes. Sabendo disso o atacante pode procurar uma forma de passar ou tornar o IPS inoperante. b. Quebrar o bloqueio com um Exploid Se houver um rpido retardo entre a deteco do ataque pelo IPS e uma mudana na lista de controle de acesso no dispositivo de borda. O ataque poder acontecer com a utilizao de um exploid, para estabelecer uma conexo atravs de um backdor. Mesmo quando se utiliza o IPS e tudo est conforme o planejado, o dispositivo de borda, pode est atrasado, o que um outro argumento para adotar uma poltica de defesa profunda. c. Auto-imposio Negao de servio Alterar o endereo IP de origem em um pacote uma coisa trivial. O pacote chega ao IPS e dispara uma solicitao de alterao na lista de controle de acesso em um roteador ou firewall de borda, obstruindo assim o endereo de origem alterado. Se o endereo alterado um sistema que a rede necessita, resultar em uma condio de negao de servio. O spoofing de DNS, impede a resoluo de nomes, spoofing em um servidor de e-mail impede a distribuio dos mesmos, pares de roteadores de borda Sistemas de Preveno de Intruso baseado em Software Livre: De 44

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia (vizinhos BGP) com o endereo alterado, podem para todo o trfego de internet. A maioria das solues de IPS tentam fazer uma lista de excluso (lista branca), que contenha endereos que nunca podero ser bloqueados, impedindo assim a negao de servio. O nico problema assegurar que a lista de excluso esteja completa. d. Bloqueio de trfego legitimo Se um trfego correto identificado de forma errada, como um ataque ou um trfego bloqueado, isso ter srias conseqncias. Por exemplo uma empresa que possui um comercio baseado em web, possui o seu trfego bloqueado isso acarretar em perda de dinheiro. No h nenhuma regra real a ser seguida. Tem que conhecer como a rede opera de forma normal (mesmo de forma extrema, mas normal). A melhor dica deixar o IPS rodando em modo de teste durante um perodo de tempo, prestando ateno no funcionamento do IPS em vrios horrios, ajustando os pontos iniciais e os alertas de modo que o trfego legitimo no seja bloqueado. Uma anlise completa de eventos bloqueados deve ser feita sobre o curso de vida do IPS para assegurar exatido nos testes. Falsos positivos podem causar no IPS bloqueio de trfego legtimo. Um cuidado extremo deve ser tomado para permitir somente a obstruo de alertas que dificilmente geram falsos-positivos . Essas precaues podem permitir que alguns ataques ocorram, mas no os ataques que certamente causaro problemas.

4.4 Solues disponveis no mercado


Alguns IPSes disponveis no mercado sero descritos e algumas das caractersticas identificadas devem ser observadas ao escolher um Sistema de Preveno de Intrusos. Os sistemas aqui examinados representam um espectro do que est disponvel, incluindo pesquisas, sistemas comerciais e sistemas com cdigo aberto, no entanto, muitos outros esto surgindo dia a dia. Sistemas de Preveno de Intruso baseado em Software Livre: De 45

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Nem sempre fcil identificar a melhor soluo de deteco de intrusos a ser implantada. Requisitos tcnicos, preos elevados e disponibilidade de recursos, sejam tecnolgicos ou humanos, so alguns motivos que podem inviabilizar a instalao das ferramentas. Logo, descobrir qual o melhor sistema ou o mais indicado para um certo ambiente no uma tarefa fcil.

4.4.1 Ferramentas gratuitas


No contexto das ferramentas de distribuio gratuita, pode-se citar as seguintes:

4.4.1.1 Snort Inline


O Snort uma aplicao de segurana desenvolvida por Marty Roesch baseado na licena GNU/GPL. As trs principais funes de deteco: examinador de pacotes (packet sniffer), registrador de pacotes (packet logger) ou um NIDS. O Snort_inline, desenvolvido inicialmente por Jed Haile, surgiu como um patch para o Snort. O Snort_inline um Intrusion Prevention System (IPS) que usa assinaturas de

Intrusion Detection System (IDS) existentes para tomar as decises dos pacotes que passam por ele. Ele usa novos tipos de regras de como sero tratados esses pacotes, por exemplo, descarta ou rejeita. O Snort est se tornando rapidamente a ferramenta mais escolhida para preveno e deteco de intruses e, por ser objeto de estudo deste projeto, ser descrito com mais detalhes nos prximos captulos.

4.4.1.2 LIDS
LIDS (Linux Intrusion Detection System) um sistema de deteco de intruso, feito para proteger sistemas de invaso pelo root. Ele funciona desabilitando algumas funes do sistema, quando for preciso fazer operaes de administrao do sistema, pode-se desabilitar o LIDS.[16]

Sistemas de Preveno de Intruso baseado em Software Livre: De

46

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia LIDS um conjunto indispensvel de ferramentas que vem sofrendo muitas melhorias nos ltimos anos e que ele est no auge do seu potencial com a verso 2.4.24 e 2.6 do kernel do Linux. As ferramentas que acompanham o LIDS so muito fceis de utilizar e configurar. Quem trabalha com segurana e deseja alcanar um nvel superior de segurana dentro do seu sistema. O LIDS, no uma ferramenta para se utilizar em micros de usurios devido a robustez de sua configurao, o que causaria uma srie de problemas que o tornam de certa forma invivel, sendo que tambm temos timas ferramentas de IDS para Linux que usurios podem utilizar, como Snort, Portsentry, entre outras. Com o LIDS pode-se restringir qualquer acesso sistema e ele manter o administrador totalmente informado de tudo que esta havendo no sistema, qualquer tentativa de burlar sistemas protegidos pelo LIDS documentada em emails e nos logs.

4.4.1.3 SnortSam
O SnortSam um agente que se comunica com o Snort para reconfigurar um (ou mais) firewalls de modo a impedir conexes hostis. O Snort possui um plugin que lhe permite interagir diretamente com a firewall, no entanto, este no muito flexvel. Para funcionar com o SnortSam, necessrio instalar um plugin no Snort de modo que estes possam interagir. Com a criao do Conceito de Agente (SnortSam) e Sensor (Snort), pode-se retirar o trfego ao sensor, aumentando a sua performance, e criar uma rede paralela do trfego (uma hiptese) com o(s) sensor(es) e agente(s) a comunicarem entre si, possibilitando que um nico sensor que tenha detectado um ataque de um determinado host, proceda a uma ordem de bloqueio para diversos firewall de uma vez s.

Sistemas de Preveno de Intruso baseado em Software Livre: De

47

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia O nico trabalho do SnortSam (instalado diretamente no FW) aceitar pedidos dos seus sensores (pode ter vrios), verificando a autenticidade se para isso tiver sido configurado, e atuar sobre o seu firewall.

4.4.2 Ferramentas comerciais


WatchGuard, NetScreen, Top Layer, Lucid Security, TippingPoint, Vsecure

Technologies, Network Associates, ISS, Enterasys, Arbor Networks, Secos, NFR, Nitro Security, CA, SourceFire, Tripwire, Ubizen, Symantec.

4.4.2.1 TippingPoint
Intrusion Prevention System (IPS) TippingPointTM garante aos clientes proteco antiphishing sem quaisquer custos adicionais. A TippingPoint, uma diviso da 3Com, foi uma das primeiras solues globais baseada em rede para bloquear os ataques de phishing e prevenir o roubo de identidades. O IPS utiliza vrios mecanismos para detectar e evitar as aes de phishing, incluindo proteo contra vulnerabilidades, proteo baseada na deteco de padres e proteo baseada no comportamento. O phishing ocorre quando um perpetrador se faz passar por uma organizao legtima por forma a obter informaes pessoais ou financeiras de um indivduo e utiliz-las para fins fraudulentos. Dado que, regra geral, as aes de phishing parecem provir de uma fonte confivel, extremamente difcil evit-los e podem acarretar grandes custos para aqueles que so atacados. Os phishers utilizam vrias etapas no processo do roubo de identidade e o IPS TippingPoint bloqueia cada uma das fases dessas tentativas.

4.4.2.2 SourceFire
Hoje, as realidades de um permetro se dissolvendo e aquantidade de sistemas de deteco de intruso (IDS) e sistemas de preveno de intruso (IPS) esto levando Sistemas de Preveno de Intruso baseado em Software Livre: De 48

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia empresas a repensar seus paradigmas de segurana de rede e utilizar um approach mais eficaz. A SourceFire, criou o conceito SourceFire 3D - Descobrir, Determinar e Defender - o primeiro e nico sistema de defesa de rede inteligente e detalhado que unifica tecnologias de intruso e gerenciamento de vulnerabilidade para fornecer aos clientes a segurana de rede em tempo real mais efetiva para os desafios do mundo de hoje. O conceito SourceFire 3D um processo de descobrir riscos, vulnerabilidades e ameaas em tempo real, totalmente integrado; determinando o impacto nos negcios; e tomando a ao mais precisa e apropriada para defender a rede. O sistema SourceFire 3D, incluindo SourceFire Intrusion Sensors e Agentes, SourceFire RNA Sensors e o SourceFire Defence Center, oferece a maior segurana efetiva disponvel. Na verdade, todos appliances SourceFire so Plug-n-Protect para o mais baixo custo de propriedade. Cada appliance inclui hardware, software, sistema operacional e banco de dados - pr-instalados para facilidade de instalao, ajustado para alto desempenho e auto-manuteno.

Sistemas de Preveno de Intruso baseado em Software Livre: De

49

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

5 SNORT
O Snort foi originalmente desenvolvido em 1998 por Marty Roesch apenas como sniffer, hoje um sistema de deteco/preveno de intruso leve, capaz de realizar anlise de trfego e registro de pacotes em tempo real em redes IP, porm suporta outras, como IPX, por meio de extenses personalizadas. Ele pode realizar anlise de protocolos, similaridades ou pesquisa de contedo e pode ser utilizado para detectar uma variedade de ataques e exames, como buffer overflows, stealth port scans, ataques CGI, exames de SMB, tentativas de OS fingerprint e muito mais. O Snort utiliza uma linguagem de regras flexvel para descrever o trfego que coletado ou passado por ele, bem como um mecanismo de deteco que utiliza uma arquitetura modular do tipo plug-in. Alm disso, o Snort tem uma capacidade de alertar os dados em tempo real, bem como incorpora mecanismos de alerta para syslog, para um arquivo especificado pelo usurio, para um socket UNIX ou at mesmo mensagens do tipo WinPopup para clientes Windows utilizando smbclient. Snort tem quatro principais funcionalidades. Ele pode ser configurado nos modos: Sniffer (farejador), onde simplesmente l os pacotes da rede e exibe as informaes continuamente na tela, visualizvel por:
# snort -v

Packet Logger (registrador de pacotes), onde os registros dos pacotes so armazenados em disco, til para depurao de trfego em redes, visualizvel por:

# snort v l /var/log/snort

Network Intrusion Detection System (NIDS), o mais complexo e configurvel, o qual permite analisar o trfego da rede, visualizvel por:

# snort v l /var/log/snort c /etc/snort/snort.conf

Inline, o qual incrementa alm da funcionalidade do NIDS a possibilidade de que os pacotes sejam descartados antes que cheguem ao destino, visualizvel por:
# snort v l /var/log/snort c /etc/snort/snort.conf Q

Sistemas de Preveno de Intruso baseado em Software Livre: De

50

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia O Snort pode registrar os pacotes tanto no formato ASCII, padro, quanto no formato binrio do tcpdump, criando diretrios baseados nos endereos IPs dos hosts remotos. Plug-ins adicionais permitem extenses de deteces e registros, como, por exemplo, armazenar os registros em banco de dados (MySQL ou MSSQL), deteces de fragmentos, deteces de portscan e normalizao de HTTP URI. Em 2001 Martin Roesch fundou a Sourcefire Network Security, mantendo em paralelo o Projeto Snort. Recentemente, em 06 de outubro de 2005, a Check Point Software Technologies anunciou a compra da Sourcefire.

5.1 Mecanismo
O mecanismo de processamento de pacotes no Snort utiliza diversos componentes que realizam tarefas especficas, Ilustrao 5.1.
Detection (plug-ins)

Libpcap Library

Snort Packet Decoder

Preprocessor (plug-ins)

Detection Engine

Output (plug-ins)

Ilustrao 5.10 Mecanismo de processamento de pacotes no Snort.

O caminho percorrido pelos pacotes inclui: a. Libpcap library A biblioteca de captura de pacotes responsvel por levar os pacotes da interface de rede para o Snort. Esse um processo realizado na camada de enlace do modelo TCP/IP (camada 2 do modelo de referncia OSI). O Snort utiliza Libpcap em sistemas Linux e Unix, WinPcap em sistemas Windows. b. Snort Packet Decoder O decodificador de pacotes trata os pacotes da camada 2 originados da biblioteca de captura de pacotes. Primeiro ele decodifica os frames da camada de enlace para s

Sistemas de Preveno de Intruso baseado em Software Livre: De

51

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia ento decodificar os pacotes dos protocolos IP e TCP ou UDP. Ao finalizar a decodificao, processamento. c. Preprocessor O pr-processador tem diversos plug-ins que podem ser habilitados no arquivo de configurao. O pr-processamento opera na decodificao de pacotes desempenhando vrias transformaes nos dados para uma forma mais simples de serem tratados pelo Snort. Pr-processadores podem alertar, classificar ou descartar um pacote antes que ele seja enviado para o mecanismo de deteco. d. Detection Engine O mecanismo de deteco o corao do Snort. Ele pega informaes pr-processadas e opera nas camadas de transporte e aplicao (camadas 4 e 7 do modelo OSI), comparando o que est correlacionado com as informaes de regras baseados nos plug-ins de deteco. Essas regras contm as assinaturas para ataques habilitadas por meio do arquivo de configurao. e. Output Quando um pr-processador ou uma regra disparada, um alerta gerado e registrado, opcionalmente todo o pacote ofensivo ou apenas o cabealho juntamente com os IPs de origem e destino que geraram o evento. o Snort tem todas as informaes necessrias para futuro

5.2 Configurao
No arquivo de configurao, por padro snort.conf, possvel habilitar todos os mdulos ou plug-ins, os quais ativam as assinaturas, os pr-processadores e os tipos de sada que sero utilizados pelo Snort, tambm possvel passar parmetros de execuo, como, por exemplo, que o Snort seja executado enjaulado, limitando assim o acesso ao sistema de arquivo ao usurio e ao diretrio especificado para o chroot.

Sistemas de Preveno de Intruso baseado em Software Livre: De

52

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia A ordem padro de aplicao de uma regra no Snort : alert->pass->log

5.2.1 Variveis
A maioria das regras (rules) utiliza referncias a variveis de rede definidas no arquivo de configurao do Snort como, por exemplo: HOME_NET se refere aos endereos IPs visveis pelo IPS na rede interna. EXTERNAL_NET se refere a todos IPs no confiveis, pode-se utilizar ! para indicar a negao de outra varivel. A definio de uma varivel simples, por exemplo:
var HOME_NET [172.16.0.0/24] var EXTERNAL_NET !HOME_NET

indica que o IP da rede interna, HOME_NET, 172.16.0.0/24 e que os endereos da rede externa, EXTERNET_NET, so todos excetos os da rede interna. Outras variveis, para servidores de DNS, SMTP, HTTP e SQL, so utilizadas sendo recomendado alter-las de acordo com a rede a ser protegida, principalmente se existirem servios em outras redes sem ser na rede interna.

5.2.2 Preprocessor
Os pr-processadores foram introduzidos na verso 1.5 do Snort. Eles permitem a funcionalidade para que o Snort seja extensvel a plug-ins modulares, os quais podem ser integrados ao mecanismo do Snort. Os pr-processadores do Snort podem ser utilizados tanto para examinar anomalias nos cabealhos dos pacotes, quanto para notificar os pacotes, para que, assim, o mecanismo de deteco possa interpret-los apropriadamente. Uma quantidade de ataques pode no ser detectada pelos mtodos baseados em assinaturas, logo os

pr-processadores de exame tentam detectar alguma atividade suspeita. Outros Sistemas de Preveno de Intruso baseado em Software Livre: De 53

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia pr-processadores so responsveis pela normalizao do trfego, para que possa ser tratado pelo mecanismo de deteco baseado em assinaturas. Esses pr-processadores amenizam ataques que tentam evadir, manipulando as caractersticas do trfego, o mecanismo de deteco do Snort. Adicionalmente o Snort processa os pacotes atravs de cada pr-processador tentando descobrir ataques que necessitam mais de um pr-processador para detect-lo. Caso o Snort simplesmente parasse de verificar os atributos de pacotes suspeitos aps ele ser detectado em um pr-processador, os invasores poderiam usar essa deficincia para esconder outro trfego malicioso. Os pr-processadores so extremamente teis e podem realizar: Reestruturao de pacotes; Decodificao de protocolos; e Deteces baseadas em anomalias no disponveis nas regras e assinaturas. A sintaxe para habilitar um preprocessor dada por:
Preprocessor <name>: <options>

O Snort verso 2.4.3 contm os pr-processadores listados a seguir: ARP spoof ASN.1 detection BO Flow Frag2 Frag3 HTTP inspect Performance monitor RPC decode

Sistemas de Preveno de Intruso baseado em Software Livre: De

54

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

sfPortscan Stream4 Telnet decode X-link2State

5.2.3 Assinaturas
O time de Technical Support Specialists e o Vulnerability Research Team (VRT) da Sourcefire so peritos em procurar, seguir e documentar vulnerabilidades contra o tempo. Apoiado por vrios recursos da comunidade de usurios do Snort, eles so totalmente comprometidos com a continuidade em aumentar a segurana de rede corporativa. O VRT aps investir considerveis recursos trabalham para melhorar a qualidade e minimizar o tempo de disponibilizao de regra, o chamado Tempo Zero, criou as VRT Certified Rules, disponvel ao mesmo tempo para usurios do Snort e da Sourcefire, em at cinco dias. Cada regra rigorosamente testada baseada em situaes reais antes de ser divulgada. As VRT Certified Rules so as regras oficiais do Snort.org e so distribudas sob licena comercial. H trs modos de obter essas regras: Assinantes: acesso s regras assim que estiverem disponveis; Usurios registrados no Snort.org: acesso s regras aps cinco dias de lanadas; Usurios no registrados: acesso s regras disponveis com a verso do Snort mais recente. Alm das regras oficiais mantido um conjunto de regras enviadas por membros da comunidade open source, distribudas baseada no GPL. O VRT tambm se encarrega de test-las para que elas mantenham o Snort ntegro. Atualmente, o Snort pode analisar quatro protocolos: IP, TCP, UDP e ICMP em mais de 40 conjuntos de regras. Os cabealhos de regra do Snort devem ser considerados a

Sistemas de Preveno de Intruso baseado em Software Livre: De

55

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia parte principal da assinatura, pois ele identifica o que deve ser feito quando a regra for sinalizada, qual protocolo deve ser usado e as informaes de origem e destino, incluindo portas, endereos IP e redes. A Ilustrao 5.2 mostra a estrutura do cabealho de regra do Snort.

Ilustrao 5.11 Exemplo de assinatura do Snort.

5.2.3.1 Cabealho
O campo ao da regra indica para o mecanismo qual operao deve ocorrer quando a regra for correspondida, durante a fase de anlise de pacotes. As aes da regra so altamente significativas, pois cada uma delas tem um objetivo e um resultado diferente. Determinar a ao da regra fundamental e deve ser cuidadosamente considerado, antes da designao. As cinco aes de regra criadas por padro so: pass: A ao pass simplesmente ignora o pacote e continua a anlise nos pacotes posteriores; log: A ao de regra log permite registrar um alerta de uma maneira que pode especificar durante a configurao do sensor Snort;

Sistemas de Preveno de Intruso baseado em Software Livre: De

56

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

alert: A ao de regra alert registra o pacote da mesma maneira que a ao log e depois alerta o usurio da maneira especificada durante a configurao. Os alertas podem ser aes muito teis e devem ser usados eficientemente.

dynamic: A ao dynamic nica, no sentido de que permanece inativa at que uma regra activate a dispare. Aps ser disparada, ela ento atua como uma regra de ao log;

activate: A ao de regra activate a mais complexa criada por padro dentro do Snort, pois quando ativada, ela gera um alerta e depois inicia a regra dinmica especificada. Isso pode ser excelente para capturar ataques complexos, invasores usando uma variedade de ferramentas ou mesmo para classificar dados de uma maneira diferente. O campo porta serve para determinar quais portas devero ser analisadas. Por

exemplo: 1:1000: a porta 1 a 1000. :6000: onde o nmero da porta for menor ou igual a 6000. 6000:: onde o nmero da porta for maior ou igual a 6000. any: para determinar qualquer porta.

5.2.3.2 Opes
O campo opes considerado o corao do sistema de deteco do Snort. As opes, so colocadas entre parnteses (), separadas por ponto-e-vrgula ; e as palavras chaves so separadas dos argumento dois pontos :. a. msg Especifica a mensagem que ser exibida no log/alerta quando o pacote for capturado. Formato: msg:<mensagem>.

Sistemas de Preveno de Intruso baseado em Software Livre: De

57

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia b. logto Grava a sada de todos os pacotes capturados pela regra para um arquivo especfico. Formato: logto<nome do arquivo> . c. ttl Verifica o campo TTL do pacote, interessante para identificar problemas de trfego ou tentativas de traceroute. Formato ttl:<numero>. d. dzise usado para testar o tamanho do payload (cabealho TCP+dados), interessante para se testar tentativas de overflow em determinada aplicao. Formato: dsize: [> |< ] < numero> [< > < numero> ] e. content: um dos principais recursos do Snort. Permite buscar algum dado especfico no Payload do pacote, como por exemplo, uma palavra ou dados em linguagem de mquina transcritos em hexadecimal. Pode-se utilizar a opo nocase para ignorar maisculas e minsculas, a opo ofset para indicar os bits onde os dados comeam e a opo depth para indicar a partir de quais bytes a busca ser iniciada. f. regxp

Permite o uso de metacaracteres para refinar a busca com a opo content. g. flag Verifica as flags do cabealho TCP que indicam o estado de conexo. Formato: flags: < valor flag> [,valor mascara]. Segue as opes: F FIN - Fim de conexo. No h mais dados do emissor. S SYN - Sincronizao dos nmeros seqenciais. Estabelecimento da conexo R RST Reinicia a conexo

Sistemas de Preveno de Intruso baseado em Software Livre: De

58

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

P PSH Envio dos dados A ACK - Reconhecimento/ Confirmao U URG - Urgente

h. seq Verifica o campo seq (numero de seqncia) do cabealho TCP. Esse nmero qual indica um nmero para o controle da conexo. til quando se tem uma aplicao que gera os pacotes j com o numero seq pr-definido e se quer testar uma tentativa de violao destes nmeros. Formato: seq: < numero>. i. ack

Verifica o campo com o nmero de reconhecimento (acknowledgment) do cabealho TCP. Se este bit estiver definido, este campo contm o valor do prximo nmero seqencial que o receptor est esperando receber. til para deteco de varreduras vindas da ferramenta NMAP. Formato: ack: < numero> . j. resp

Possibilita enviar resposta ao trfego suspeito, como por exemplo, mandar um reset conexo. necessrio compilar o Snort com a opo --enable- flexresp. Formato: resp: < resposta[,resposta...]>. Segue as opes: rst_snd - envia pacotes TCP- RST para o remetente. rst_rcv - envia pacotes TCP- RST para o destinatrio. rst_all - envia pacotes TCP- RST para o remetente e o destinatrio. icmp_net - envia um pacote ICMP_NET_UNREACH para o remetente. icmp_host - envia um pacote ICMP_HOST_UNREACH para o remetente. icmp_port - envia um pacote ICMP_PORT_UNREACH para o remetente. 59

Sistemas de Preveno de Intruso baseado em Software Livre: De

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

icmp_all - envia todos os pacotes ICMP acima para o remetente.

necessria a configurao do arquivo de configurao sempre que for descarregada uma nova verso das regras, por isso recomendado sempre fazer uma cpia de segurana.

5.2.4 Sada
Os mdulos ou plug-ins de sada podem realizar diferentes operaes com os registros e os alertas de sistema, como: Armazenar registros para um arquivo dos eventos gerados, com apenas os cabealhos (fast) ou com todo o pacote ofensivo(full); Enviar traps SNMP; Enviar mensagens para o syslog com uma determinada facility; Enviar os registros para banco de dados como MySQL, MSSQL ou Oracle; Gerar uma sada do tipo eXtensible Markup Language (XML); Modificar configurao em roteadores e firewalls; Enviar mensagens Server Message Block (SMB) para mquinas baseadas em MS Windows. Por exemplo, uma tentativa de ataque do tipo MS-SQL Worm propagation, tambm conhecido Slammer worm, estando a regra habilitada, gerar um evento do tipo:
[**] [1:2003:2] MS-SQL Worm propagation attempt [**] [Classification: SQL Attack] [Priority: 2] 10/26-17:59:01.635549 10.0.250.124:1162 -> 192.168.0.3:1434 UDP TTL:30 TOS:0x0 ID:285 IpLen:20 DgmLen:128 Len: 100 [Xref => http://www.securityfocus.com/bi/1233]

O alerta gerado inclui: O primeiro nmero identifica o ID do gerador, que informa qual componente do Snort gerou esse alerta. A lista de GIDs est no arquivo generators no diretrio de Sistemas de Preveno de Intruso baseado em Software Livre: De 60

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia configurao do Snort. Nesse caso o evento foi originado pelo componente rules_subsystem, 1, mecanismo de deteco baseado em assinatura, ou seja um alerta geral do Snort; O segundo nmero o Snort ID tambm referenciado como Signature ID, disponvel no arquivo gen-msg.map, no caso, por ser um alerta geral, deve-se verificar a assinatura disponvel no diretrio de descrio das assinaturas, no caso

/etc/snort/doc/signatures/2003.txt; O terceiro nmero se refere a reviso da assinatura; A identificao da assinatura que disparou o alerta para uma regra especfica A descrio do alerta O nvel do alerta, sendo quanto maior o risco do ataque, menor o nmero da prioridade do alerta; Os IPs e portas de origem e de destino; O momento em que ocorreu o evento; O protocolo do ataque; e A referncia com mais informaes a respeito do ataque.

Sistemas de Preveno de Intruso baseado em Software Livre: De

61

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

6 SNORT INLINE
Jed Haile desenvolveu o Snort_inline como um patch para o Snort verso 1.9, sob a licena de software de cdigo aberto GPL. Tratado como um Gateway IDS (GIDS), pois utiliza um mecanismo de controle de dados que combina a capacidade de deteccao de um NIDS tradicional, incrementado com a funcionalidade de filtro de pacotes, tpico de firewalls. O Projeto Honeynet utiliza o Snort_inline como uma importante ferramenta de pesquisa em seu toolkit, o qual traz o Linux pr-compilado com o Snort_inline. O Snort verso 2.3.0 RC1 integrou a funcionalidade de preveno de intruso (IPS) do Snort Inline dentro do projeto oficial do Snort. Essa verso contemplou a portabilidade para Linux, integrando com o firewall IPtables, e para FreeBSD, integrando com o firewall IPFW. O Snort_inline atua como um verdadeiro IPS e pode alterar os pacotes na camada de aplicao em tempo real. Esse sistema tem se tornando rapidamente a ferramenta mais escolhida para preveno e deteco de intruses. A implementao mais comum do Snort_inline em um sistema Linux configurado em bridge, a qual no identificada como um hop adicional no roteamento dos pacotes. A utilizao de bridge, a qual no tem endereo IP, entre dois segmentos de rede faz com que o IPS no seja identificado no caminho de roteamento. Entretanto possvel a integrao de um firewall tradicional integrado com o Snort_inline fazendo NAT para as sub-redes protegidas. Um sistema inline de resposta ativa tem a capacidade de anular ataques em vez de simplesmente alterar as ACLs dos roteadores ou polticas para bloquear o endereo IP do atacante. A Ilustrao 6.1 mostra o Snort rodando como firewall/roteador/IPS. Quando o ataque detectado, todo trfego futuro dos atacantes bloqueado. Sistemas de Preveno de Intruso baseado em Software Livre: De 62

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Ilustrao 6.12 Disposio do Snort Inline.

6.1 Mecanismo IPtables


O Snort Inline tem o mecanismo de deteco baseado no Snort NIDS. Entretanto o Snort Inline faz uso da biblioteca de enfileiramento de pacotes, LibIpQ, em vez da biblioteca LibPCap, Ilustrao 6.2.

Bridge

IPtables

IP Queue

Detection (plug-ins)

Libipq Library

Snort Packet Decoder

Preprocessor (plug-ins)

Detection/Inline Engine

Libnet Library

Output (plug-ins)

Ilustrao 6.13 - Mecanismo de processamento de pacotes no Snort Inline.

O caminho percorrido pelos pacotes torna-se ento: a. Bridge A bridge deve ter a funcionalidade, habilitada no kernel, de filtragem de pacotes de rede. b. IPtables A poltica do IPtables envia os pacotes para o destino da fila (queue); c. IP Queue Enfileira pacotes do espao do kernel para uma aplicao que esteja rodando no espao de usurio Sistemas de Preveno de Intruso baseado em Software Livre: De 63

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia d. Libipq library A biblioteca Libipq, provida pelo IPtables, permite que o Snort Inline comunique com o IPtables, capturando os pacotes da fila no espao de usurio e. Inline Engine O Snort Inline examina cada pacote e consulta as informaes de regras do Dectetion Engine do Snort correlacionando com o Inline Engine (drop, sdrop, reject ou replace) f. LibNet library

A biblioteca LibNet uma interface de baixo nvel utilizada para injetar pacotes na rede e responsvel por executar as aes do Inline Engine, utilizada tambm para o flexresp.

6.1.1 Mecanismo IPFW


No FreeBSD utilizado o mtodo IPFW_Forward, habilitado aps compilar o kernel, que encaminha os pacotes recebidos na ponte para o IPFW, o processo continua funcionando de forma semelhante ao IPtables/Linux.

6.2 Configurao
As etapas de configurao do Snort_Inline so similares de um Snort NIDS, sendo que os objetivos so diferentes: descartar o pacote malicioso antes que o mesmo alcance o alvo.

6.2.1 Mecanismo Inline


No Snort Inline foram adicionadas trs novas aes para as regras, as quais devem ser alteradas de acordo com a poltica de segurana da rede. So elas: Drop: Descarta os pacotes usando IPtables e registra via Snort

Sistemas de Preveno de Intruso baseado em Software Livre: De

64

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Reject: A comunicao para TCP fechada utilizando um TCP RST ou uma mensagem ICMP Port-unreachble para UDP. Descarta usando o IPtables e registra via Snort.

Sdrop: Descarta os pacotes utilizando o IPtables, mas a ao no registrada. Por exemplo, para descartar todos os pacotes originados da rede externa para os

servidores web, a assinatura seria alterada para:


drop tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"WEB-ATTACKS rm command attempt"; flow:to_server,established; content:"rm%20"; nocase; classtype:web-application-attack; sid:1365; rev:5;)

Tambm foi includa uma nova opo: Replace: Substitui um texto encontrado no content com uma palavra especificada no replace. Por exemplo:
alert tcp any any <> any 80 (msg: "tcp replace"; content:"GET"; replace:"BET";)

A ordem padro de aplicao de uma regra no Snort Inline :


->activation->dynamic->pass->drop->sdrop->reject->alert->log

Sistemas de Preveno de Intruso baseado em Software Livre: De

65

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

7 IMPLEMENTAO
Para realizar o laboratrio de implementao deste projeto foi utilizada a topologia da rede simples, Ilustrao 6.1, com um firewal segmentando as redes de gerncia, interna, DMZ e externa fazendo NAT para acesso Internet. Lembrando que o IPS deve funcionar de forma transparente para os usurios internos ou eventuais invasores, isto , em ponte entre a interface externa do firewall e a rede do provedor de servios, a Internet. A console (gerente) deve-se localizar em uma rede de gerncia, protegida, definida com o IP 192.168.0.0 e mscara de rede de 29 bits.

.3 zeus Rede Gerncia 192.168.0.0/29 .2 Roteador de borda

Internet

.1

IPS hades

hefesto (Firewall)
Rede Interna DMZ

Ilustrao 7.14 Topologia utilizada em laboratrio.

A concepo do projeto foi realizada utilizando trs mquinas virtuais simuladas pelo aplicativo VMware Workstation verso 5.x, onde: a. Hefesto (Deus do Fogo) Onde ser implementado o elemento ativo de firewall, necessrio em qualquer tipo rede, IPtables, realizando NAT; b. Zeus (Deus dos Deuses) Sistemas de Preveno de Intruso baseado em Software Livre: De 66

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Onde ser feita a gerncia do sensor IPS com interface grfica baseado em http e armazenamento dos eventos enviados pelo Snort NIPS em banco de dados MySQL. c. Hades (Deus do subterrneo, o oculto) Onde ser implementado a soluo NIPS Snort Inline junto com IPtables. Contm trs interfaces de rede, sendo que uma utilizada para a gerncia e as outras duas para implementao da ponte. A gerncia do sensor poder ser realizada in loco ou por meio de acesso remoto, em uma canal criptografado, a partir da mquina de gerncia. Para implementao do IPS e das ferramentas utilizadas para a gerncia, almeja-se utilizar, sempre que possvel, o repositrio oficial de pacotes do Debian.

7.1 Sistema Operacional


As trs mquinas virtuais foram instaladas com o Debian GNU/Linux 3.1 (sarge) lanado em 06 de junho de 2005 com configurao mnima. Foram instalados em todas as VMs alguns pacotes teis ou necessrios, so eles: a. openssh-server O SSH (Secure Shell) um programa que permite acessar e executar comandos em uma mquina remota, provendo uma comunicao cifrada, segura entre os dois hosts, atravs de uma rede insegura. b. ntpdate um cliente NTP simples que permite ajustar o horrio do sistema automaticamente a partir de outros sistemas, necessrio para determinar o momento exato em que ocorreu o evento. c. gcc GNU C compiler um compilador necessrio para criar os arquivos binrios a partir de fontes de arquivos de instalao. d. make Sistemas de Preveno de Intruso baseado em Software Livre: De 67

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia GNU Make necessrio durante a compilao de fontes arquivos de instalao.

7.1.1 Instalao
As verses dos pacotes utilizadas neste projeto foram: openSSH 4.2p1 ntpdate 4.2.0a gcc 4.0.3 (prerelease) make 3.80 Para instalar os pacotes basta executar os seguintes comandos:
hades:~# hades:~# hades:~# hades:~# apt-get apt-get apt-get apt-get install install install install openssh-server ntpdate gcc make

7.2 Firewall
Para a implementao do firewall IPtables, foram utilizadas duas placas de rede fazendo NAT para a Internet. Sendo que uma interface est na rede gerncia e a outra conectada no mesmo segmento de rede em que estar uma das interfaces do IPS. Esta interface obter o IP dinamicamente de um servidor DHCP disposto no mesmo segmento de rede da outra interface do IPS. No foram utilizadas as interfaces que conectam as redes internas e DMZ, por se tratar de um laboratrio.

7.2.1 Configurao
As configuraes para as interfaces de rede so listadas abaixo:
hefesto:~# vi /etc/network/interfaces auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.0.1

Sistemas de Preveno de Intruso baseado em Software Livre: De

68

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia


netmask 255.255.255.0

Para habilitar a NAT basta adicionar uma regra na tabela de NAT do IPtables, para isso basta executar:

hefesto:~# iptables t NAT A POSTROUTINGS o eth0 j MASQUERADE

Para habilitar as regras durante a iniciao do sistema recomendado criar um script.

7.3 Sensor
Para a instalao do IPS Snort Inline foi utilizada a verso de kernel 2.6.8, tambm disponvel no Debian Sarge 3.1, pois esta verso j vem com a bridge com suporte nativo ao netfilter, o que evita a necessidade recompilar o kernel com esta caracterstica. Como o sensor ter duas placas habilitadas em ponte, recomendada uma terceira interface que servir para o acesso e armazenamento de eventos na gerncia e eventuais atualizaes. Inicialmente, para a instalao de pacotes necessrio acesso Internet, para isso recomendado que a mquina esteja em um ambiente seguro ou at mesmo baixar todos os pacotes em uma mquina de homologao, para s ento proceder com as etapas no computador que entrar em produo. As configuraes para as interfaces so listadas a seguir:
hades:~# vi /etc/network/interfaces auto eth0 iface eth0 inet static address 192.168.0.2 netmask 255.255.255.0 gateway 192.168.0.1

Na seo 6.1 foi descrito o mecanismo do Snort Inline e apresentado algumas bibliotecas e aplicativos que interagem diretamente com ele.

Sistemas de Preveno de Intruso baseado em Software Livre: De

69

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

7.3.1 Snort Inline


As bibliotecas e programas que so pr-requisitos para que se possa instalar o Snort Inline so: iptables, incluindo as bibliotecas de desenvolvimento; libnet, incluindo as bibliotecas de desenvolvimento, verso 1.0.x. Compilar o Snort_inline com a verso da libnet 1.1.x no funcionar. libpcap, incluindo as bibliotecas de desenvolvimento: utilizado para o Snort capturar passivamente os pacotes. libpcre (Perl 5 Compatible Regular Expression), incluindo as bibliotecas de desenvolvimento: til para utilizao de scripts; libmysql, incluindo as bibliotecas de desenvolvimento: utilizado pelo Snort Inline para enviar os eventos para o banco de dados MySQL.

7.3.1.1 Instalao
As verses dos pacotes utilizados neste projeto foram: iptables 1.2.11 libnet0 1.0.2a libpcap0.8 0.9.4 libpcre3 6.4-1.0.1 libmysqlclient 4.1.15 Para instalar os pacotes requeridos para o Snort Inline basta executar os seguintes comandos:

hades:~# hades:~# hades:~# hades:~# hades:~#

apt-get apt-get apt-get apt-get apt-get

install install install install install

iptables-dev libnet0-dev libpcap0.8-dev libpcre3-dev libmysqlclient14-dev

Sistemas de Preveno de Intruso baseado em Software Livre: De

70

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Para habilitar a funo Inline do Snort necessrio compilar o programa a partir do cdigo fonte, disponvel na pgina oficial do Snort. A verso utilizada neste projeto foi: snort 2.4.3 Para instalar o Snort a partir do cdigo fonte basta seguir os seguintes comandos:
hades:~# cd /usr/src/ hades:/usr/src# wget http://www.snort.org/dl/current/snort-2.4.3.tar.gz hades:/usr/src# tar xfz snort-2.4.3.tar.gz hades:/usr/src# cd snort-2.4.3 hades:/usr/src/snort-2.4.3# ./configure --enable-inline --enable-perfmonitor --enable-flexresp --with-mysql --with-libipq-includes=/usr/include/libipq/ hades:/usr/src/snort-2.4.3# make && make install

Para testar se o Snort foi est devidamente funcionando basta executar o seguinte comando:
hades:/usr/src/snort-2.4.3# snort v

Lembrando que necessrio que o mdulo ip_queue esteja ativo para testar o Snort Inline, para isso basta executar:
hades:~# insmod /lib/modules/2.6.8-2386/kernel/net/ipv4/netfilter/ip_queue.ko hades:~# snort vQ

Ao final da seo ser mostrado como tornar o processo de carregar o mdulo automaticamente.

7.3.1.2 Configurao
Agora que o Snort est instado necessrio fazer algumas configuraes para que ele possa funcionar como NIPS. Como o Snort contm a funcionalidade nativa de funcionar enjaulado, chroot, sero criados o usurio e o diretrio onde ser implementada essa funo. O usurio no ter um

Sistemas de Preveno de Intruso baseado em Software Livre: De

71

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia shell e tambm no ser permitido utilizar a conta para acessar o sistema, para isso, basta executar:
hades:~# adduser --home /var/log/snort --no-create-home --disabled-login -disabled-password --system --group snort Adding system user `snort'... Adding new group `snort' (105). Adding new user `snort' (105) with group `snort'. Not creating home directory.

O diretrio onde sero armazenados os logs de alertas gerados pelos eventos tambm ser utilizado para o chroot, para isso, basta executar:
hades:~# mkdir /var/log/snort hades:~# chmod 700 /var/log/snort hades:~# chown -R snort:snort /var/log/snort

A obteno das assinaturas foi descrita na seo 5.2.3, sendo definido que seriam utilizadas as regras obtidas por meio de registro no Snort.org. Para atualizar as assinaturas necessrio um cdigo, denominado oink_code, obtido ao se cadastrar. Para criar o diretrio onde sero armazenadas as regras basta proceder:
hades:~# mkdir /etc/snort

O procedimento a seguir pode sempre ser utilizado para atualizar as regras, entretanto recomendada uma cpia de segurana prvia. Para obteno das regras basta proceder:
hades:~# cd /tmp hades:/tmp# wget http://www.snort.org/pubbin/oinkmaster.cgi/<oink_code>/snortrules-snapshot-2.4.tar.gz hades:/tmp# cd /etc/snort hades:/etc/snort# tar xvvfz /tmp/snortrules-snapshot-2.4.tar.gz

Para evitar atividades de cpia de arquivos sempre que forem atualizadas as regras, recomendado fazer uma referncia aos arquivos originais por meio de links.

Sistemas de Preveno de Intruso baseado em Software Livre: De

72

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia


hades:/etc/snort# hades:/etc/snort# hades:/etc/snort# hades:/etc/snort# hades:/etc/snort# hades:/etc/snort# hades:/etc/snort# hades:/etc/snort# hades:/etc/snort# ln ln ln ln ln ln ln ln ln -s -s -s -s -s -s -s -s -s rules/classification.config rules/generators rules/gen-msg.map rules/reference.config rules/sid-msg.map rules/sid.map rules/snort.conf rules/threshold.conf rules/unicode.map

configurao

padro

do

Snort

Inline

feita

por

meio

do

arquivo

/etc/snort/snort.conf, o qual ser editado para algumas alteraes mnimas: localizao das regras; sada dos eventos para que sejam registrados na gerncia, MySQL; recomendado configurar a varivel HOME_NET afim de diminuir os falsos-positivos. Para isso basta proceder:

hades:/etc/snort# vi snort.conf var RULE_PATH ./rules output database: log, mysql, user=snort password=snort dbname=snort host=192.168.0.3 port=3306 sensor_name=hades-IPS

Para utilizar o Snort com todas as opes anteriores e no modo verbose, basta executar o seguinte comando:
hades:~# snort v Q c /etc/snort/snort.conf l /var/log/snort t /var/log/snor u snort g snort

Para utilizar o Snort com todas as opes anteriores e no modo daemon, basta executar o seguinte comando:
hades:~# snort D Q c /etc/snort/snort.conf l /var/log/snort t /var/log/snor u snort g snort

recomendado criar um script para que o Snort seja iniciado junto com o sistema.

Sistemas de Preveno de Intruso baseado em Software Livre: De

73

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

7.3.2 Bridge
Uma ponte envia o trfego entre mltiplas interfaces de rede de forma transparente, isso significa que uma ponte conecta duas ou mais ethernets fsicas juntas para formar uma grande ethernet (lgica). Para que o Snort Inline rode sobre o modo bridge necessrio que o kernel esteja compilado com o patch bridge/firewall, caso contrrio, a bridge no passar os pacotes para o IPtables e, consequentemente, no passar os pacotes para o Snort_inline. Uma ferramenta transparente que filtra o trfego de redes passando por uma bridge, muito utilizado no universo Linux a bridge-nf. Bridge-nf tambm referenciada como bridge-netfilter e br-n. Por meio da bridge-nf possvel uma integrao do IPtables com a ponte para implementar um firewall transparente. Para o Linux kernel 2.4 necessrio aplicar o patch, A funcionalidade da bridge-nf compilada automaticamente no Linux Debian kernel 2.6, o qual tem o netfilter e a bridge habilitados, por padro. Por esse motivo foi definido que o Snort Inline NIPS (hades) fosse instalado com a verso de kernel 2.6. Entretanto, como a instalao do sistema operacional foi realizada com a mnima configurao, necessrio instalar o aplicativo que cria a ponte, sendo definido que seria o bridge-utils (Linux Ethernet bridging).

7.3.2.1 Instalao
A verso do pacote utilizado neste projeto foi: Bridge-utils 1.0.6 Para instalar o pacote da bridge basta executar o seguinte comando:
hades:~# apt-get install bridge-utils

Sistemas de Preveno de Intruso baseado em Software Livre: De

74

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

7.3.2.2 Configurao
O procedimento de criar uma ponte relativamente simples, sendo necessrio apenas dar um nome para a interface bridge lgica e adicionar as interfaces fsicas a ela. Os procedimentos para realizar uma bridge so:
hades:~# brctl addbr br0 hades:~# brctl addif eth1 hades:~# brctl addif eth2 hades:~# ifconfig eth1 0.0.0.0 up device eth1 entered promiscuous mode hades:~# ifconfig eth2 0.0.0.0 up device eth2 entered promiscuous mode hades:~# ifconfig br0 up br0: topology change detected, propagating br0: port 2(eth2) entering forwarding state br0: topology change detected, propagating br0: port 1(eth1) entering forwarding state

Para habilitar a bridge durante a iniciao do sistema recomendado criar um script.

7.3.3 IPtables
O IPtables um software firewall, que permite conexes statefull, largamente utilizado no universo open-source.

7.3.3.1 Configurao
Para habilitar o mdulo de fila, provido pelo o IPtables, ao iniciar o sistema, basta executar:
hades:~# echo ip_queue >> /etc/modules

Para habilitar a fila no IPtables basta adicionar uma regra na tabela de NAT do IPtables, para isso basta executar:
hades:~# iptables A FORWARD j QUEUE

Para habilitar as regras durante a iniciao do sistema recomendado criar um script. Sistemas de Preveno de Intruso baseado em Software Livre: De 75

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

7.4 Gerncia
As ferramentas necessrias para a implementao da gerncia do sistema de preveno de intruso so: a. MySQL server b. Basic Analysis and Security Engine (BASE) c. Apache web server A estao de gerncia contm uma interface de rede que est configurada para a rede de gerncia
zeus:~# cat /etc/network/interfaces iface eth0 inet static address 192.168.0.3 netmask 255.255.255.0 gateway 192.168.0.1

7.4.1 MySQL
O MySQL um servidor de banco de dados largamente utilizado no universo opensource.

7.4.1.1 Instalao
Para a instalao do MYSQL, foi utilizado o seguinte comando:
zeus:~# apt-get install mysql-server-4.1

7.4.1.2 Configurao
Com isso, foram instalados os pacotes do mysql-server. Uma vez que os pacotes foram instalados, foi iniciado o daemon do MySQL usando a linha de comando abaixo:
zeus:~# /etc/init.d/mysql start

Foi configurado o usurio da base de dados. Tambm, criada a base de dados de Snort para um uso posterior com o sistema de preveno de intrusos.
zeus:~# mysql -u root

mysql> set password for \

Sistemas de Preveno de Intruso baseado em Software Livre: De

76

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia


'root'@'localhost'=password('senha'); mysql> create database snort; mysql> exit

Para a criao das tabelas para o database snort, basta utilizar o modelo fornecido pelo arquivo de distribuio do Snort.
zeus:~# scp hades:/usr/src/snort-2.4.3/contrib/create_mysql . zeus:~# mysql u root -p Enter password: ***** mysql>connect snort mysql>source source create_mysql

Um usurio chamado snort ser utilizado pelo BASE para conexo base de dados snort no MySQL.
mysql>grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort; mysql>grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort@localhost; mysql>connect mysql mysql>set password for snort@localhost = password(snort); mysql>set password for snort@% = password(snort); mysql>flush privileges; mysql>exit;

Foi verificado se os usurios e databases existiam realmente no MySQL e se as tabelas que sero utilizadas para armazenar os logs e informaes sobre o Snort e manipuladas pelo BASE, haviam sido criadas corretamente. Para verificao de usurios, basta proceder:

Sistemas de Preveno de Intruso baseado em Software Livre: De

77

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia


zeus:~# mysql -u root -p mysql> select user,host from user; +------------+------------------+ | user | host | +------------+------------------+ | snort | % | | root | localhost | | snort | localhost | | root | www.mydomain.com | | snort | www.mydomain.com | +------------+------------------+ 8 rows in set (0.00 sec) mysql> show databases; +-------------+ | Database | +-------------+ | mysql | | snort | +-------------+ mysql> connect snort; mysql> show tables; +------------------+ | Tables_in_snort | +------------------+ | data | | detail | | encoding | | event | | flags | | icmphdr | | iphdr | | opt | | protocols | | reference | | reference_system | | schema | | sensor | | services | | sig_class | | sig_reference | | signature | | tcphdr | | udphdr | +------------------+ 19 rows in set (0.00 sec)

Sistemas de Preveno de Intruso baseado em Software Livre: De

78

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

7.4.2 Apache HTTP


O Apache um servidor HTTP open-source largamente utilizado e portvel em diversas plataformas.

7.4.2.1 Instalao
Para a instalao do Apache com suporte a PHP basta realizar as seguintes etapas:
zeus:~# apt-get install apache2 zeus:~# apt-get install php4 zeus:~# apt-get install php4-mysql

7.4.2.2 Configurao
zeus:~# vi /etc/apache2/httpd.cnf Load_Module php4_module /usr/lib/apache2/modules/libphp4.so zeus:~# cat /etc/acidbase/apache.conf >> /etc/apache2/apache.conf

7.4.3 BASE
O BASE (Basic Analisys and Security Engine) uma ferramenta de anlise baseada em PHP para pesquisar e processar uma base de dados formada por eventos de segurana, gerados por vrios elementos de segurana como IPSes, firewalls e ferramentas de monitorao de rede . Ele possui vrias funcionalidades, sendo elas: Ferramenta de query sql e interface de pesquisa para encontrar alertas por meio de palavras chave (ex. assinaturas, tempo de deteco) bem como informaes de rede (ex. endereos de origem/destino, portas, payload ou flags de cabealho); Visualizador de pacotes (decoder) que mostra graficamente informaes de camada 3 e 4 referentes aos pacotes registrados; Gerncia de alertas, que prov uma organizao lgica dos grupos de alertas para criar incidentes, excluir os falsos positivos ou arquivar os alertas para transferi-los para outra base de dados;

Sistemas de Preveno de Intruso baseado em Software Livre: De

79

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

Gerao de grficos e estatsticas, baseadas em tempo, sensor, assinatura, protocolo, endereo IP, portas TCP/UDP e classificao. O BASE tem a habilidade de analisar uma grande variedade de eventos que so

ps-processados em sua base de dados. Existem ferramentas para os seguintes formatos: usando o Snort: o o alertas do Snort; Logs binrios no formato do tcpdump.

usando o logSnorter: o o o IPChains; IPtables; IPFW.

Quando o BASE acessado, por meio de uma interface web, ele faz queries base de dados (MySQL), e busca todas as informaes armazenadas a respeito de eventos registrados pelo IPSes, apresentando-os em forma de um grfico de barras. A partir desta tela pode-se verificar quais foram os alertas gerados e fazer buscas pela base de dados. Ao se visualizar os alertas, estes possuem uma descrio do tipo de alerta, a prioridade que ele requer e um atalho para o site do Snort [4], onde se pode obter maiores informaes a respeito do ataque. A gerncia da base de dados pode tambm ser feita atravs do browser. Desta forma, o BASE se mostra como uma ferramenta til e completa permitindo uma completa administrao das informaes e da base de dados.

7.4.3.1 Instalao
Para a instalao do BASE, basta seguir os seguintes comandos:
zeus:~# zeus:~# zeus:~# zeus:~# apt-get apt-get apt-get apt-get install install install install php4-gd adodb JPgraph base

Sistemas de Preveno de Intruso baseado em Software Livre: De

80

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Os vrios componentes da instalao do BASE, tem suas prprias dependncias com outros componentes. importante que os componentes independentes, sejam instalados primeiramente. Abaixo segue os componentes e seus pr-requisitos:

MySQL Snort o MySQL Support

Apache o o OpenSSL Support PHP OpenSSL Support MySQL Support

BASE o o Adodb jpgraph

7.4.3.2 Configurao
Inicialmente necessrio copiar o arquivo de distribuio do BASE para o de configurao, para isso basta seguir os procedimentos:

zeus:~# cd /var/www/html/base zeus:/var/www/html/base# cp base_conf.php.dist base_conf.php

Os seguintes parmetros do arquivo base_conf.php foram alterados de seguinte forma:


zeus:/var/www/html/base# vi base_conf.php $BASE_urlpath = "../base"; $DBlib_path = "/var/www/html/adodb"; $DBtype = "mysql";

Sistemas de Preveno de Intruso baseado em Software Livre: De

81

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia


$alert_dbname = "snort"; $alert_host = "localhost"; $alert_port = ""; $alert_user = "snort"; $alert_password = "password_from_snort_conf"; $archive_dbname = "snort"; $archive_host = "localhost"; $archive_port = ""; $archive_user = "snort"; $archive_password = " password_from_snort_conf "; $ChartLib_path = "/var/www/html/jpgraph-1.16/src";

Para acessar o BASE basta abrir um navegador, e informar o endereo da mquina em que est o BASE, por exemplo, http://192.168.0.3/base ou

http://zeus/base.

Ilustrao 7.15 Tela de configurao inicial do BASE.

Clicar no link SETUP PAGE, na prxima pgina clicar no boto setup AG, aparecer uma nova pgina, com a pgina abaixo:

Ilustrao 7.16 Tela de status da configurao inicial do BASE.

Aperte no link HOME, para ter acesso a pgina principal. Feito o BASE deve estar devidamente ativo pronto para analisar os eventos coletados pelo Snort Inline.

Sistemas de Preveno de Intruso baseado em Software Livre: De

82

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

8 RESULTADOS
Decorrida a implementao do sistema de preveno de intruso necessrio avaliar o seu impacto e comportamento na rede, necessrio tambm analisar o potencial de preveno frente a alguns ataques. A implementao do Snort Inline funcionando como ponte foi inicialmente testada no Linux Debian kernel 2.4, a qual gerou diversos erros durante a compilao do IPtables com suporte a Bridge-nf, o que durou aproximadamente trs semanas. O escopo do projeto foi continuado com Snort Inline rodando com IPtables em modo NAT. Como essa situao no era a desejada inicialmente, foi testado o kernel 2.6, o qual se obteve xito com o IPtables rodando em bridge. Alm disso, foi implementada, para melhor visualizao dos dados obtidos uma gerncia baseada em HTML.

8.1 Resultados obtidos


Para avaliar o funcionamento do Snort_Inline, iniciou-se uma simulao de comportamento prximo do real, para isso foram lanados alguns ataques a partir da rede externa, como pings com tamanhos acima do normal, tentativa de tornar-se root, portscans. Uma atividade de explorao de vulnerabilidade do servidor web, a fim de acessar os arquivos do sistema gerou os seguintes alertas:
[**] [1:1122:5] WEB-MISC /etc/passwd [**] [Classification: Attempted Information Leak] [Priority: 2] 12/01-19:09:55.777632 192.168.189.1:1680 -> 192.168.0.3:80 TCP TTL:128 TOS:0x0 ID:39175 IpLen:20 DgmLen:435 DF ***AP*** Seq: 0xA5B6B438 Ack: 0x221C6EDF Win: 0xFFFF TcpLen: 20 [**] [1:1113:5] WEB-MISC http directory traversal [**] [Classification: Attempted Information Leak] [Priority: 2] 12/01-19:09:55.777632 192.168.189.1:1680 -> 192.168.0.3:80 TCP TTL:128 TOS:0x0 ID:39175 IpLen:20 DgmLen:435 DF ***AP*** Seq: 0xA5B6B438 Ack: 0x221C6EDF Win: 0xFFFF TcpLen: 20 [Xref => http://www.whitehats.com/info/IDS297] [**] [119:18:1] (http_inspect) WEBROOT DIRECTORY TRAVERSAL [**] [Classification: Attempted Information Leak] [Priority: 2]

Sistemas de Preveno de Intruso baseado em Software Livre: De

83

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia


12/01-19:09:55.777632 192.168.189.1:1680 -> 192.168.0.3:80 TCP TTL:128 TOS:0x0 ID:39175 IpLen:20 DgmLen:435 DF ***AP*** Seq: 0xA5B6B438 Ack: 0x221C6EDF Win: 0xFFFF TcpLen: 20 [Xref => http://www.whitehats.com/info/IDS297]

Uma atividade de portscan gerou:


[**] [122:3:0] (portscan) TCP Portsweep [**] 10/27-16:14:51.860906 192.168.0.3 -> 200.199.201.237 PROTO255 TTL:0 TOS:0x0 ID:620 IpLen:20 DgmLen:158

Na regra telnet.rules foi criada a seguinte assinatura:


drop tcp any any -> 192.168.0.1 23 (classtype:attempted-user;msg:"DROP TELNET 23";)

Uma tentativa de comunicao tcp/23 ao firewall (192.168.0.1) gerou:


[**] [1:0:0] DROP TELNET 23 [**] [Classification: Attempted User Privilege Gain] [Priority: 1] 12/01-18:51:15.594256 192.168.189.1:1530 -> 192.168.0.1:23 TCP TTL:128 TOS:0x0 ID:33624 IpLen:20 DgmLen:48 DF ******S* Seq: 0xDD419BC9 Ack: 0x0 Win: 0xFFFF TcpLen: 28 TCP Options (4) => MSS: 1460 NOP NOP SackOK

Por meio da gerncia, BASE, possvel visualizar todos os eventos coletados.

Ilustrao 8.17 Anlise de logs no BASE.

Alm disso, o IPS Snort Inline foi disposto por cinco dias em um ambiente real analisando pacotes que eram destinados porta tcp/25, SMTP, que continham as strings .lnk, .pif, .cmd, .bat, .msi, .exe, .scr, .vbs. Durante esses dias pacotes destinados ou originados da/para a rede interna no foram entregues, sendo descartados pelo Snort Inline.

Sistemas de Preveno de Intruso baseado em Software Livre: De

84

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

8.2 Anlise e Discusso dos Resultados


Concludos os testes de tentativas incidentais de intruso, pode-se verificar que o Snort_Inline detectou essas tentativas, registrando-as. Observou-se que a tentativa de acesso aos arquivos de sistema, foi detectada pelo mecanismo preprocessor e pelo mecanismo de deteco por assinatura. Esse evento pode gerar muitos falso-positivos, por exemplo, com simples erros de digitao no navegador web. O port-scan foi detectado logo pelo preprocessor e uma simples ao que pode minimizar os eventos do port-scan na rede desabilitar o echo-request a partir da rede externa. A tentativa de acesso telnet descartada, entretanto, foi observado que a conexo demora mais que o normal pra ser finalizada, do lado do cliente, j que no chega ao servidor. Esses exemplos demonstram a funcionalidade dos mecanismos de deteco e ao do Snort_Inline. Com a implementao da gerncia por meio da interface grfica BASE, tornou mais acessvel a visualizao dos eventos coletados.

8.3 Problemas diagnosticados e futuras implementaes


Com a utilizao do Snort_Inline, foram notados alguns problemas: a. Disponibilidade do banco Como os eventos so armazenados em uma mquina remota de banco de dados, caso no haja conectividade com a mquina de gerncia o Snort no inicializado, o que pode ser resolvido por meio de um script que faa o teste de conectividade e em caso negativo altere o arquivo de configurao snort.conf, desabilitando a opo de armazenamento no banco remoto. b. Manuteno do arquivo de configurao Sistemas de Preveno de Intruso baseado em Software Livre: De 85

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Ao se atualizar as regras necessrio que seja feito um backup prvio das regras correntes, pois quando da aplicao de uma nova verso, existe a possibilidade de incluso ou excluso de features padro, o que exige que seja reconfigurado o arquivo do Snort c. Assinaturas O processo de atualizao de regras no simples, pois necessrio alterar todas as assinaturas as quais se deseja descartar os pacotes, o que pode ser feito por meio de um script. d. Eventos repetidos: A anlise de logs pode ser facilitada com aplicativos que agrupam eventos repetidos. e. Alta disponibilidade Por o IPS ser inline necessrio que todos os sistemas que o compem estejam ativos, caso contrrio, causar indisponibilidade rede. O que pode ser minimizado utilizando tcnicas de load-balance ou redundncia de link. Em redes que trafegam uma grande quantidade de dados possvel que haja perda de pacotes durante a anlise, o que pode ser minimizado com o uso registros de alertas no formato do binrio do TCPDump. Scripts podem ser criados para verificar se todos os sistemas (Snort e bridge) esto ativos. f. LiveCD

possvel a implementao de sistemas embarcados rodando em um LiveCD ou at mesmo em memrias flash, o que til pois em uma possvel invaso do sistema operacional, no haveria como danificar o sistema de arquivos. g. Harden recomendado utilizar tcnicas que tornam o sistema mais fechado possvel em mquinas diretamente expostas, como o caso de IPS.

Sistemas de Preveno de Intruso baseado em Software Livre: De

86

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

CONCLUSO
A implementao deste projeto ocorreu sob condies limitadas, como falta de um conhecimento especfico do assunto, inicialmente, pouca documentao a respeito do Snort Inline bem como falta de recursos de maquinrio. A partir do estudo realizado, foi possvel conhecer as principais ferramentas utilizadas para implementar IPS o qual incrementa a proteo de forma ativa, constituindo um elemento a mais na defesa em profundidade de segurana da informao. Uma estratgia de segurana baseada em uma plataforma de segurana, privilegiando a ao preventiva, auxilia no apenas nos esforos de uma melhor infraestrutura, mas tambm colabora com o controle dos gastos com segurana da informao, reduz a complexidade da administrao de segurana e melhora as comunicaes entre as equipes responsveis pela administrao de rede, de sistemas e de segurana. Preveno significa detectar e bloquear um ataque antes que este alcance seus alvos: servidores, sistemas e computadores pessoais. Por meio da anlise do trfego e mecanismos avanados, os sistemas de preveno contra intrusos realizam essa tarefa, detectando tentativas, a partir de ataques conhecidos ou no, de explorar vulnerabilidades em computadores e sistemas em geral. Sistemas de deteco e preveno de intrusos, assim como softwares de antivrus possuem problemas semelhantes: novos ataques no so detectados porque s vezes no h uma assinatura para eles - uma das motivaes de se continuar o estudo de Preveno de Intruso, fato que as ameaas aumentam constantemente. Para uma melhor implementao de IPS necessrio que a rede a ser protegida seja conhecida. Sistemas de proteo devem amadurecer com o tempo visando, principalmente, minimizar bloqueio de trfego desejvel, custo e gerenciamento. Entretanto

Sistemas de Preveno de Intruso baseado em Software Livre: De

87

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia os IPSes no so a soluo para os ataques que ocorrem no cotidiano das redes corporativas e na Internet, a qual deve ser feita em mltiplas camadas.

Sistemas de Preveno de Intruso baseado em Software Livre: De

88

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia

REFERNCIAS BIBLIOGRFICAS
[1] [2]

Cisco Secure Intrusion System. Cisco Press. Debian The Universal Operating System. Disponvel em: <http://www.debian.org/>. Acesso em 01/09/2005.

[3] [4] [5]

Snort. Disponvel em: <http://www.snort.org> Acesso em 01/09/2005. Snort_inline. Disponvel em: <http://snort-inline.sourceforge.net/> CERT Coordination Center. Disponvel em: <http://www.cert.org/>. Acesso em: 01/11/2005.

[6]

CERT.br -- Centro de Estudos, Resposta e Tratamento de Incidentes de Segurana no Brasil. Disponvel em: <http://www.cert.br/>. Acesso em 23/11/2005.

[7]

Seguranas em redes Disponvel em :http://www.rnp.br/newsgen/9909/politica.shtml Acesso em 23/08/2005

[8]

Crimes Virtuais. Disponvel em <http://unainet.com.br/crimes_virtuais/crimes_virtuais.htm> . Acesso em: 01/08/2005.

[9] [10]

NORTHCUTT, S Inside Network Security Perimeter. Estados Unidos: Sams, 2002 MCCLURE, S. Hackers expostos: segredos e solues para a segurana de redes /Stuart McClure, Joel Scambray e George Kurtz; traduo de Daniel Vieira. Rio de Janeiro: Campus, 2003. Ttulo original: Hacking exposed.

[11]

MELO, S. A arte cracker de levantar informaes do alvo, seu perigo e contramedidas. 2004. Disponvel em <http://linuxchix.org/br/palestras> Acesso em agosto de 2005

[12] [13]

Northcutt, Stephan. Network Intrusion Detection System. 2nd Edition. TIPOS DE IDS Disponvel em < www.firewalls.com.br/files/Palestra_IDS.pdf> . Acesso em agosto de 2005

[14]

Tipos

de

consoles

Disponvel

em

<http://revista.unicamp.br/infotec/artigos/frank4.html> Acesso em setembro de 2005 Sistemas de Preveno de Intruso baseado em Software Livre: De 89

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Linux Ethernet bridging. Disponvel em: <http://bridge.sourceforge.net/> . > Acesso em novembro de 2005
[16]

[15]

ebtables. Disponvel em: <http://ebtables.sourceforge.net/>. Acesso em novembro de 2005

[17] [18]

MySQL. Disponvel em: <http://www.mysql.org/>. Acesso em agosto de 2005 The Honeynet Project. Know Your Enemy: Learning with User-Mode Linux. <http://www.honeynet.org/papers/uml/index.html> Acesso em novembro de 2005.

[19]

Apache Server. Disponvel em: <http://httpd.apache.org/> . Acesso em setembro de 2005

[20]

Snort with BASE. Disponvel em <http://www.ntsug.org/docs/Snort_base_fc3.pdf> . Acesso em setembro de 2005

[21]

SCHULTZ, E.; ENDORF, C.; MELLANDER, J. The future of intrusion detection

and prevention. In: ______. Intrusion detection and prevention. Emeryville, California: McGraw-Hill/Osborne, 2003. cap. 17. Disponvel em: <http://searchsecurity.techtarget.com/searchSecurity/downloads/IDP_Ch17.pdf>. Acesso em:nov. 2005.
[22]

Libnet. Disponvel em <www.packetfactory.net/Projects/Libnet/>. Acesso em:agosto. 2005

[23]

LIDS.Disponvel<http://www.rhbr.com.br/modules.php?name=News&new_topic=39>. Acesso em:nov. 2005.

[24] [25]

SnortSam. Disponvel em <http://www.snortsam.net/> . Acesso em:nov. 2005. Sourcefire Network Security. Disponvel em: < http://www.sourcefire.com/>. Acesso em: set 2005

[26]

HIPS-NIPS

Disponvel

em

<http://www.scmagazine.com/us/grouptest/details/79d57b71-5ebd-4ce2-93e348ed0b64c5d3/special-report-intrusion-prevention/> Acesso em: nov 2005

Sistemas de Preveno de Intruso baseado em Software Livre: De

90

Ps Graduao em Redes de Computadores Universidade Catlica de Braslia Intrusion Prevention and Active Response: Deploying Network and Host IPS. Michael Rash, Angela Orebaugh, Graham Clark, Becky Pinkard, Jake Babbin
[28] [29]

[27]

Snort 2.1 Intrusion Detection. Andrew Baker, Jay Beale, Brian Caswell, Mike Poore Snort 2.0 Intrusion Detection. Jay Beale, James C. Foster, Jeffrey Posluns, Ryan Russell, Brian Caswell.

[30] [31]

Intrusion Detection with Snort. Jack Koziol. Intrusion Detection with SNORT: Advanced IDS Techniques Using SNORT, Apache, MySQL, PHP, and ACID. Rafeeq Rehman

[32] [33] [34]

Snort for Dummies. Charlie Scott, Paul Wolfe, Bert Hayes. Snort Cookbook. Angela D. Orebaugh, Simon Biles, Jacob Babbin Snort and IDS Tools. Kerry J. Cox, Christopher Gerg

Sistemas de Preveno de Intruso baseado em Software Livre: De

91

Você também pode gostar