Sei sulla pagina 1di 9

ESTUDO DE CASO EM SEGURANÇA DE REDES USANDO COMO FERRAMENTA DE

IDS (INTRUSION DETECTION SYSTEM) O SNORT.

Francisco Vieira Júnior 1 .

RESUMO
A área de segurança em tecnologia da informação está crescendo cada vez mais devido aos ataques e falhas
existentes nos sistemas computacionais. Os ataques são cada vez mais comuns, podendo esses, trazer
grandes prejuízos para as organizações. O IDS, Intrusion Detection System, é um sistemas de detecção de
intrusão, o qual auxilia na segurança de redes de computadores. Mas de que forma os sistemas de detecção
realmente auxiliam?

O objetivo deste artigo é explicitar o estudo de caso em segurança de redes de computadores, usando como
ferramenta de IDS, o Snort, mostrando sua arquitetura e o seu funcionamento. É demonstrada e analisada
uma arquitetura de redes, simulando uma organização, no qual o Snort é utilizado como ferramenta de IDS.

Palavras-chave: Segurança; Redes de computadores; Detecção de Intrusão; Intrusion Detection


System (IDS); Snort.

INTRODUÇÃO

Este projeto objetiva, através da implantação da tecnologia de IDS com a ferramenta Snort, em um
laboratório simulando uma organização, verificar se realmente a mesma auxilia na segurança da
rede de computadores. A principal motivação é proporcionar um estudo em segurança em redes de
computadores, analisando os ataques oriundos da internet e de simulações realizadas dentro e fora
da organização.

Na seção 1, será abordado aspectos sobre segurança em tecnologia da informação. Na seção dois
será apresentado a tecnologia de detecção de intrusão, IDS, os tipos e as estratégias de análise. A
seção 3 visa apresentar a ferramenta Snort, mostrando sua arquitetura e seu funcionamento.

Na seção 4 será apresentado o estudo de caso, demonstrando a arquitetura, os softwares utilizados,


as análise dos logs. Na seção 5, finalizando o artigo, serão apresentadas as observações finais sobre
o estudo.

SEGURANÇA EM TI, TECNOLOGIA DA INFORMAÇÃO

A área de segurança em TI é bastante extensa podendo abranger desde a segurança física até a
segurança lógica, existindo várias metodologias para alcançar um nível satisfatório de segurança.

Atualmente existem normas junto a ISO 2 e IEC 3 e certificações específicas para segurança da
informação, como por exemplo a Security+ emitida pela CompTIA, Computing Technology
Industry Association, uma das principais associações da área de tecnologia.

1
Graduando do curso de bacharelado em Sistemas de Informação (peer.chico@gmail.com), sob a orientação do
professor Cristiano Aguiar (cristianoaguiar@oi.com.br).
2
International Organization for Standardization (ISO) é uma organização internacional que aglomera os grêmios de
padronização/normalização de 148 países. O ISO aprova normas internacionais em todos os campos técnicos, exceto na
eletricidade e eletrônica, áreas para as quais o IEC é responsável.
3
A International Electrotechnical Commission (IEC) é uma organização internacional de padronização de tecnologias
elétricas, eletrônicas e relacionadas. Alguns dos seus padrões são desenvolvidos juntamente com a ISO.

1
Na área de segurança é fundamental saber o que está se protegendo. Segundo Zwicky (2000, p.4),
quando você se conecta na internet, você está colocando em risco os seus dados, ou seja, todas as
informações mantidas no computador, os recursos computacionais, tudo que a rede de
computadores pode oferecer e a reputação, devido a confiança que a empresa pode perder por causa
de uma invasão em relação aos seus clientes e usuários.

Para isso é fundamental conhecer as ameaças e vulnerabilidades existentes em uma rede de


computadores. Segundo Russel (1992, p.11), a vulnerabilidade é um ponto onde o sistema está
suscetível a ataques. E as ameaças são possíveis riscos ao sistema.

As ameaças são divididas em três categorias: natural, não-intencional, e intencional. A natural


atinge qualquer tipo de espaço físico ou parte de equipamentos como exemplo incêndio, inundações
entre outros desastres. A não-intencional acontece por ignorância do usuário ou do administrador do
sistema, onde os mesmos não são treinados apropriadamente. A intencional é aquela a qual alguém
propositadamente toma atitudes no sentido de danificar, roubar, acessar ou alterar algum sistema ou
informação alheia.

Os tipos mais comuns de vulnerabilidades são:

-Físicas: o ambiente físico é vulnerável. Pois pode ocorrer uma ato de vandalismo ou
sabotagem se uma pessoa não autorizada tiver acesso ao ambiente físico.

-Natural: redes de computadores são vulneráveis a desastres e acidentes naturais.


Organizações podem ter seus dados destruídos por inundações, incêndios , relâmpagos, etc.

-Hardware e Software: falhas de hardware e de software podem comprometer toda a


segurança, e com isso o sistema poderá ser danificado abrindo brechas a uma invasão.

-Mídias: pacotes de discos (cd-rom, dvd-rom), rolos de fitas (fita dat) podem ser roubados
ou danificados por qualquer risco comum;

-Comunicação: esta pode ser interceptadas e forjadas, ou até mesmo danificada fisicamente
caso não passe por toda arquitetura de segurança de rede.

-Humanas: as pessoas que administram e usam os sistemas de computadores representam a


maior de todas as vulnerabilidades. Pois a segurança de todo o sistema está, muitas vezes, na mão
de pessoas sem treinamento.

Mesmo executando todos os procedimentos de segurança, não existirá a garantia total de uma
perfeita segurança em redes de computadores. Segundo Wadlow (2000, p.4), a segurança é um
processo. Pode-se aplicar o processo seguidamente à rede e a empresa que a mantêm e, dessa
maneira, melhorar a segurança dos sistemas. Se não iniciar ou interromper a aplicação do processo,
sua segurança será cada vez pior, à medida que surgirem novas ameaças e técnicas de invasões.

Atualmente existem várias propostas para segurança em TI, pois o tema abrange muitas tecnologias,
dispositivos e softwares. As tecnologias mais usadas no momento são de antivírus, criptografia,
autenticação, assinaturas e certificados digitais, e firewall.

INTRUSION DETECTION SYSTEM (IDS)

A utilização de uma ferramenta para analisar as tentativas de ataques auxilia na segurança de redes
de computadores. Através desta análise é possível saber de onde está partindo uma invasão podendo

2
bloquear a comunicação com a origem, evitando uma possível violação. O IDS, Sistema de
Detecção de Intrusão, detecta e notifica as tentativas de intrusão, analisando e capturando os pacotes
que estão trafegando na rede procurando identificar as evidencias de um ataque em andamento,
podendo emitir alarmes, ou executando uma ação automática, como por exemplo, a desativação do
link, a depender da ferramenta.

Detecção de intrusão significa detectar o uso não autorizado ou ataques em um sistema ou em uma
rede. Por analogia, um IDS está para rede assim como um pacote de software antivírus está para os
arquivos que entram em um sistema: ele inspeciona o conteúdo do tráfego da rede para procurar e
desviar possíveis ataques, exatamente como um pacote de software antivírus inspeciona o conteúdo
de arquivos, anexos de e-mail, etc., para procurar assinaturas de vírus (padrões que correspondem a
software danoso conhecido) ou possíveis ações maldosas (padrões de comportamento que são no
mínimo suspeitos, se não completamente inaceitáveis). (CASWELL 2003, p.2).

Várias ferramentas de IDS estão disponíveis no mercado, tanto de hardware como de software. As
de hardware são um dispositivo independente previamente instalado e configurado, normalmente
sendo proprietários, IDS comercial, podendo ser também um firewall e/ou proxy 4 a depender do
fabricante. As de softwares, normalmente são executados em conjuntos com os firewalls ou proxies,
podendo ser proprietários ou gratuitos. Ambos podem trabalhar independente dos firewalls ou
proxies.

Os IDSs tendem a trabalhar no segmento que tem acesso a internet, detectando invasões externas, e
podem trabalhar também no segmento da rede interna, podendo detectar intrusos na própria
organização. Na figura 1 é apresentado uma implementação de um IDS.

Figura 1 – IDS Implementation Map


Fonte: Adaptado de ROESCH (2006)

Segundo Caswell (2003, p.3) os IDSs trabalham com as seguintes estratégias de análise:

- Detecção de assinatura: Os IDSs usam um banco de dados de padrões de tráfego ou


atividades relacionadas a ataques conhecidos como assinaturas de ataques. É semelhante aos
programas de antivírus que trabalham com as assinaturas de vírus para reconhecer se um arquivo
está infectado.

- Detecção de anomalia: Os IDS utilizam regras ou conceitos predefinidos sobre atividade de


um sistema padrão, funcionando e trabalhando normalmente; e um sistema fora do padrão,
funcionando e trabalhando diferente do sistema padrão, para diferenciar o fluxo de dados.

4
Serviço que oferece o acesso a internet para uma rede local, gerenciando o tráfego de informações, e armazenando
páginas da internet tornando o acesso mais rápido e confiável.

3
Nos IDS existe a possibilidade de ocorrer os falsos positivos e os falsos negativos. Os falsos
positivos acontecem quando pacotes normais são identificados como tentativas de ataques,
distorcendo a análise. Os falsos negativos ocorrem quando pacotes provenientes de ataques não são
identificados, tornando um grande problema.

Caswell (2003, p.3) classificou os IDS por sua funcionalidade onde os mesmos podem trabalhar
analisando o tráfego da rede, baseado em rede, conhecido como NIDS, Network IDS, onde
monitora todo o tráfego do segmento de rede, recebendo todos os pacotes, tendo a capacidade de
monitorar a atividade em diversas máquinas. Analisando uma máquina específica, baseado em host,
HIDS, recebendo pacotes com destino a qual está instalado o IDS. Funcionando como IDS
Distribuído, DIDS, o qual funciona com sensores remotos sendo esses um NIDS ou um HIDS, com
o gerenciamento e armazenamento de logs ocorrendo em uma única máquina centralizada.

SNORT

Segundo Caswell (2003, p.21) o Snort é uma ferramenta de NIDS, Network Intrusion Detection
System, bastante utilizada, pois além de gratuito, o seu código fonte é aberto, open source. Dessa
forma os desenvolvedores podem analisar e acrescentar novas funcionalidades.

O Snort surgiu em 1998 de um projeto chamado APE desenvolvido por Marty Roesch, o qual
insatisfeito com algumas funcionalidades do programa TCPDump, um software de farejamento que
tem como objetivo analisar problemas de desempenho do TCP/IP, ele criou o APE com mais
recursos e funcionalidades. No mesmo ano Marty disponibilizou, já com o nome de Snort, a
primeira versão, sendo na época apenas um software de farejamento. Em 1999 foi introduzido no
Snort a primeira análise baseada em assinatura, dando inicio na área de detecção de intrusão.

O mesmo possui os recursos de farejamento de pacote, registro de pacotes e detecção de invasão, o


qual é baseado em assinatura e usa regras para a detecção de intrusão. Com isso pode ser utilizado
na rede como um simples farejador de pacotes, e/ou um registrador de pacotes, e/ou como detecção
de intrusão.

O Snort pode ser executado em sistemas Linux, FreeBSD, NetBSD, OpenBSD, Windows, Sparc
Solarios, Power PC, MacOS X e PA-RISC HP-UX, e nas plataformas de hardware Intel, PA-RISC,
PowerPC e Sparc.

A arquitetura do Snort segundo Caswell (2003, p.26) é composta pelo farejador, pré-processador, o
mecanismo de detecção e a saída, representada pelo alertas/registro, conforme figura 2.

Figura 2 – Arquitetura do Snort


Fonte: Adaptado de CASWELL (2003)

4
O farejador, escuta todo tráfego da rede. Para isso é preciso que o dispositivo de rede esteja no
modo promíscuo 5 , o qual todos os pacotes trafegados são capturados. Os farejadores podem ser
usados para análise, diagnóstico e solução de rede, e análise e comparativo de desempenho. A
captura dos dados é independente do protocolo, por exemplo o TCP/IP, IPX e AppleTalk.

O pré-processador é responsável por pegar todos os pacotes brutos, analisando cada comportamento
com os plug-ins disponíveis. A função do pré-processador é alertar, eliminar e modificar os pacotes.
Existem vários plug-ins, como por exemplo, telnet_decode, http_decode, ftp_decode, rpc_decode,
frag2, stream4, portscan.

O mecanismo de detecção verifica os dados recebidos do pré-processador e seus plug-ins com a


base de dados contendo as regras. Após receber os pacotes do pré-processador, o mecanismo de
detecção analisará de acordo com as regras existente. Caso o pacote tenha sido identificado em
algumas dessas regras, será executado um registro e/ou alerta. No mecanismo de detecção também
existe uma arquitetura de plug-in para que outros desenvolvedores vinculem com as regras,
interagindo com outros softwares.

Os dados detectados pelo mecanismo de detecção geram uma saída, a qual está representado na
figura 2 sendo representada pelo alertas/registro. A saída é bastante flexível, pois utiliza o mesmo
conceito de plug-ins. Existem vários tipos de plug-ins, como por exemplo os de database, onde os
registros e/ou alertas são armazenados em banco de dados (MySql, PostgreSQL, unixODBC, Oracle
e MS-Sql Server).

Os plug-ins na arquitetura do Snort podem ser ativados ou desativados a depender da configuração


do administrador, além de poderem ser desenvolvidos plug-ins específicos para uma organização,
interagindo com a ferramenta.

Segundo o que observamos, o funcionamento do Snort acontece quando um computador tenta se


comunicar com outro em uma rede. O mesmo pode funcionar capturando pacotes provenientes da
rede externa ou da rede internet ou de um segmento da rede.

O Snort trabalhando em segmento de rede onde contém apenas hubs não terá nenhum problema,
pois eles trabalham como um repetidor, em broadcast, replicando os sinais para todas as portas.
Porém em um segmento que tenha um switch é preciso configurar o mesmo para que todos os
pacotes com origem para ele sejam encaminhados para a porta onde se encontra o Snort. Isso por
que o switch tem o recurso de encaminhar os pacotes para a porta específica, não trabalhando em
broadcast, pois o mesmo tem uma tabela contendo todos os endereços MACs 6 do segmento da rede.

Trabalhando como NIDS da rede externa, ele normalmente fica instalado no firewall, ou no proxy.
Capturando todos os pacotes oriundos da internet para rede interna.

ESTUDO DE CASO

O estudo de caso é composto por um laboratório o qual analisará o Snort como ferramenta de IDS.
Este laboratório simulará o funcionamento de uma organização, composta por uma rede interna, e
servidores de acesso a internet.

5
Diz-se que uma placa de rede está no modo promíscuo quando a mesma captura todos os dados trafegados no
segmento. Por padrão as placas de rede são configuradas no modo não-promíscuo, capturando apenas os dados enviados
para a mesma.
6
Media Access Control, é o endereço físico da interface de rede.

5
O laboratório é formado por três computadores simulando uma organização, como mostra a figura
3.

Figura 3 – Arquitetura do laboratório


Fonte: Os autores (2006)

Os nomes Trinity e Morpheus dificultam a identificação da máquina e dos serviços executadas


nelas.

O computador Trinity é o firewall/proxy da rede. Ele é o meio de comunicação da rede interna com
a internet. O computador Morpheus é o servidor de banco de dados, de web, e de logs do Trinity,
armazenando todos os logs do mesmo. O Morpheus representa uma rede DMZ, DeMilitarized Zone,
técnica usada para oferecer uma rede na qual serviços que necessitam do acesso externo para a rede
interna são disponibilizados. O Desktop representa uma rede interna, na qual o acesso de fora para
dentro não é permitido.

A conexão a internet é feita pelo Velox, serviço oferecido pela Telemar.

A instalação do Snort foi realizada em Trinity, onde através do plug-in de saída database,
armazenaremos os logs no banco de dados MySql instalado em Morpheus. A visualização desses
logs é possível através da utilização do software ACID, Analysis Console for Intrusion Databases,
onde são geradas páginas de relatório, no formato PHP, a partir dos mesmos, sendo executado no
servidor web Morpheus.

As características dos computadores são descritas abaixo:

Trinity: Duron 1.0 GHz, 256 MB RAM, HD 20GB, Placa de Rede Off-board Realtek 3189, Sistema
Operacional Debian Sarge, Kernel 2.6.8-2-386, Iptables 1.2.11-10, Squid 2.5.9-10sarge2, Snort
2.3.2-3, Libpcap 0.8.3-5.

6
Morpheus: Athlon 1.0 GHz, 256 MB RAM, HD 20GB, Placa de Rede Off-board Realtek 8139,
Sistema Operacional Fedora Core 4, Kernel 2.6.11.-1i386_FC4, Mysql 4.0.24, Apache 2.0.54-5,
ACID 0.9.6b20-5.1..

Desktop: Athlon 1.2 GHz, 1GB RAM, HD 40GB, Placa de Rede On-board, Sistema Operacional
Windows XP Professional SP2.

O Snort ficou em execução no período de 29/05/2006 a 03/06/2006 em horários determinados,


normalmente a noite. Os relatórios em formato PHP gerados a partir dos logs podem ser
visualizados em qualquer browser; no nosso caso o browser utilizado foi o Mozila Firefox.

A página inicial do ACID é mostrada na figura 4.

Figura 4 – Página inicial do Acid.


Fonte: Os autores (2006)

No período de execução do Snort, foram gerados 193 alertas. Os tipos de alertas mais freqüentes,
conforme a figura 5, foram portscan e http_inspect. O alerta de portscan indica que alguém
pesquisou as portas abertas no sistema. O http_inspect indica que a tentativa de ataque foi a partir
de solicitações http.

7
Figura 5 – Alertas mais freqüentes.
Fonte: Os autores (2006)

Além de verificar os ataques mais freqüentes, é possível visualizar as origens dos ataques, o
protocolo usado e as estatísticas de pacotes TCP, UDP e ICMP, facilitando bastante na visualização
dos logs.

CONSIDERAÇÕES FINAIS

Neste trabalho foram apresentados aspectos sobre segurança em TI, o conceito de IDS e a
ferramenta Snort como detecção de intrusão. O objetivo principal é avaliar a ferramenta como
detecção de intrusão para auxiliar na segurança em TI.

Apesar de o período de análise ter sido pequeno e de não termos utilizados nenhuma ferramenta de
hacking para realizarmos simulações, o Snort pode auxiliar bastante na segurança de TI, verificando
possíveis tentativas de ataques, as técnicas mais utilizadas e a origem de onde está partindo a
mesma. Com isso o administrador pode realizar alguns procedimentos de prevenção, como o
bloqueio de determinado IP ou faixa de IPs.

O projeto se encontra em fase de implementação. O mesmo foi selecionado para a bolsa de pesquisa
BITEC 2006, Bolsa de Apoio ao Desenvolvimento Tecnológico, uma parceria entre o IEL, Sebrae e
CNPq, onde aplicaremos nosso projeto na Rede BandBahia.

8
REFERÊNCIAS BIBLIOGRÁFICAS

CASWELL, Brian; BEALE Jay; FOSTER James C.; POSLUNS Jeffrey., Snort 2 Sistema de
Detecção de Intruso. 1ª Edição. Rio de Janeiro: Editora Alta Books: 2003.

CERT.br, Centro de Estudos, Respostas e Tratamento de Incidentes de Segurança no Brasil.


http://www.cert.br, acessado no dia 03 de Abril de 2006.

Consórcio Brasileiro de Honeypots., Projeto Honeypots Distribuídos. http://www.honeypots-


alliance.org.br/index-po.html, acessado em 28 de Abril de 2006.

HOLANDA, Roosevelt de, O estado da arte em sistemas de gestão da segurança da


Informação: Norma ISO/IEC 27001:2005.
http://www.modulo.com.br/pt/page_i.jsp?page=3&catid=2&objid=469&pagenumber=0&idiom=0,
acessado em 15 de Maio de 2006.

IDC., Brasil IT Security & Business Continuity Conference 2006.


http://wnews.uol.com.br/site/noticias/materia.php?id_secao=4&id_conteudo=4036, acessado no dia
01 de Junho de 2006.

IDC., Brasil IT Security & Business Continuity Conference 2006.


http://wnews.uol.com.br/site/noticias/materia.php?id_secao=4&id_conteudo=4039, acessado no dia
30 de Março de 2006.

ISO, International Standards Organization. http://www.iso.org, acessado em 15 de Maio de


2006.

LAING, Brian,. How to Guide-Implementing a Network Based Intrusion Detection System.


http://www.snort.org/docs/iss-placement.pdf, acessado no dia 04 de Abril de 2006.

MARTINS, José Carlos Cordeiro,. Gestão de projetos de segurança da informação. 1ª Edição.


Rio de Janeiro: Editora Brasport: 2003.

MITNICK, Kevin D; SIMON, William L., A Arte de Invadir. 1ª Edição. São Paulo: Editora
Prentice-Hall: 2005.

ROESCH, Martin,. SNORT. http://www.blackhat.com/presentations/bh-usa-01/MartyRoesch/bh-


usa-01-Marty-Roesch.ppt, acessado no dia 18 de Abril de 2006.

RUSSEL, Deborah; GANGEMI G.T,. Computer Security Basics. 1ª Edição. United States of
America: Editora O’ Reilly & Associates: 1992.

SCHNEIER, Bruce; Bruce Schneier. http://www.schneier.com, acessado no dia 25 de Maio de


2006.

TANENBAUM, Andrew S,. Redes de Computadores. 4ª Edição. Rio de Janeiro: Editora Campus:
2003.

WADLOW, Thomas,. A Segurança de redes: projeto e gerenciamento de redes seguras. 1ª


Edição. Rio de Janeiro: Editora Campus: 2000.

ZWICKY, Elizabeth D; COOPER, Simon; CHAPMAN D. Brent,. Bulding Internet firewalls. 2ª


Edição. United States of America: Editora O’Reilly & Associates: 2000.

Potrebbero piacerti anche