UNIÃO EDUCACIONAL MINAS GERAIS S/C LTDA
FACULDADE DE CIÊNCIAS APLICADAS DE MINAS
Autorizada pela Portaria nº 577/2000 – MEC, de 03/05/2000
BACHARELADO EM SISTEMAS DE INFORMAÇÃO
TRABALHO DE FINAL DE CURSO
SISTEMA DE DETECÇÃO DE INTRUSOS - IDS
MARCOS ANTÔNIO DE OLIVEIRA SANTOS
UBERLÂNDIA, 2004
ii
MARCOS ANTÔNIO DE OLIVEIRA SANTOS
SISTEMA DE DETECÇÃO DE INTRUSOS – IDS
Trabalho de Fim de Curso apresentado
à Uniminas, como requisito parcial à
obtenção do título de Bacharel em
Sistemas de Informação.
Orientador: Professor Especialista Gilson Marques Silva
Uberlândia
2004
iii
MARCOS ANTÔNIO DE OLIVEIRA SANTOS
SISTEMA DE DETECÇÃO DE INTRUSOS – IDS
Trabalho de Fim de Curso apresentado
à Uniminas, como requisito parcial à
obtenção do título de Bacharel em
Sistemas de Informação.
Banca Examinadora:
Uberlândia, 06 de julho de 2004.
______________________________________
Professora Dra. Kátia Lopes Silva
______________________________________
Professor Esp. Alexandre Rangel
______________________________________
Professor Esp. Gilson Marques Silva
______________________________________
Professor Esp. Alexandre Campos
iv
RESUMO
A segurança torna-se extremamente importante nos dias de hoje à
medida que o número de ataques e intrusões a sistemas e redes de
computadores aumenta de maneira significativa. Assim, para garantir o
aumento da segurança, surgem novas técnicas e ferramentas, mas a falta de
uma correta abordagem na seleção e implementação dessas técnicas faz com
que se tornem ineficazes. Nesse sentido, este trabalho tem o objetivo de
estudar as características e principais funcionalidades do Sistema de Detecção
de Intrusos(IDS) executando em plataforma Linux. Após isso, foi feito um
estudo de caso com o objetivo de demonstrar a utilização de um sistema de
IDS.
Com isto, pode-se constatar que um sistema de IDS é de extrema
importância em ambientes corporativos, sejam eles pequenos ou grandes, para
controlar acessos e vulnerabilidades que possam existir nos sistemas.
v
ABSTRACT
Nowadays, security becomes extremely important while attacks and
intrusions to systems and computers networks increase significantly. Then, to
guarantee the security, new techniques and tools are created, but a nonexistent approach in the selection and implementation of this techniques
become them inefficacious. In this direction, this monograph has the objective
to study the characteristics and main functionalities of the Intrusion Detection
System (IDS) executing in Linux platform. After this, a case study was made to
demonstrate the utilization of an IDS system.
This way, It is possible to notice that an IDS system has extreme
importance in corporative environments, been them small or great, to control
access and possible vulnerabilities in the systems.
vi
SUMÁRIO
p.
1 INTRODUÇÃO ................................................................................................ 1
2 ESTUDO TEÓRICO DE SISTEMAS DE DETECÇÃO DE INTRUSOS........... 3
2.1 COMPONENTES DE UM IDS .............................................................................. 3
2.1.1 Módulo Sensor ........................................................................................ 4
2.1.2 Módulo Analisador .................................................................................. 4
2.1.3 Módulo de Gerência ................................................................................ 5
2.1.4 Módulo Reativo........................................................................................ 6
2.2 TIPOS DE IDS................................................................................................. 6
2.2.1 Sistema de Detecção de Intrusos em Rede (SDIR) .............................. 7
2.2.2 Sistema de Detecção de Intrusos em Host (SDIH) ............................. 10
2.2.3 Solução híbrida ..................................................................................... 12
2.3 TÉCNICAS DE ANÁLISE .................................................................................. 13
2.3.1 Métodos tradicionais............................................................................. 14
2.3.2 Análise baseada em assinaturas ......................................................... 15
2.3.3 Análise baseada em comportamento .................................................. 18
2.3.4 Métodos avançados .............................................................................. 20
2.4 POSICIONAMENTO DOS MÓDULOS .................................................................. 21
2.4.1 Implantando vários sensores na rede ................................................. 21
2.4.2 Posicionando sensores próximos a dispositivos de filtragem ......... 22
2.4.3 Posicionando sensores de IDS na rede interna ................................. 23
3 ESTUDO DE CASO DE UM SISTEMA IDS BASEADO EM FERRAMENTAS
FREEWARE..................................................................................................... 24
3.1 CRONOGRAMA DO PROJETO .......................................................................... 24
3.2 TOPOLOGIA .................................................................................................. 25
3.2 PROJETO ..................................................................................................... 25
3.2.1 Objetivo Projeto..................................................................................... 25
3.2.3 Fases do Projeto ................................................................................... 26
vii
4 CONCLUSÃO ............................................................................................... 35
5 REFERÊNCIAS BIBLIOGRÁFICAS ............................................................. 36
viii
LISTA DE FIGURAS
p.
FIGURA 1: MODELO GENÉRICO DE UM IDS........................................................... 3
FIGURA 2: IDS BASEADO EM REDE (SDIR) .......................................................... 7
FIGURA 3: ARQUITETURA DE UM SISTEMA DE REGISTROS .................................... 11
FIGURA 4: DETECÇÃO DE INTRUSOS HÍBRIDA ..................................................... 13
FIGURA 5: REDE DE PETRI PARA ANÁLISE DE SUCESSIVOS LOGINS INCORRETOS .. 17
FIGURA 6: TOPOLOGIA DE UMA PEQUENA REDE.................................................. 25
FIGURA 7: INSTALAÇÃO DO SNORT .................................................................... 27
FIGURA 8: INSTALAÇÃO DO APACHE ................................................................. 27
FIGURA 9: DESCOMPACTAÇÃO DO ACID........................................................... 28
FIGURA 10: TELA INICIAL DO ACID................................................................... 30
FIGURA 11: 15 ÚLTIMOS ALERTAS..................................................................... 31
FIGURA 12: ALERTAS DAS ÚLTIMAS 24 HORAS .................................................. 32
FIGURA 13: INÍCIO DO PACOTE DE UM ALERTA ................................................... 33
FIGURA 14: CONTINUAÇÃO DO CABEÇALHO TCP E DA APLICAÇÃO DE UM ALERTA 34
ix
LISTA DE SIGLAS
ACID
- Analysis Console for Intrusion Database
DoS
- Denial of Service
IDS
- Intrusion Detection System
IIS
- Internet Information Server
IP
- Internet Protocol
MAC
- Medium Access Control
SDIR
- Sistema de Detecção de Intrusos em Rede
SDIH
- Sistema de Detecção de Intrusos em Host
SNMP
- Simple Mail Transfer Protocol
TPC
- Transmission Control Protocol
UNIMINAS - União Educacional Minas Gerais S/C Ltda
1 INTRODUÇÃO
Certamente o conceito de segurança não começou como uma ciência
nem como uma arte, mas sim como um instinto. O maior interesse do homem,
durante a sua história, está relacionado à segurança: sua própria, de sua família,
de seus bens e de seu modo de vida.
Ao mesmo tempo em que houve um enorme avanço tecnológico nas
comunicações em rede, que possibilita o compartilhamento de informações a
nível mundial, a segurança dessas informações e redes tornou-se crítica. Sendo
o meio físico compartilhado, a probabilidade de que pessoas não autorizadas
consigam acesso a informações sigilosas através de métodos ilícitos é grande.
Desse modo, a presença de especialistas em segurança, aliados ao uso de
poderosas ferramentas como firewalls (Sistema utilizado para inspecionar e
controlar as conexões, que entram e saem, de uma rede ou sistema), criptografia,
ids, etc, tornou-se indispensável na gestão de sistemas tecnológicos modernos.
Administrar a segurança de uma rede de computadores, seja ela simples
ou complexa, é hoje uma das principais preocupações de quem cuida da
administração de rede. Não basta somente impor políticas de segurança, usar
senhas fortes, manter os softwares atualizados, anti-vírus, backup, etc. Isto tudo e
fundamental, mas e extremamente necessária a monitoração do sistema e a
correta configuração dos equipamentos. Pois, os invasores das redes estão cada
vez mais especializados e munidos de várias ferramentas cada vez mais
sofisticadas.
Devido ao elevado número de incidentes de segurança, a necessidade
de identificar intrusões vem crescendo vertiginosamente. A utilização de
assinaturas de ataque para reconhecer eventos, aliada à falta de padronização e
recursos encontrados nos modelos atuais, gera a necessidade de desenvolver
um padrão capaz de armazenar, codificar e difundir essas informações. Embora
existam esforços no sentido da padronização, cada sistema ainda opera de forma
proprietária.
O assunto desse trabalho são os sistemas de detecção de intrusos
(IDS), que tem na sua composição, sensores capazes de disparar alarmes caso
algum evento determinado ou não esperado venha a acontecer. Assim sendo,
2
este trabalho realiza um estudo da tecnologia de IDS baseada em ferramentas
freeware (ferramentas grátis) em ambiente LINUX (sistema operacional grátis),
com baixo custo e muitas funcionalidades, sendo que este tipo de implementação
vá contribuir incentivando empresas e entidades a implementar em suas redes o
uso de um sistema de detecção de intrusos devido ao baixo custo e diminuição
de riscos relacionados à segurança.
No capítulo 2 será feito um estudo teórico de um IDS destacando os
seus componentes, seus módulos e funcionalidades, os tipos mais comuns de
IDS assim como as vantagens e desvantagens de cada tipo, técnicas de análise
descrevendo seus métodos e posicionamento dos módulos envolvidos em uma
ferramenta IDS. No capítulo 3 será descrito um estudo de caso de uma pequena
rede para aplicar o estudo teórico realizado.
3
2 ESTUDO TEÓRICO DE SISTEMAS DE DETECÇÃO DE
INTRUSOS
2.1 Componentes de um IDS
A FIGURA 1 ilustra um modelo genérico de um IDS, com o módulo
sensor entre a Internet e o firewall de entrada da rede de uma empresa,
coletando assim todo o tráfego que posteriormente será enviado ao módulo
analisador que interage com o módulo de gerência que por sua vez pode ordenar
alguma reação ao módulo reativo, se o mesmo existir, ordenando-o a reconfigurar
o firewall através da análise feita posteriormente.
FIGURA 1: Modelo genérico de um IDS
4
2.1.1 Módulo Sensor
Este módulo é o responsável pela captura dos dados que trafegam
pela rede que posteriormente serão enviados para o módulo analisador para
serem analisados. É recomendado que o módulo sensor seja o mais escondido
possível, já que em muitos casos o mesmo deve ser colocado na rede externa
ficando então vulnerável a vários ataques (Silva, 2004).
Normalmente, no caso de um IDS de rede, o sensor é dedicado a
tarefa de capturar todo o tráfego da rede, mas ainda assim são, normalmente,
máquinas simples, sem grande poder de processamento e armazenamento,
deixando isso para outros módulos, já que a sua tarefa é somente a simples
captura e envio do tráfego coletado para o analisador. Sendo que no caso do
IDS de host (Computadores), geralmente o módulo sensor está instalado na
mesma máquina a qual se deseja proteger, e atua basicamente na coleta de
dados do próprio servidor.
2.1.2 Módulo Analisador
Este módulo e considerado o cérebro do IDS. Ele é o componente
responsável por identificar o que é ou não um ataque. A maioria dos
fabricantes utiliza somente análise de assinaturas e alguns produtos estão
apenas começando a utilizar análise estatística, os sistemas adaptativos são
assunto apenas de pesquisas atuais.
O módulo analisador recebe os dados de um ou mais sensores,
independente da topologia usada por eles. Usualmente o módulo analisador é
uma máquina dedicada, pois consome boa parte dos recursos de seu sistema
no processo de análise dos dados. Geralmente ele é protegido por um firewall,
não importando qual topologia da rede. Este precisa apenas de permissão para
comunicação com os sensores e demais componentes: os módulos reativo e
de gerência, sendo que de preferência que essa comunicação seja feita de
forma criptografada.
5
O módulo analisador verifica os dados coletados, normalmente
armazenados em um banco de dados, e procura por possíveis eventos de
segurança. O fato é que existe sempre uma comparação, seja com uma base
de regras ou com um comportamento prévio, e em caso positivo um alerta será
gerado para o sistema de gerência. Esta base de dados que contém os
alarmes pode estar no analisador ou no sistema de gerência, isso depende da
implementação. Há casos, inclusive, onde os sistemas de análise e de gerência
estão instalados em um único servidor.
O entendimento dos dados coletados é de fundamental importância
para tratar de assinaturas de IDS, que são padrões procurados no tráfego da
rede que caracterizam um ataque, para minimizar ao máximo os chamados
falsos positivos – que é quando a atividade é classificada como um ataque e na
verdade se trata de uma atividade benigna e os falsos negativos – que é
quando uma assinatura falha ao gerar um alerta quando ocorre um ataque
legítimo.
2.1.3 Módulo de Gerência
Este módulo é responsável pelo armazenamento de eventos ocorridos
para uma posterior análise ou que sejam de relativa importância para o sistema
IDS. Também fornece, normalmente de forma on-line (instantaneamente e
automaticamente), uma visualização dos eventos ocorrentes na rede
monitorada, o sistema provê ainda meios para que consultas sejam feitas com
base em vários parâmetros pré-definidos. Alguns sistemas fornecem gráficos
por atacante, por serviço, por ocorrência e outros; alguns sistemas oferecem
também gráficos de tendência destes alertas.
Geralmente este módulo é composto por um servidor de páginas
Internet, mais um programa que lê dados em um banco de dados alimentado
pelo analisador e os exibem de forma estruturada para o operador de
segurança, dando-lhe subsídios para a configuração de todos os demais
módulos.
6
2.1.4 Módulo Reativo
Este módulo pode ser usado para determinar, no caso de um ataque
sério, a mudança da configuração do IDS, ou a de outros dispositivos de rede,
para responder diferentemente ao tráfego dos hosts que por ventura estejam
sendo atacadas.
É o componente responsável por tomar ações baseadas nos eventos,
deve ter a capacidade de comunicar-se com outros IDS, sistemas de firewall,
ou até roteadores de rede. Além disso, outras ações podem ser sugeridas.
Assim o modo reativo pode, por exemplo, alertar através de e-mail, bip, celular
etc.
O módulo reativo, nem sempre está presente em uma solução de IDS,
e mesmo quando é fornecido, em muitos casos não é utilizado. O grande
problema está relacionado com os falso-positivos, pois o inconveniente de
recebermos uma alerta que na verdade é um comportamento normal, seria um
grande inconveniente que levaria o módulo reativo a reconfigurar o firewall, de
forma a inibir aquele acesso e também novos acessos daquele tipo para aquela
origem, causando assim um ataque de negação de serviço.
2.2 Tipos de IDS
Os sistemas de detecção de intrusos existem, como já mencionado, para
indicar que alguma tentativa de intrusão que ocorreu ou está ocorrendo. Para
isso, há dois tipos diferentes de detecção que podem ser usados, os baseados na
rede e os baseados em host. Cada um tem uma maneira particular de abordar o
problema e o modo como isso é realizado traz vantagens e também
desvantagens para cada tipo. Em suma, pode-se dizer que os sistemas baseados
em host monitoram dados em uma determinada máquina, sejam processos,
sistemas de arquivos e o uso de CPU(Unidade de processamento central), por
exemplo, enquanto que os sistemas baseados em rede observam todo os dados
trafegados entre suas estações (Laufer, 2003).
7
2.2.1 Sistema de Detecção de Intrusos em Rede (SDIR)
IDSs baseados em Rede (SDIRs) monitoram toda a informação que
passa através da rede com coleta do tráfego no modo espião. Quando estes
pacotes são capturados, é feita uma análise de cada um deles para averiguar se
estes estão dentro dos padrões que foram pré-determinados ou não, indicando
assim que se trata de um tráfego normal ou uma tentativa de ataque.
Em um meio compartilhado de difusão, os dados passam livremente e
todas as interfaces a ele conectadas recebem estes pacotes. Dependendo do
endereço que consta no destino do nível de enlace deste pacote, a interface que
passa para o barramento interno da máquina que fará um processamento
posterior. Mas, a princípio, todas as interfaces recebem todo este o tráfego.
Sendo assim, é necessário posicionar o SDIR na rede que se quer proteger de
uma maneira que ele possa receber os pacotes necessários para sua análise.
A FIGURA 2 ilustra um posicionamento de módulos sensores que está
após o firewall e em dois segmentos de uma rede de uma empresa onde o
administrador do IDS pode monitorar o comportamento de pacotes que trafegam
no interior da rede.
FIGURA 2: IDS baseado em rede (SDIR)
8
É importante frisar que os hosts conectadas à rede, também podem
receber pacotes que não foram destinados à elas. Para que uma interface de
rede consiga receber pacotes destinados a outra estação, é necessária que ela
trabalhe em um modo especial, conhecido por modo promíscuo ou espião. Há
basicamente dois modos de operação em uma rede:
• Normal, onde a interface de rede verifica o endereço de destino do que
consta no nível de enlace, também chamado endereço MAC (Medium
Access Control), ou endereço físico. Sendo o endereço do pacote
idêntico ao endereço da interface, o pacote é repassado para
processamento interno.
• Promíscuo ou espião, onde a verificação feita no modo anteriormente
citado é completamente ignorada e todos os pacotes são repassados
para processamento. Esse processo também é chamado de "farejar"
(sniff) o tráfego da rede. Isso pode trazer problemas tanto para a estação
de trabalho, que pode não suportar o processamento de todos estes
pacotes de uma rede local (seria necessário verificar o endereço de
destino da camada de rede por software); quanto para a segurança da
rede, que pode ficar comprometida devido a exposição de dados
sigilosos, como as autenticações.
Os SDIRs precisam trabalhar no modo promíscuo para fazer a análise
de pacotes não destinados a ele. Tendo todas as informações que transitam pela
rede é possível ao sistema, por exemplo, detectar varreduras de portas (e.g.,
tentativas sucessivas de abertura de conexões TCP a diferentes portas),
monitorar conexões ou datagramas maliciosos (e.g., verificação do conteúdo
"GET /..%255c..%255cwinnt/system32/cmd.exe?/c+", que caracteriza um
ataque antigo ao Internet Information Server (IIS) que é o servidor de páginas da
Microsoft®, no pacote com destino ao servidor web) ou ainda verificar ataques de
negação de serviço, DoS(Denial of Service) (e.g., através da falta de resposta de
um servidor a varias requisições de um determinado serviço).
9
As principais vantagens desse tipo de IDS são (Bace, 2001):
a) detecção de ataques externos: é mais fácil, para um IDS baseado em
rede, detectar atividades não autorizadas desencadeadas por usuários
ou programas externos à organização;
b) facilidade de instalação: corretamente distribuídos poucos detectores
baseados em rede podem monitorar todas as atividades de uma grande
organização;
c) facilidade de uso: pelo mesmo motivo acima, é mais fácil manter
atualizado um IDS baseado em rede;
d) desempenho: a instalação de IDSs de rede representa um impacto
muito pequeno na rede existente. Compostos, em sua maioria, por
dispositivos passivos, esse tipo de ferramenta praticamente não interfere
no funcionamento normal do sistema;
e) independência de plataforma: como os alvos dessas ferramentas são
os dados coletados diretamente na rede, sua utilização é praticamente
independente das plataformas monitoradas.
Entre suas principais desvantagens, estão:
a) tratamento de redes de alta velocidade: ferramentas desse tipo
apresentam muitas dificuldades no tratamento de grandes quantidades
de dados. Com a popularização de redes velozes, isso tende a se tornar
um problema cada vez mais sério;
b) dependência de rede: alterações na infra-estrutura de rede possuem
reflexos significativos nessas ferramentas. Com a utilização de
elementos de rede como switches (dispositivo normalmente utilizado
para ligar hosts a uma rede), por exemplo, a tarefa de capturar pacotes
fica prejudicada;
c) dificuldade de reação: a reação a ataques em andamento é, muitas
vezes, impossível.
10
2.2.2 Sistema de Detecção de Intrusos em Host (SDIH)
IDSs baseados em Hosts (SDIHs) foram os primeiros sistemas de
detecção de intrusos implementados, e seu principal objetivo é monitorar toda a
atividade existente em um determinado host. O funcionamento desses sistemas
se dá através da coleta e também análise de pacotes originados em um host que
hospeda um determinado serviço. Depois de coletados, esses dados podem ser
analisados localmente ou até enviados para uma máquina remota responsável
por este exame.
Vale ressaltar que em várias implementações os demais módulos
também são instalados no mesmo servidor, o qual se deseja proteger, neste
caso, existe alguma forma de se visualizar os alertas, no próprio servidor,
normalmente um servidor web. O módulo reativo, quando implementado, efetua
algumas reconfigurações no sistema operacional ou aplicativos, um bom exemplo
pode ser a reação de bloqueio de um determinado endereço IP (Internet Protocol)
no arquivo de configuração de TCPWrappers, em um sistema UNIX, face a uma
determinada tentativa de login sem sucesso.
Um exemplo típico de um sistema de coleta de dados seria um sistema
de registros também conhecidos por logs(arquivos de armazenamento de
mensagens). Esses sistemas são responsáveis pelo armazenamento de
ocorrências em aplicações que rodam no host. Ou seja, estas aplicações estão
configuradas para enviar seus registros para este sistema e ele é o encarregado
de armazená-los em uma série de arquivos. Um eventual sistema de análise
usaria essa base de registros do sistema comparando-a com padrões préestabelecidos com o objetivo de detectar intrusões. A arquitetura de um sistema
desse tipo pode ser visualizada na FIGURA 3, que mostra o SDIH – Sistema de
detecção de intrusos baseado em host - que atuam em estações que contém
aplicações críticas para o funcionamento da rede e armazenando as ocorrências
em uma base de registros.
11
FIGURA 3: Arquitetura de um sistema de registros
SDIHs podem atuar em diversas áreas dentro de um mesmo host com o
objetivo de detectar intrusões. Eles podem analisar, por exemplo, todo um
sistema de arquivos através de uma analogia desse sistema com dados
recolhidos anteriormente referentes a esse sistema detectando modificações.
Isso poderia ser feito se as informações de arquivos críticos do sistema, como
data da última modificação, por exemplo, fossem recolhidos com antecedência a
um teste de verificação da integridade do sistema de arquivos. Existem outros
meios que podem ajudar na detecção de intrusos em hosts, como o
monitoramento da atividade de rede, monitoramento de atividades de login e do
superusuário, entre outras.
Essas ferramentas analisam a atividade do sistema através de dados
coletados na própria máquina, permitindo a determinação exata de quais usuários
e processos estão realizando operações maliciosas no sistema, o que garante
boa precisão na detecção. As principais vantagens dessa abordagem são (Bace,
2001):
a) independência de rede: independente da forma de comunicação
utilizada entre os hosts (cifrada ou não, com switches ou não), as tarefas
de um IDS baseado em hosts não são diretamente afetadas;
b) detecção de ataques internos: é mais fácil, para um IDS baseado em
hosts, detectar atividades não autorizadas que representem abusos de
privilégio por parte de usuários ou programas;
12
c) reação: embora não sendo uma atividade de responsabilidade direta
do IDS, pode-se, com maior eficiência e facilidade, confinar/avaliar danos
e recuperar erros usando uma ferramenta baseada em hosts.
Como desvantagens são apresentados os seguintes itens:
a) dificuldade de instalação: cada host monitorado deve conter ao
menos um elemento do IDS baseado em host instalado localmente,
dificultando sua instalação;
b) dificuldade de manutenção: pelo mesmo motivo apresentado acima,
a tarefa de manutenção dessas ferramentas é dificultada;
c) ataques ao próprio IDS: como os elementos da detecção devem
estar localmente instalados, um atacante que conseguir invadir tal host
pode desabilitar ou destruir a ferramenta instalada;
d) dificuldade de tratar ataques de rede: alguns ataques são
especialmente direcionados à infra-estrutura de rede, dificilmente
tratados por IDSs desse tipo;
e) desempenho: ferramentas desse tipo são extremamente intrusivas,
ou seja, interferem diretamente no funcionamento e desempenho do
sistema monitorado;
f) dependência de plataforma: um IDS com essas características é
altamente dependente da plataforma de monitoramento, devendo sofrer
muitas modificações para se adaptar a outros ambientes.
2.2.3 Solução híbrida
Além das abordagens clássicas e puras acima descritas, uma grande
parte das ferramentas atuais tira proveito das diferentes arquiteturas existentes,
adotando soluções híbridas. Essas soluções mesclam as vantagens de cada
abordagem, criando diferentes e interessantes padrões de arquitetura.
Tentando chegar a um ponto de equilíbrio entre desempenho,
simplicidade, abrangência e robustez, algumas implementações atuais lançam
mão de uma solução híbrida, onde mecanismos centralizados interagem com
13
módulos distribuídos, tentando aproveitar as vantagens de cada um. Além disso,
a coleta de dados baseada em informações de rede também é usada em
conjunto com técnicas baseadas em hosts, aumentando a capacidade de
detecção dos IDSs com essas características.
Tanto pela necessidade de interação com outros mecanismos de
segurança, normalmente implementados de forma centralizada, quanto pelo uso
das melhores características de cada abordagem, sistemas híbridos despontam
como a solução ideal para o futuro dos sistemas de detecção de intrusos.
Uma configuração bastante comum seria a de um SDIR para a rede local
e SDIHs rodando nos servidores principais, como é mostrado na FIGURA 4 que
ilustra que a medida que os SDIH – Sistema de detecção de intrusos baseado em
host – atua somente em estações críticas, o SDIR – Sistema de detecção de
intrusos baseado em rede – atua analisando todo o escopo da rede, inclusive
para hosts que não contém um sistema de detecção rodando.
FIGURA 4: Detecção de intrusos híbrida
2.3 Técnicas de Análise
É importante que exista um bom domínio das técnicas empregadas na
detecção de possíveis intrusões. A seguir são detalhados os principais métodos
existentes de detecção atualmente empregados, visando enfocar tanto as
14
técnicas tradicionais, como a auditoria manual, como, por exemplo, estudos mais
avançados e ainda em desenvolvimento (Campelo e Weber, 2001).
2.3.1 Métodos tradicionais
Mesmo a busca de indícios de intrusão utilizando a forma mais correta
como técnica de auditoria de sistema e conceitos tradicionais como trilhas de
auditoria não ser considerada como um mecanismo de detecção de intrusão, ele
já é realizado a bastante tempo. O grande problema é a dificuldade de manipular
um grande volume de informações oriundas de diferentes tipos de dados e
realizar essa tarefa em um tempo hábil a fim de evitar maiores danos ao sistema.
A utilização de técnicas mais avançadas em conjunto com ferramentas
adequadas dá a possibilidade de rastrear os danos causados em decorrência de
ataques ou, até mesmo, coletar provas que levem à descoberta de antigos
atacantes.
Utilizando a idéia básica da análise de trilhas de auditoria registra-se e
armazena as atividades do sistema em uma trilha de auditoria, selecionado por
projetistas ou administradores de sistemas baseado na importância dessas
atividades de segurança. Trilhas essas que podem ser formadas por registros de
log gerados pelo sistema operacional, por algum elemento de rede, como filtros,
roteadores ou proxies ou mesmo por algum aplicativo. O administrador do
sistema ou até mesmo um auditor externo de posse desses registros, pode
encontrar padrões de eventos que caracterizem um ataque, podendo rastrear a
origem do mesmo e também os danos causados pelo suposto atacante.
Tanto pela grande quantidade de informação armazenada para análise
diretamente relacionada com o nível de segurança e pela característica manual
de sua realização, este trabalho é extremamente oneroso. Quanto maior for o
grau de segurança exigido, maior deverá ser a quantidade de eventos
monitorados, maior será o tamanho das trilhas de auditoria geradas e menor será
o desempenho do sistema, já que, existirá um grande acesso por parte dele ao
disco. Uma dificuldade existente nesse tipo de abordagem é a dificuldade de
proteger as informações das próprias trilhas de auditoria, já que as mesmas são
15
alvos freqüentes de atacantes interessados em apagar suas pistas (Campello e
Weber, 2001).
Outra forma de detectar manualmente possíveis problemas de intrusão
além da análise de trilhas de auditoria é valendo-se de dados coletados na
própria rede. Essa prática, relacionada à gerência de redes, visa capturar pacotes
de rede, informações de gerência (através de agentes SNMP (simple network
management protocol), por exemplo) e qualquer dado que retrate o estado atual
da rede em questão. Após a coleta, esses dados são analisados pessoalmente
por pessoal especializado, na busca de padrões que denuncie um possível
desvio da política de segurança traçada. Uma ferramenta tradicional que pode ser
usada para exemplificar essa abordagem é o TCPdump. Pode se criar filtros,
através da captura de pacotes de rede com ele, que descartem dados não
interessantes e a atenção do analisador se volte para os pacotes realmente
importantes. Valendo-se de informações de rede, um outro exemplo de método
tradicional de análise, é o uso de dados obtidos em consultas a agentes SNMP
como subsídio para a detecção. De posse desses dados, pode-se analisar
estatisticamente a rede e traçar um comparativo entre o comportamento atual e o
comportamento usual do sistema.
2.3.2 Análise baseada em assinaturas
A utilização de assinaturas de ataques é um dos métodos mais
tradicionais de detecção (Campello e Weber, 2001). Nesse conceito, uma base
de dados é criada com seqüências de ações que seriam consideradas indícios de
uma intrusão. Essas seqüências chamadas de assinaturas são usadas para
identificar a maioria dos ataques conhecidos como base para buscar intrusos no
sistema. Essas técnicas possuem problemas como a determinação de quais são
as melhores fontes de dados a serem usadas (pacotes de rede, trilhas de
auditoria, chamadas de sistema, etc).
Existem várias maneiras de se relacionar os dados coletados com as
assinaturas existentes, otimizando o desempenho e diminuindo a ocorrência de
falsos positivos e/ou negativos. Uma dessas formas é adotar o conceito de
sistemas especialistas, onde o conhecimento sobre ataques é codificado na
16
forma de regras de condições do tipo if-then. Um dos grandes problemas dessa
abordagem é a imposição de uma seqüência determinada por regras, nem
sempre verificada nos dados reais coletados, ou seja, alguns eventos podem
ocorrer em uma ordem pré-estabelecida, passando assim, despercebidos pela
avaliação feita.
Semelhante à apresentada acima, uma outra abordagem é descrever a
semântica dos ataques com informações facilmente encontradas nos dados
coletados facilitando a busca por ataques sem sobrecarregar o sistema. Em
termos de desempenho e vantajoso usá-lo já que o mesmo é utilizado em grande
número de IDS´s comerciais, essa técnica possui a desvantagem de exigir que
todas as facetas de um ataque estejam descritas na base de assinaturas,
aumentando a necessidade de atualizações freqüentes dessa base.
A análise de transição de estados (Porras e Kemmerer, 1992),
representa os ataques como mudanças de estado no sistema monitorado.
Sucessivos
estados
são
conectados
por
arcos
que
representam
os
eventos/condições necessários para a mudança de estado. O tempo gasto na
análise de cada transição é a principal desvantagem dessa técnica, normalmente
baseada em sistemas especialistas.
A rede de Petri e outra forma de tratar o mesmo problema. A mesma
apresenta como principal vantagem sua generalidade, simplicidade conceitual e
sua facilidade de representação gráfica. É uma tarefa relativamente cara em
termos de desempenho a análise dos dados coletados na busca por ataques
complexos. A FIGURA 5 mostra um simples exemplo de uma rede de Petri que
dispara um alarme se exceder em quatro o número de tentativas mal sucessivas
de login.
17
FIGURA 5: Rede de Petri para análise de sucessivos logins incorretos
A transição pode ocorrer se existe um token no estado S1 e uma
tentativa mal sucedida de login aconteceu. O tempo da primeira tentativa é
armazenado na variável T1. A transição do estado S4 para o S5 só ocorre se o
token estiver em S4, uma nova tentativa acontecer e a diferença de tempo entre
essa tentativa e a primeira for menor ou igual a 60 segundos. Se o estado S5 for
atingido, a assinatura foi encontrada e um alarme é disparado.
As principais vantagens dos métodos de detecção baseados em
assinaturas são:
a) baixo número de falsos positivos;
b) mesmo para usuários com pouca experiência, as contra-medidas são
imediatas. De posse de relatórios com as ações não-autorizadas que
foram realizadas e as vulnerabilidades exploradas, o gerente de
segurança tem amplas condições de avaliar os danos causados e de
adotar contra-medidas eficazes que corrijam as falhas encontradas;
c) redução na quantidade de informações tratadas;
d) melhor desempenho, mesmo com grandes bases de assinaturas.
As desvantagens são:
a) detecção só para ataques conhecidos, ou seja, qualquer variação nos
ataques conhecidos ou mesmo a criação de novos tipos de ataques
dificulta sua detecção;
18
b) dificuldade de manutenção, sendo necessário manter a base de
ataques atualizada, completa e adaptada à realidade da organização
(SO, aplicações, etc);
c) possível
estudo
da
base
de
assinaturas
para
explorar
vulnerabilidades não tratadas;
d) dificuldade em detectar abusos de privilégio, ou seja, ações que
mesmo sendo disparadas por usuários legítimos representam ataques à
organização, como por exemplo, a cópia de uma base de dados
corporativa.
2.3.3 Análise baseada em comportamento
A realização de uma análise sobre o comportamento do sistema é outro
método de grande tradição entre os IDSs atuais. Pode-se constantemente
compará-lo ao estado atual, buscando indícios de mudanças bruscas de
comportamento, criando, inicialmente, um padrão que retrate o comportamento
do sistema em estado normal, antes de alguma intrusão. Desde o padrão de
digitação de um usuário até o tráfego usual da rede, bem como diferentes
técnicas para analisar os dados coletados, vários detalhes do sistema podem ser
usados para tal fim (Campello e Weber, 2001).
O uso de métodos estatísticos para o estabelecimento de perfis do
sistema é uma dessas técnicas, muito usada nos atuais sistemas de IDSs. Dessa
forma, o comportamento de algum usuário ou do sistema é medido em variáveis
amostradas durante o tempo. Exemplos incluem o login e o logout de cada
sessão, assim como a duração e a quantidade de recursos – processadores,
memória, disco, etc – consumida durante a mesma. Este período de amostragem
pode variar de alguns minutos até meses, em alguns casos. Médias de todas
essas variáveis são mantidas pelo modelo original e pressupõe um ataque
quando um limiar pré-estabelecido é excedido, baseado no desvio padrão da
variável. Os perfis dos usuários são regularmente atualizados a medida que o
comportamento dos mesmos evolui.
Para analisar o comportamento do sistema, também se usam sistemas
especialistas. Enquanto nas técnicas baseadas em assinaturas eram criadas
19
regras que descreviam possíveis ataques, nesse tipo de análise são usados
dados estatísticos do sistema para a criação dessas regras. Nesse caso, as
atividades de um usuário são amostradas e, constantemente, o sistema faz
inferências utilizando o comportamento atual desse usuário. Da mesma forma
que na abordagem anterior, a atualização dos dados referentes ao
comportamento do sistema se faz necessária para refletir mudanças que
normalmente acontecem.
De uma maneira geral, as vantagens da análise baseada em
comportamento são:
a) possibilita a detecção de ataques desconhecidos e complexos, não
dependendo de uma base que armazene todos os ataques e
vulnerabilidades possíveis;
b) pode ser usado para produzir informações para a geração de bases
de assinaturas;
c) exige um esforço de manutenção reduzido, sem a necessidade de
atualizações freqüentes da base;
d) menos dependentes de plataforma;
e) facilitam a detecção de abusos de privilégios, poucas vezes
catalogados como ataques.
Como desvantagens, pode se citar:
a) dificuldade de configuração, ajustando o limiar do que é considerado
anômalo ou não;
b) maior número de falsos positivos;
c) relatórios mais difíceis de serem analisados, não expressando dados
conclusivos sobre a vulnerabilidade explorada;
d) menor desempenho, principalmente devido à grande quantidade de
cálculos complexos exigidos;
e) dificuldade
em
lidar
com
mudanças
de
comportamento,
principalmente se essas forem sutis, podendo comprometer a eficiência
da técnica (atacantes podem, conhecendo o comportamento padrão do
20
sistema, desviar-se lentamente do mesmo até que seu ataque seja
considerado normal).
2.3.4 Métodos avançados
Além dos métodos anteriormente descritos, alguns trabalhos apontam
para novos tipos de análise na busca de identificar intrusões. Todos esses
estudos visam criar técnicas alternativas que melhorem a qualidade da análise
que é atualmente feita, muito baseada em regras e filtros. Muito incipientes e não
aplicadas em ferramentas de larga utilização, essas técnicas esbarram na sua
capacidade
reduzida
de
processamento
e
na
sua
complexidade
de
desenvolvimento, uso e manutenção (Campello e Weber, 2001).
Como um dos melhores exemplos de técnica avançada, o conceito de
redes neurais vem sendo aplicado em vários trabalhos. Redes neurais são
algoritmos que adquirem, a partir do tempo, conhecimento sobre o
relacionamento entre vetores entrada/saída, generalizando essas relações para
obter novos vetores entrada/saída úteis ao fim proposto. Essa técnica poderia ser
usada em IDSs baseados em assinaturas para “aprender” traços de ataques e,
então, procurá-los em um conjunto de dados armazenados anteriormente.
Entretanto, como não existe forma de determinar quais as relações feitas pela
rede neural, não é possível determinar as razões ou as explicações para o ataque
encontrado. Por esse motivo, o conceito de rede neural vem sendo mais utilizado
na detecção de comportamentos anômalos do sistema.
Outro método bastante interessante que vem sendo discutido no meio
acadêmico é o conceito de computer immunology (Forrest, Hofmeyr, Somayaji,
1997). Essa técnica constrói um modelo do comportamento normal dos serviços
de rede UNIX, que consiste em determinar curtas seqüências de chamadas de
sistema feitas pelos processos. Baseada na premissa de que ataques que
exploram falhas de software tomam caminhos de execução pouco usuais naquele
código, a ferramenta utiliza o perfil normal do processo para comparar com as
chamadas de sistema realmente feitas por ele. Se essas informações forem
conflitantes,
ele
gera
um
alarme
indicando
uma
possível
intrusão.
Aparentemente, nada de novo foi mostrado em relação às técnicas baseadas em
21
comportamento já apresentadas. No entanto, a idéia por trás dessa técnica é
determinar o que pertence ou não ao sistema e, então, assumir um
comportamento similar ao sistema imunológico humano, ou seja, determinar
padrões que representem o sistema e tentar encontrar “corpos estranhos” dentre
os elementos legítimos do mesmo.
2.4 Posicionamento dos Módulos
Na intenção de proteger a rede, pode ser difícil equilibrar o desejo de
monitorar o máximo possível com as limitações financeiras e de pessoal. Deve
ser examinada a necessidade de ser ter vários sensores IDS e onde eles
normalmente seriam posicionados na rede levando em consideração alguns
aspectos que podem afetar o posicionamento dos mesmos, além das vantagens
da implementação de uma rede de gerenciamento de IDS separada.
2.4.1 Implantando vários sensores na rede
Na maioria dos ambientes, devem-se implantar vários sensores de
IDS. Cada sensor geralmente monitora um único segmento da rede. Em
pequenas empresas, com arquitetura de rede simples e sem um grande
tráfego, um único sensor e o suficiente, embora mais de um ainda possa ser
aconselhável. Em ambientes grandes – principalmente aqueles com vários
segmentos de rede, aqueles que oferecem serviços substanciais baseados na
Internet e aqueles com diversos pontos de acesso à Internet, certamente serão
necessários vários sensores para uma monitoração satisfatória e adequada ao
tráfego da rede.
Normalmente, para se produzir melhores resultados, a implantação de
mais sensores de detecção de intrusos é recomendada. Distribuindo sensores
em vários segmentos da rede, pode-se ajustar cada um deles ao tráfego ao
qual se normalmente vê nesse segmento – o tipo de estações que o utilizam e
os serviços e protocolos que o atravessam. Normalmente o ajuste dos
sensores em um segmento conectado a Internet seria de modo diferente ao de
um monitorando duas partes internas da sua rede, bastante protegidas. Ao se
22
implantar somente um sensor, a quantidade de ajuste a ser feito será bastante
limitada.
Uma dos motivos para se usar sensores múltiplos é a tolerância a
falhas que podem ocorrer no sistema de IDS. Se por algum motivo, um único
sensor falhar, ou se o segmento da rede que ele está monitorando se tornar
indisponível, se existir apenas esse sensor, não será possível detectar
intrusões até que a falha seja corrigida. A possibilidade de se ter mais de um
sensor oferece uma solução mais robusta, pois, o monitoramento pode
continuar sendo realizado pelo menos em partes da rede durante uma falha do
sensor ou interrupção parcial da rede.
2.4.2 Posicionando sensores próximos a dispositivos de filtragem
Normalmente, a implantação dos sensores de IDS, que geralmente são
próximos com firewall ou filtros de pacotes, e feita perto de pontos de acesso à
Internet. O posicionamento desses sensores pode ser em um dos lados ou dos
dois lados de um desses dispositivos. Um exemplo seria, um firewall da Internet
poderia ter um sensor de IDS no segmento de rede externo, para identificar toda
a atividade suspeita, e um segundo sensor de IDS no segmento de rede interno,
que possa identificar toda a atividade suspeita que possa estar passando pelo
firewall a partir do exterior.
O recomendado seria a implantação de sensores de IDS dos dois lados
dos firewalls e dos filtros de pacotes. Mas, se por algum motivo isso não for
possível, deverá ser decidido qual lado do dispositivo de filtragem o sensor deve
ser implantado. Geralmente, a recomendação e que o sensor seja colocado na
rede externa, de modo que se possa detectar todos os ataques, incluindo aqueles
que não passam pela filtragem.
Em alguns casos, pode-se preferir colocar o sensor na rede interna. Os
sensores na rede externa, principalmente a que esteja conectada diretamente à
Internet, têm mais chances de serem atacados, e eles também processarão
muito mais tráfego do que um sensor em uma rede interna. Se o pessoal de
segurança tiver pouco tempo para realizar análises de intrusão, a colocação do
sensor na rede interna deve ser considerada já que isso diminui o tráfego a ser
23
processando e também pode ajudar a determinar se o dispositivo de filtragem
está mal configurado.
2.4.3 Posicionando sensores de IDS na rede interna
Os sensores de IDS da rede são colocados, em muitos ambientes,
apenas no perímetro da rede, normalmente em torno dos firewalls da Internet e
filtros de pacotes. Alguns ambientes se beneficiam desse posicionamento. Um
exemplo clássico é a divisão de pesquisa e de desenvolvimento de uma
empresa. A empresa pode ter estabelecido um firewall ou um filtro de pacotes
que impede os usuários de outras divisões de acessar os servidores de pesquisa
e de desenvolvimento. Como a informação armazenada nestes servidores é
valiosa para os atacantes externos e os internos maliciosos, a implantação de um
sensor de IDS perto do firewall ou filtro de pacotes, seria altamente prudente.
Empresas que têm consciência da segurança implantam sensores de
IDS por todas as suas redes, para monitorar todo o tráfego de pacotes na rede.
Naturalmente, isso exige altos recursos financeiros e de pessoal, mas dá aos
analistas de intrusão um grande controle sobre o que está acontecendo no seu
ambiente. Se somente a verificação das atividades que ocorre nas bordas for
feita, estará sendo desprezando uma grande parte do conteúdo total. Pois, os
sensores de IDS não estão limitados a identificar somente ataques contra
servidores; muitos também podem encontrar sinais de cavalos de Tróia, vermes e
outros malware que estejam tentando se espalhar pela rede, às vezes, antes que
o software de antivírus possa detectá-lo.
24
3 ESTUDO DE CASO DE UM SISTEMA IDS BASEADO EM
FERRAMENTAS FREEWARE
3.1 Cronograma do Projeto
Abaixo segue o cronograma do projeto com suas fases e quantidade de
semanas gastas em cada uma delas:
Fase
Semanas
1
1
2
2
3
4
X
X
3
X
4
Fase 1 - Definição e instalação do Sistema Operacional.
Fase 2 - Definição e instalação do software do sistema de IDS.
Fase 3 - Configuração do sistema de IDS.
Fase 4 - Testes do sistema de IDS.
X
25
3.2 Topologia
A seguir, a topologia e um projeto de um sistema IDS para uma
pequena rede é descrito.
Roteador
Hub
IDS – Sensor,
Analisador e
Gerência.
Firewall
Switch
Estações
Estações
FIGURA 6: Topologia de uma pequena rede
3.2 Projeto
3.2.1 Objetivo Projeto
O objetivo desse projeto e implantar um sistema de IDS em uma
pequena rede composta de:
a) Um acesso a Internet;
b) um ADSL ou um roteador;
c) um Hub ou switch;
26
Obs: No caso do hub, este poderia se substituído por um switch
desde que o mesmo contenha o recurso port spam ou mirror, mas o
custo de um switch é maior.
d) uma estação para servir como IDS;
e) um firewall;
f) um switch para se conectar as estações desta rede.
3.2.3 Fases do Projeto
As fases deste projeto são abaixo descritas:
Fase 1 - Definição e instalação do Sistema Operacional.
O sistema operacional escolhido foi o Linux Fedora por se tratar de um
sistema freeware, amplamente utilizado e conhecido, estável e simples de ser
utilizado e, além disso, possui excelente mecanismo de atualização de pacotes.
A instalação do mesmo se deu em uma estação que tinha um espaço não
particionado e a mesma se deu de forma normal escolhendo as opções básicas
do sistema operacional.
Fase 2 - Definição e instalação do software do sistema de IDS.
O software de IDS escolhido foi o snort, para servidor de Web foi
escolhido o Apache e para Front End foi escolhido o ACID (Analysis Console
for Intrusion Databases) todos são software freeware.
Os sistemas snort e Apache, foram instalados usando-se arquivos em
formato.rpm. A opção da utilização desses tipos de arquivo deu-se a sua
maneira simples e de fácil instalação.
O acid não precisa ser instalado e sim simplesmente descompactado e
desempacotado na pasta document-root do servidor web.
A justificativa para a utilização do snort, apache e acid, além de serem
freeware é que são software lideres da categoria, muito estáveis, simples e
conhecidos.
27
Após a instalação do sistema operacional, foi feita a instalação do
snort conforme demonstra a FIGURA 7:
FIGURA 7: Instalação do snort
O próximo passo foi instalado o servidor de Web o Apache conforme
tela capturada na FIGURA 8:
FIGURA 8: Instalação do Apache
Não necessitando instalação, o próximo passo foi descompactar o
arquivo referente ao Front End escolhido o ACID conforme ilustra a FIGURA 9:
28
FIGURA 9: Descompactação do ACID
Fase 3 - Configuração do sistema de IDS.
Antes de colocar o sistema de IDS em operação, deve-se configurá-lo
modificando alguns parâmetros do principal arquivo do snort que é o snort.conf.
A seguir está os principais parâmetros do arquivo snort.conf que
devem ser adequados para cada rede contendo a configuração mais básica do
IDS para que o mesmo possa ser executado:
var HOME_NET [10.1.1.0/24]
var EXTERNAL_NET any
var DNS_SERVERS $HOME_NET
var SMTP_SERVERS $HOME_NET
var HTTP_SERVERS $HOME_NET
var SQL_SERVERS $HOME_NET
var TELNET_SERVERS $HOME_NET
var SNMP_SERVERS $HOME_NET
var HTTP_PORTS 80
var SHELLCODE_PORTS !80
var ORACLE_PORTS 1521
29
var AIM_SERVERS
[64.12.24.0/24,64.12.25.0/24,64.12.26.14/24,64.12.28.0/24,64.12.29.0/
24,64.12.161.0/24,64.12.163.0/24,205.188.5.0/24,205.188.9.0/24]
var RULE_PATH /etc/snort/rules
output log_tcpdump: tcpdump.log
Fase 4 - Testes do sistema de IDS.
Para que as funcionalidades do IDS possam ser demonstradas, foram
coletadas algumas telas de um sistema que está em operação em uma
empresa.
Algumas dessas telas são demonstradas a seguir através do front end
ACID.
A FIGURA 10 mostra a tela inicial do ACID onde são apresentadas as
estatísticas de intrusão divididas por protocolo. Esta tela serve como menu
para outras telas com outras visões.
30
FIGURA 10: Tela Inicial do ACID
A FIGURA 11 exibe os 15 últimos alertas gerados pelo IDS, cada
alerta e representado por uma linha da tabela na parte inferior da tela. Esta tela
é muito utilizada para permitir uma visualização on-line das últimas ocorrências.
31
FIGURA 11: 15 últimos alertas
Assim como a FIGURA 11, a FIGURA 12 representa uma lista de
alertas, porém, das últimas 24 horas. Esta tela é muito utilizada por operadores
de segurança que avaliam os eventos diariamente.
32
FIGURA 12: Alertas das últimas 24 horas
As FIGURAS 13 e 14 representam um alerta em detalhes, ou seja,
quando se clica em um dos alertas das FIGURAS 11 e 12 ele é representado
desta forma. A FIGURA 13 representa o início do pacote incluindo o cabeçalho
de camada 2 e 3. Já a FIGURA 14 continua a representação mostrando o
cabeçalho TCP e da aplicação.
33
FIGURA 13: Início do Pacote de um alerta
34
FIGURA 14: Continuação do cabeçalho TCP e da aplicação de um alerta
35
4 CONCLUSÃO
Esse trabalho teve como objetivo exibir uma introdução a sistemas de
detecção de intrusos de forma geral. Foram vistos motivações e todo o
histórico desses sistemas, destacando os seus diferentes tipos de detecção e
de análise.
Administrar a segurança de uma rede de computadores, seja ela simples
ou complexa, é hoje uma das principais preocupações de quem cuida da
administração de rede. Não basta somente impor políticas de segurança, usar
senhas fortes, manter os softwares atualizados, antivírus, backup, etc. Isto tudo
é fundamental, mas é extremamente necessária a monitoração do sistema e a
correta configuração dos equipamentos, pois, os invasores das redes estão
cada vez mais especializados e munidos de várias ferramentas cada vez mais
sofisticadas. A própria natureza da Internet, entretanto, possibilita que
continuamente sejam geradas novas formas de ataque ou que novos pontos
fracos sejam descobertos, a própria definição do protocolo IP contribui para
isso. Assim sendo, embora ainda longe de estar perfeito, o IDS surge como
uma ótima ferramenta de administração e um importante auxiliar na melhoria
da segurança, permitindo uma constante monitoração das atividades da rede e
ainda permitindo a descoberta de deficiências ainda não documentadas e
tentativas de ataques inéditos. Isto faz com que, com o passar dos anos, o IDS
venha sofrendo um processo de desenvolvimento e popularização.
Em um futuro próximo é inevitável que o sistema de detecção de
intrusos encontre como barreira a filtragem de uma grande quantidade de
informações. Isso fará com que as técnicas de mineração de dados (data
mining) e de inteligência artificial sejam desenvolvidas para esses sistemas
com a intenção de, cada dia mais, melhorar a sua eficiência. Alguns trabalhos
relacionados ao tema sistema de detecção de intrusos vem sendo
desenvolvidos e espera-se que eles atinjam resultados concretos em breve.
36
5 REFERÊNCIAS BIBLIOGRÁFICAS
CAMPELLO, RAFAEL SALDANHA; WEBER, RAUL FERNANDO. Apostila
“Sistema de Detecção de Intrusão”, Instituto de Informática
- UFRGS
http://www.inf.ufrgs.br/~gseg/producao/minicurso-ids-sbrc-2001.pdf - 2001
SILVA, GILSON MARQUES. Apostila “Auditoria e Segurança de Sistemas”,
utilizada na disciplina de Segurança e Auditoria de Sistemas no curso de
Bacharelado em Sistemas de Informação na UNIMINAS - 2004.
FORREST, S.; HOFMEYR, S.A.; SOMAYAJI, A. Computer immunology.
Communications of the ACM, 40, 10:88-96, out., 1997
LAUFER, RAFAEL P. Apostila “Introdução a Sistemas de Detecção de
Intrusão” utilizada como trabalho para a disciplina de Redes de Computadores I,
lecionada pelo Prof. Otto Carlos Muniz Bandeira Duarte, do curso de Engenharia
Eletrônica e de Computação da Universidade Federal do Rio de Janeiro(UFRJ) –
2003.
NORTHCUTT, S., ZELTSER, L., WINTERS, S., FREDERICK, K., KENT, R. e
RONALD W. – Desvendando Segurança em Redes. Rio de Janeiro: Editor
Campus Ltda, 2002.
PORRAS, P.; KEMMERER, R. Penetration state transition analysis: a rule based
intrusion detection approach. In: Annual Computer Security Applications Conf., 8.,
1992. Proceedings... [S.n.:S.l.], 1992. pp. 220–229.
BACE, Rebecca; MELL, Peter. NIST Special Publication on Intrusion Detection
Systems. (Draft). NIST, 2001. (Disponível em http://www.nist.gov).
Download

ids - Lopes & Gazzani Planejamento Ltda