Documentos de Académico
Documentos de Profesional
Documentos de Cultura
So Paulo
2006
LEONARDO CAVALLARI MILITELLI
rea de Concentrao:
Sistemas Eletrnicos
So Paulo
2006
FICHA CATALOGRFICA
Agradecimentos
Em primeiro lugar, agradeo minha famlia, em especial minha me Luciana, por todo
Ao meu orientador Prof. Dr. Joo Antnio Zuffo e co-orientador Prof. Dr. Volnys Borges
Aos meus amigos Artur, Gabrielle, Leandro, Milciades, Tamaris e Veronica que estiveram
Aos grandes amigos Fbio, Murilo e Renato que acompanham e participam da mesma
Aos integrantes e amigos do grupo NSRAV, em particular, Adlson, Fernando e Matteo, pelas
Resumo
Canais seguros, como os gerados pelos protocolos SSL e TLS, so cada vez mais utilizados
nos servios de rede para propiciar autenticao de parceiro, integridade e sigilo dos dados.
Porm, sua utilizao impede que um sistema de deteco de intruso de rede possa observar
o contedo dos pacotes, impossibilitando a anlise das mensagens.
Abstract
Secure channel, as the one generated by protocols like SSL and TLS, has been used on
network services to provide partner authentication, integrity and confidentiality. However, its
utilization prevents a network intrusion detection system to observe and analyze packets
content.
Further that, Intrusion Detection Message Exchange Format (IDMEF) standard proposed by
IDWG is considered to send alerts between agent ADACA and an IDS central.
The results shown that is practicable to use an application agent attached to an application as a
complement of network intrusion detection systems.
iv
Sumrio
Lista de Figuras
Lista de Tabelas
Lista de Abreviaturas
Captulo 1. Introduo
Com base no estudo realizado nos trabalhos (ABBES; BOUHOULA; RUSINOWITCH, 2004)
e (DASGUPTA et al., 2005), percebe-se que grandes esforos esto sendo feitos na rea de
contexto, ainda possvel observar diversas vertentes com grande carncia de pesquisas.
autenticao de parceiros. Porm, ao realizar a criptografia dos dados, estes se tornam legveis
apenas para a entidade a que se destinam, tornando invivel a anlise do contedo por parte de
Desta forma, um atacante poderia fazer uso de um mecanismo adotado para aumentar
a segurana da aplicao e camuflar suas atividades ilcitas, sem que seja facilmente
detectado. Como exemplo, pode-se citar a utilizao do protocolo HTTPS como um canal
seguro para varrer sistemas WEB a procura por falhas ou explorar determinada
Exemplo desta situao pode ser ilustrada pela vulnerabilidade UNICODE do servidor
IIS da Microsoft descoberta em outubro de 2000. Por meio de uma falha no processo de
Enquanto as correes no eram divulgadas pelo fabricante, a deteco desta falha somente
era possvel por meio de sistemas IDS. No entanto, as conexes realizadas sobre um canal
Para contornar esta situao, a empresa McAfee lanou em meados de 2005 a soluo
Intrushield SSL Traffic Inspection and Prevention (MCAFEE, 2005), um sistema de deteco
de intrusos no qual a chave privada do servio seguro a ser protegido conhecida e utilizada
soluo BreachView SSL (BREACH, 2005), voltada para sistemas Linux, foi apresentada pela
trfego criptografado, compartilham a chave privada dos servios seguros. Esta prtica pode
no ser aceita em muitas organizaes, visto que o compartilhamento da chave privada pode
De acordo com o recente estudo de PALLER (2005), o crescente aumento dos ataques
focados na camada de aplicao, como SQL Injection (SPI, 2002) e Cross-Site Scripting
(XSS) (ZUCHLINSKI, 2003), somado aos inmeros sistemas de comrcio eletrnico, permite
concluir que, apesar de todos os produtos de segurana disponveis, ainda existe carncia de
solues especficas.
3
1.2 Motivao
Na tentativa de sanar a deficincia existente nos sistemas de deteco atuais algumas solues
privada. Os trabalhos nos quais foram reportadas alternativas para identificao de ataques em
base em um perfil criado a partir de uma fase de treinamento utilizando requisies lcitas,
todos os pacotes que ultrapassarem o limite imposto pelo perfil pr-definido so classificados,
Joglekar e Tate (2004), na qual os autores propem uma soluo baseada no acoplamento de
do protocolo que so transmitidas entre cliente e servidor, o que torna possvel detectar
ainda, conter certos tipos de ataques especficos. Neste trabalho, Joglekar e Tate convergem os
ataques por meio do gerenciamento dos recursos do servidor uma prtica plausvel de ser
meio do agente procurador (proxy) criptogrfico EPIDS (Encrypted Proxy Intrusion Detection
e troca da chave pblica original do servidor por uma chave pblica falsa.
1.3 Objetivo
por meio de uma API genrica. Este agente, denominado ADACA (Agente de Deteco,
sua insero em uma arquitetura de deteco distribuda e padronizada. Como estudo de caso,
(JOGLEKAR; TATE, 2004), que se baseiam na comparao das mensagens do protocolo com
pretende realizar a deteco de ataques por meio da anlise das mensagens do protocolo de
como o IDMEF e IDXP. O captulo 3 reservado para descrever sobre trabalhos relacionados,
implementao. Por fim, o captulo 7 conclui o trabalho e apresenta propostas que devero ser
aprofundadas futuramente.
6
intrusos
aes consideradas maliciosas, por meio de diferentes tcnicas de deteco. O agente IDS,
tambm conhecido como sensor, o elemento responsvel por capturar as informaes que
de forma que todos os agentes reportem seus registros e alertas base central de eventos.
Neste contexto, sistemas de filtragem (firewalls) tambm podem ser considerados agentes IDS
A utilizao de tal sistema tem se mostrado bastante til frente ao aumento incessante
at o ano de 2005, permite concluir que houve um aumento de aproximadamente 51% com
relao ao ano de 2004 (CERT.br, 2005). A Figura 2.1, apresenta a estatstica dos incidentes
Total de Incidentes
40000 33455
30000
21192
20000 12301 12697
10000 5997
0
2000 2001 2002 2003 2004 2005
Ano Fonte: CERT.br
2.1 Agentes
De acordo com o NIST (1999), existem trs principais tipos de agentes de deteco de
intruso, sendo:
conhecido como sensor de rede, o tipo de IDS mais adotado pelas equipes de segurana
devido ao baixo custo do investimento e mnimo impacto sobre a topologia de rede. Sua
maliciosos por meio da escuta digital de pacotes e classific-los de acordo com o contedo,
gerando os alertas. Em seguida, os alertas podem ser reportados ao analisador central para
serem correlacionados e, opcionalmente, alguma contramedida pode ser definida para conter
mesma informao.
contedo de fluxos de dados cifrados, visto que os pacotes somente podero ser abertos por
O agente baseado em mquina (Host-based Intrusion Detection System - HIDS) tem como
objetivo monitorar as atividades executadas no sistema operacional local. Entre elas, pode-se
citar a monitorao de processos ativos, trilhas de auditoria, usurios, entre outros. Esta forma
do IDS, visto que parte das solues existentes analisam os dados em uma mquina remota.
O agente baseado em aplicao um subconjunto do HIDS, isso porque sua atuao tem
grande semelhana, sendo distinguido apenas pela monitorao direcionada apenas a uma
aplicao, como chamado, capaz de validar toda a interao entre o usurio, os dados e a
por um limiar bastante estreito. POSEY (2005) ressalta que apesar do escopo de atuao ser
diferente, ambos consomem uma srie de recursos locais, como processamento e memria,
Atualmente, existem dois principais modos de operao para os agentes acima citados, sendo
classificados em passivo e ativo. Alm disso, existe um outro tipo de sistema denominado IPS
malicioso. Assim sendo, para um melhor entendimento das diferenas entre as formas
modos.
reportar possveis alertas ao IDS Central. Este tipo de agente no possui qualquer
funcionalidade de contramedida aos alertas gerados, cabendo ao IDS Central interagir com os
permitem acionar uma regra de filtragem junto a alguns modelos de firewalls. Porm, a
O agente ativo introduz o conceito mais aproximado ao Intrusion Prevention System (IPS)
(ZHANG; LI; ZHENG, 2004) no qual o agente tem as funcionalidades de prevenir o sucesso
intrusos (IPS) tem funcionamento anlogo ao IDS com relao captura e anlise de pacotes,
porm diferenciam-se pelo fato do IPS ser capaz de interceptar e bloquear requisies que no
Uma breve comparao conceitual entre as caractersticas do IDS e IPS pode ser
IDS IPS
Instalado em segmentos de rede e mquina Instalado em segmentos de rede e mquina
Observa a rede passivamente Observa e intercepta o trfego
Ineficaz para fluxos criptografados Melhor atuao sobre aplicaes
Controle de gerenciamento centralizado Controle de gerenciamento centralizado
Melhor para deteco de ataques em geral Ideal para bloquear pichaes de pgina
Ao reativa Ao preventiva
Na grande maioria das vezes, o sistema IDS implementado de maneira distribuda, sendo
composto por diversos agentes alm da base central de alertas e gerenciamento. Para que este
utilizao dos alertas gerados pelos agentes de rede, mquina e aplicao na correlao de
eventos para o rastreamento, interveno e/ou preveno de certa atividade maliciosa, se faz
(KAHN et al, 1998). Assim, algumas propostas que visam padronizar o formato e contedo
2.2.1 CIDF
sistemas de resposta, como os firewalls. Foi especificada uma linguagem chamada de CISL
E-Box (Unidade de Eventos): responsvel por gerar eventos de segurana que podero se
meio fsico, este mdulo encarregado por reconstruir o pacote de dados e repassar para
anlise;
A-Box (Analisador de eventos): neste onde ocorre toda a anlise e correlacionamento dos
principalmente arquitetura, no mesmo ano de 1998 deu-se incio ao grupo IDWG, o qual
No encontro do IETF de agosto de 1998, foi criado o Intrusion Detection Exchange Format
duplicadas.
utilizando para tal um DTD (Document Type Definition) que descreve o formato dos dados
WHITE, 2002).
O protocolo IAP foi a primeira tentativa do grupo IDWG em conceituar uma soluo
Intrusion Alert Protocol (GUPTA et al., 2001) foi proposto um protocolo em nvel de
semelhante ao protocolo HTTP com alguns conceitos de proxy, para autenticao e controle.
Porm, no 50 encontro do IETF foi definido que o desenvolvimento sobre o IAP deveria ser
necessrios para se adequar ao modelo proposto pelo IDWG como protocolo de transporte de
mensagens IDMEF.
16
Exchange Protocol (BEEP) (ROSE, 2001) (BUCHHEIM et al., 2001), o qual contempla uma
protocolo BEEP funciona analogamente a uma rede privada virtual (VPN) em nvel de
aplicao, estabelecendo um tnel seguro e confivel entre dois pontos sob os quais so
criados canais de comunicao baseados em perfis1, que definem a sintaxe e semntica das
padronizados por meio do perfil do IDXP e Syslog (NEW; ROSE, 2001). Vale ressaltar que a
Figura 3. Canais de comunicao criados com diferentes perfis em uma nica sesso BEEP
Alm da fcil extensibilidade, uma das maiores vantagens da utilizao do BEEP est
1
A documentao referente ao BEEP e os perfis existentes podem ser encontrados em: http://www.beepcore.org
17
negociao pode ser realizado uma nica vez para o estabelecimento de um tnel de
definidos pelos perfis, sem que haja necessidade de outros procedimentos de segurana, como
a autenticao.
inserida por (YANG; CHANG; CHU, 2003), tem como objetivo prover a integrao entre
todos os componentes de segurana presentes em uma rede por meio de um protocolo nico
ataque.
Esta proposta no pertence aos esforos realizados pelo grupo IDWG e, desde sua
pequenos segmentos, como o caso do protocolo TELNET (RFC 318) e SSH (RFC 4251).
Estes protocolos enviam dados conforme a digitao do indivduo que est fazendo uso de tal
grupos de bytes ao sistema remoto, sendo que a instruo s ser interpretada quando o
servidor receber o sinal de execuo. Se fizermos uma captura digital de pacotes no canal de
comunicao durante uma sesso de telnet, observa-se a seguinte situao (Figura 4).
requisio completa e, somente ento, ser capaz de identificar uma possvel ao maliciosa.
19
Porm, tais eventos de mensagens fracionadas podem ocorrer de outras formas, como
o caso do processo de evaso de IDS, no qual se tem por objetivo burlar sistemas de
deteco.
Para obter sucesso neste processo de camuflagem podem ser aplicadas diversas tcnicas,
2.3.1.1 Fragmentao
tamanho mximo de 64Kbits, porm muitas redes no tm capacidade de aceitar pacotes desta
dimenso e necessitam que estes sejam partidos em uma unidade menor para que todos os
Uma vez que todos os fragmentos tenham alcanado seu destino, sem necessidade de
pacote.
20
grande volume de informao trafegado no enlace. Porm, esta tcnica j no mais eficiente
devido aos pr-processadores dos sistemas de deteco que tem capacidade de armazenar o
2.3.1.2 Segmentao
segmentadas aplicao, sendo que a quantidade de bytes a serem interpretados pelo sistema
vtima controlado pelo nmero de seqncia do prximo segmento a ser recebido. Ou seja, o
caso de um ataque realizado pela requisio HTTP GET /teste.idq a troca de pacotes entre
do sistema de deteco.
22
Durante a etapa de pesquisa, foram encontrados projetos que se relacionam com o presente
trabalho. O projeto mais prximo desta proposta o Intrusion Detection Response Exchange
Format - IDREF (SILVA, 2004), que estende a utilizao do padro IDMEF com a
Mais recentemente foi encontrado o projeto AppArmor (NOVELL, 2005), suportado pela
3.1 IDREF
descrito anteriormente, o IDREF tem por objetivo adotar mecanismos que possibilitem a um
contramedida.
Response: permite enviar ocorrncias de ataques aos operadores por meio de telefone,
pager e e-mail;
React: define as aes de conteno que podem ser atribudas a certos recursos como
operacional;
Toda esta arquitetura se baseia nos alertas gerados por um IDS de rede, ou seja,
fator limitante.
3.2 ProtoMon
O ProtoMon, proposto por Joglekar e Tate, tem como principal objetivo monitorar protocolos
Dessa forma, o ProtoMon viabiliza a identificao de ataques que tem por objetivo explorar
J o modo de deteco faz uso do perfil criado pelo modo de aprendizado como
anmalo. Aps observada a presena de alguma conexo que esteja ultrapassando o limite
resposta entre as requisies recebidas pelo servidor, a fim de evitar o sucesso do ataque. Esta
(KOCHER, 96) e side-channel (KESLEY et al., 2000), visto que esses ataques so baseados
Porm, h controvrsias com relao a este mtodo de conteno, uma vez que
existem ataques pontuais, como ataques do tipo DoS, nos quais poucas requisies seriam
suficientes para indisponibilizar ou causar algum dano ao servidor ou servio alvo, conforme
pode ser exemplificado pelos boletins de segurana da US-CERT (2005a)(2005b). Isso sem
contar que o sistema proposto por (JOGLEKAR; TATE, 2004) no capaz de atuar somente
aplicao.
3.3 AppArmor
apresentada pela empresa Novell. A ferramenta AppArmor (NOVELL, 2005), como foi
nomeada, tem o propsito de inserir controles de leitura, escrita e gravao por usurio e
servio, o que remete ao conceito caixa de areia (SandBox). Todos os recursos necessrios
Com isso, mesmo que os servios oferecidos ao usurio, como servio de correio
/usr/sbin/httpd2-prefork^/cgi-bin
localtime.php
{
/etc/localtime r,
/srv/www/cgi-bin/localtime.php r,
/usr/lib/locale/** r,
}
Figura 10. Acesso somente leitura (r) aos recursos acessados pela pgina localtime.php
Esta soluo, mesmo que bastante recente e ainda em desenvolvimento, j est inserida nas
3.4 Concluso
29
Embora tais propostas tenham seus pontos fortes, ainda existem lacunas para
parte de uma arquitetura de deteco de intruso que composta por agentes IDS de rede,
aplicao, o que permite obter maior controle sobre o fluxo de mensagens transacionadas.
Figura 11. Exemplo de arquitetura de deteco: aplicao com ADACA, sensores de rede e
estando presente tanto os componentes propostos com o presente trabalho quanto outros
31
agentes de rede que realizam a deteco de eventos por meio dos dados trafegados no canal de
O ADACA um agente hbrido que pode ser configurado para operar nos modos ativo
contm uma ao ou um grupo de aes a serem executadas quando uma medida for
instanciada. De acordo com o momento em que for instanciada que se distingue entre
operacional pelo ADACA ou mesmo por processamento interno do agente, que tenha por
objetivo impedir que determinado ataque ou requisio maliciosa cause qualquer impacto ao
sistema alvo. Pode-se citar como exemplo de uma medida de preveno a insero de uma
medida que visa bloquear determinado endereo IP de origem, o qual tenha sido caracterizado
exemplo pode-se supor a explorao de uma falha que tenha por objetivo obter uma console
remota no servidor alvo. Nesta situao, o atacante necessita realizar diversas conexes para
explorar e fazer uso da console obtida, as quais poderiam ser bloqueadas por uma medida de
conteno.
quando o agente est configurado em modo ativo, pois a classificao e anlise dos dados so
uma medida preventiva para situaes nas quais j exista uma medida previamente definida.
modo passivo, visto que a anlise dos dados realizada assincronamente pelo IDS Local.
Assim que houver correspondncia de uma medida pr-definida para o resultado da anlise e
Para realizao da troca de mensagens entre agente e IDS Central foram definidos
eventos de monitorao e controle (Figura 11), ambos podendo ser gerados e enviados
alertas detectados pelos agentes distribudos ao longo do ambiente de rede e enviados ao IDS
controle so mensagens enviadas unidirecionalmente pelo IDS Central aos agentes, quando
estes suportam tais mensagens, e neles esto contidos os comandos que devero ser
executados no agente.
Uma mensagem de controle emitida pelo IDS Central ao agente pode conter comando
2.2.2.
aplicaes. Para isto, foi definido um ncleo nico genrico no qual esto compreendidos os
ncleo com a aplicao. Este ncleo tambm interage com mdulos externos por meio de
realizadas entre eles. Posteriormente, neste captulo, ser explanado com maiores detalhes o
Requisio
Aplicao
Resposta
ADACA
API
aplicao
Ncleo
ADACA
Mdulo Mdulo
Medidas Central
Mdulo de
Comunicao
IDS IDS
Classificador Mdulo
Acionador
Adaptador Local Central
Sistema
Operacional
Rede Local
A API ADACA possibilita que a aplicao repasse ao ADACA mensagens para serem
aps a formatao da mensagem de resposta, pode submet-la para anlise utilizando esta
mesma funo.
35
qualquer informao adicional, mantida pela aplicao, que possa ser til ao agente ADACA.
Como j foi citado, o agente pode operar nos modos ativo e passivo. Esta configurao
redefinida atravs de mensagens de controle proveniente do IDS Central ou mesmo por meio
Mesmo quando o agente ADACA opera no modo passivo podem ser ativadas medidas
de conteno e preveno.
O mdulo central coordena as atividades de anlise e aes realizadas pelo agente ADACA.
Quando um pedido de anlise requisitado pela aplicao, o mdulo central invocado. Este,
por sua vez, aloca o pedido em uma tabela de controle e, em seguida, ativa a funo
36
Caso o IDS Local tenha detectado alguma mensagem anmala ou maliciosa, ativado
o mdulo comunica para submeter o alerta ao IDS Central. Independente do resultado do IDS
Local, o mdulo de medidas ativado a fim de verificar se para a mensagem em anlise existe
alguma medida registrada. O mdulo de medidas utiliza como base os parmetros registrados
incidncias.
Esta interface realiza a ponte entre o mdulo central e o classificador. A principal funo
mensagens GET, POST e HEAD do protocolo HTTP e as mensagens HELO, RCPT TO,
o classificador foi definido como um mdulo externo ao ncleo do ADACA. De acordo com o
perfil estipulado, o classificador poderia implementar, inclusive, uma mquina de estado para
processo de classificao.
funcionamento da arquitetura de deteco, uma vez que ele responsvel por analisar a
mensagem interceptada junto aplicao. Para permitir a integrao ao ADACA foi definida a
API IDS Local. Esta API tem como objetivo definir uma interface padronizada para
Por padro, a API IDS Local converte os dados para o formato PCAP2, este suportado
2
Maiores informaes podem ser obtidas em http://www.tcpdump.org
38
qualquer forma, possvel definir um mdulo adaptador responsvel por converter os dados
processo de anlise, a funo retorna um dos dois possveis resultados: normal ou anmalo.
No caso de anmalo, a funo tambm informa o alerta gerado pelo IDS Local.
Para cada mensagem submetida ao agente ADACA para anlise criado um registro na tabela
origem, endereo IP destino, porta destino, mensagem e contexto foram obtidas da chamada
tabela de controle.
39
na seo 3.1.
A API IDS Central define a interface de funes entre o agente ADACA e o IDS Central
mdulo central do agente responsvel por tomar as devidas providncias, de acordo com o
O mdulo medidas tem como objetivos gerenciar as medidas existentes, registrar novas
medidas a serem executadas e analisar a existncia de alguma medida pr-definida para cada
apresentado o gerenciamento das medidas existentes. Para realizar o controle das medidas, foi
definida uma tabela de medidas que contm a identificao da medida, a condio em que
4.
e remover medidas com base nas informaes recebidas pelo mdulo central. Este
Com base na tabela de controle, apresentada na seo 4.5, realizada uma consulta
tabela de medidas a fim de verificar a existncia de uma medida para a mensagem. Caso
41
exista, este mdulo torna-se responsvel por solicitar ao mdulo acionador a insero desta
medidas executadas pelo agente ADACA. Nesta tabela esto presentes os endereos e portas
de origem e destino do ataque, o nmero da medida adotada e a data e hora. Esta tabela tem
como objetivo controlar o tempo de execuo de cada uma das medidas de acordo com a
A comunicao entre o mdulo medidas e o mdulo acionador estabelecida por meio da API
Aciona, que relaciona as aes que podem ser realizadas sobre os recursos do sistema
42
operacional. Como exemplo, pode-se citar a criao de uma regra junto ao firewall local, a
Estado desbloqueia_IP(IPo);
Estado desbloqueia_porta(IPo,Pd);
Estado Shutdown();
Estado Desativa_interface(interface);
Estado Ativa_interface(interface);
3
Rede simulada para atrair e avaliar a forma conduzida por atacantes. Maiores informaes podem ser obtidas no
site do projeto Honeynet: http://www.honeynet.org
43
Este elemento dispensvel para o funcionamento do agente, porm, sem ele no existiria a
arquitetura de deteco e somente um sistema de deteco isolado. Como j foi citado, o IDS
e o pedido de insero de uma medida. Como repositrio de alertas, permite a correlao dos
formatados sobre o padro IDMEF e enviar eventos de controle aos agentes utilizando o
durante a operao do sistema. Os eventos de controle somente sero disparados por meio de
interao humana, de forma que seja possvel analisar claramente a veracidade das
equivocadamente.
4.11 Operao
Para representar o modo de operao do ADACA sero descritos os detalhes das interaes
de protocolo de aplicao segura (HTTPS, SFTP, entre outras) ou em texto plano, inicia-se a
Quando uma requisio for recebida ou imediatamente antes de uma resposta ser
enviada ao cliente, a aplicao deve submet-la ao ADACA para anlise. Para isto, ativa a
funo Analisa_dados( ) da API ADACA que responsvel pelo registro dos parmetros
passados na funo em uma nova entrada da tabela de controle. Neste momento, se o agente
ADACA estiver operando no modo passivo, a funo retorna imediatamente para a aplicao.
Caso opere no modo ativo, a funo ir retornar somente aps finalizada toda anlise da
mensagem.
ativa a anlise da mensagem junto ao IDS Local, o qual utilizar suas tcnicas de deteco a
retornados ao mdulo central, bem como o alerta detectado, se esta for a situao. Caso exista
um alerta, este encaminhado ao mdulo comunica para ser formatado e enviado ao IDS
Central.
ativado para determinar a presena de alguma medida definida para a mensagem em anlise.
Caso no haja qualquer relacionamento com a tabela de medidas (Tabela 4), a requisio pode
ser considerada lcita e a funo Analisa_Dados( ) da API ADACA retorna informando que
(Tabela 3), juntamente com a medida a ser adotada, se este for o caso.
45
realizar as devidas interaes com o sistema operacional para prevenir ou conter alguma
ameaa.
evento direcionado ao mdulo central do ADACA. Este mdulo determina a que propsito
se destina este evento de controle e interage com o mdulo medidas ou com a API ADACA.
sada da aplicao, sendo que o mdulo classificador pode ser mais utilizado que o prprio
IDS Local, visto que as condies de classificao seriam mais dinmicas baseando-se nos
perfis adotados.
46
ilustrado pela Figura 12. Porm, foi necessrio realizar algumas limitaes no escopo do
desenvolvimento do prottipo.
foco desta pesquisa. Portanto, para esta validao foi considerada a adoo da soluo Snort
como mecanismo de deteco, uma vez que esta ferramenta possui funcionalidades
5.1.1 Simplificaes
trabalhos especficos a respeito (WANG; ABDEL-WAHAB, 2005) (XU; NING, 2004) (WU;
da etapa de implementao, somente foi encontrada uma biblioteca na linguagem Java que
fosse capaz de implementar o protocolo IDXP, dificultando a integrao com este projeto.
Como o protocolo no foco do trabalho este recurso foi substitudo por um simulador de
Antes de ser iniciada a fase de codificao, foi necessrio definir uma aplicao representativa
para a fase de testes. Neste contexto, a aplicao escolhida para ser utilizada foi o servio
WEB, uma vez que o protocolo utilizado por este servio contempla a verso em texto-plano
Uma vez definido o tipo de aplicao que seria utilizado como prova de conceito,
realizou-se uma pequena busca acerca das peculiaridades dos servidores WEB mais
utilizados, sempre focando as interfaces existentes para a integrao com o ADACA. Desta
forma, o servidor WEB Apache (www.apache.org) foi escolhido pois, alm de ser uma
soluo de cdigo aberto, o servidor utilizado por aproximadamente 67% dos 15 milhes de
Outra vantagem existente com esta escolha com relao ao suporte a plataformas
sistemas operacionais.
Para a prova de conceito foi utiliza a verso 1.3.34 do Apache, atualmente a mais
recente da distribuio 1.3. As distribuies 2.0 e 2.2 no foram consideradas, pois realizam o
programao C. Esta linguagem foi escolhida pela portabilidade e por ser utilizada na
prottipo.
Para tornar possvel integrao do ADACA, se fez necessrio realizar uma anlise detalhada
portas.
entrante com o intuito de verificar a presena de requisies incompletas. Se este for o caso,
as informaes sobre a mensagem no passam pela API ADACA e retornada uma pgina de
Para implementao do Mdulo Comunica foi utilizada a biblioteca LibIDMEF (POPPI, S.;
MIGUS, A.; MCALERNEY, J., 2005) que possibilita a padronizao dos alertas ao formato
50
IDMEF. Tambm, foi identificado que o Snort tem como uma de suas funcionalidade a
mecanismos de deteco como IDS Local, a biblioteca LibIDMEF foi integrada ao mdulo
comunica para formatao dos alertas, ao invs de obt-los padronizados a partir do Snort.
realizada de forma bastante satisfatria, sem haver necessidade de despender muito tempo.
Conforme citado anteriormente, apesar do IDS Local no ser o objeto de pesquisa deste
projeto, sua utilizao imprescindvel. Portanto, foi definido que a soluo Snort deveria ser
utilizada para anlise das mensagens recebidas pelo ADACA, pois, alm de ser uma
funcionalidades que facilitam a integrao ao ADACA. Entre elas, pode-se destacar a anlise
de pacotes por meio de arquivo de entrada no formato PCAP e o envio dos alertas detectados
Para realizao dos testes se fez necessrio definir um ambiente que houvesse as mesmas
O servidor WEB e o IDS Central foram alocados em duas mquinas equipadas com
processador AMD Atlhon XP 3.0 GHz, 1 Gbyte de memria RAM e sistema operacional
Fedora Core 4. Para os clientes foram utilizadas estaes com diversas configuraes, visto
5.6 Testes
A etapa de testes teve como principal objetivo realizar o estudo de viabilidade do ADACA e,
consequentemente, medir o tempo gasto por ele para verificar, em cada uma das mensagens, a
52
4.11.
Para cada situao, foram disparadas requisies normais e maliciosas com objetivo de
Portanto, foi possvel observar cada uma das etapas do processo de classificao, anlise e
captulo.
53
Neste captulo sero apresentados os resultados obtidos com a utilizao do ADACA para as
Como primeiro ponto relevante da anlise, deve ser observado que o prottipo
no captulo Captulo 4. A partir deste resultado inicial que se pde dar continuidade dos
Foi, ento, realizada a medio do tempo gasto pelo Apache sem acoplamento do
linguagem C. Para as medies com o ADACA em operao, esta funo foi posicionada
Por meio de uma amostra de cem requisies a uma mesma URL, a mdia ponderada
do tempo de processamento de cada requisio obtida para o Apache original foi de 101 (
31) microssegundos. Com base na mesma amostragem, o valor mdio obtido para o Apache
com o ADACA no modo ativo foi de 270 (94) microssegundos. No foram observados
54
no modo passivo. Portanto, observa-se que a utilizao do ADACA no modo ativo introduz
servidor WEB Apache no acarretou perdas considerveis de tempo, visto que a latncia
introduzida por Silva (2004). Esta proposta possibilitaria enviar mensagens de controle ao
ADACA a partir do IDS Central, com base no mesmo modelo das mensagens IDMEF. Porm,
a biblioteca disponibilizada pelo autor foi construda na linguagem Java e a integrao com a
linguagens.
Captulo 7. Concluso
Este trabalho apresentou a arquitetura de deteco usualmente utilizada pelos sistemas IDS e
IPS e a proposta de uma arquitetura de agente de aplicao que fosse capaz de analisar
mensagem que focam uso de protocolos de comunicao seguros, como, por exemplo, SSL e
TLS.
O agente ADACA, da forma como foi proposto, pode ser posicionado nas
Alm disso, foi possvel instanciar as medidas de conteno e preveno por meio do mdulo
conteno (agente no modo passivo), notou-se que, para uma pgina contendo imagens, o
carregamento no se deu por completo, pois a medida surtiu efeito antes mesmo que as
processamento realizado pelo agente nos diferentes modos de operao. Esta sobrecarga
decorrente, principalmente, das anlises realizadas pelo IDS local, o qual dependente de
A anlise dos resultados obtidos com a medio do tempo despendido para anlise,
classificao e tomada de deciso por parte do ADACA permitiu concluir que a presente
proposta bastante aceitvel, visto que a latncia adicional inserida em cada mensagem da
passivo.
modelo de agente de aplicao e seus principais componentes, que pode ser utilizado como
Algumas propostas surgiram no decorrer deste projeto, as quais so agora apresentadas como
deteco.
fundamental, a qual poderia ser incrementada por meio da implementao de uma mquina de
estados que possibilitaria definir novas funcionalidades para este mdulo, como a anlise das
funes. Portanto, necessrio realizar melhorias nesta API de forma a torn-la genrica, com
criar uma interface de integrao entre as linguagens Java e C ou ainda realizar a interpretao
do cdigo fonte das bibliotecas disponveis em Java com a finalidade de reproduzir o mesmo
feito na linguagem C.
58
Referncias
BACE, R.; MELL, P. Intrusion Detection Systems. NIST - National Institute of Standards and
Technology, Special Publication, 2001.Disponvel em:
<http://csrc.nist.gov/publications/nistpubs/800-31/sp800-31.pdf>
BRUMLEY, D.; BONEH, D. Remote Timing Attacks are Practical. 12th USENIX Security
Symposium, 2003.
BUCHHEIM, T.; ERLINGER, M.; FEINSTEIN, B.; MATTHEWS, G.; POLLOCK, R.;
BETSER, J.; WALTHER, A. Implementing the Intrusion Detection Exchange protocol.
Computer Security Applications Conference. Proceedings 17th Annual, p. 32-41, Dezembro,
2001.
DASGUPTA, D.; GONZALEZ, F.; YALLAPU, K.; GMEZ, J.; YARRAMSETTII, R.;
DUNLAP, G.; GREVEAS, M. CIDS: An Agent-based Intrusion Detection System.
Computers & Security Journal, v. 24, issue 5, p. 387-398, Agosto, 2005
DEBAR, H.; CURRY, D.; FEINSTEIN, B. The Intrusion Detection Message Exchange
Format. Internet Draft, IETF, Janeiro 2005. <http://www.ietf.org/internet-drafts/draft-ietf-
idwg-idmef-xml-14.txt>.
ENDORF, C., SCHULTZ, E., MELLANDER, J. Intrusion Detection & Prevention. Ed.
McGraw-Hill. 2004.
FEINSTEIN, B.; MATTHEWS, G.; WHITE, J. The Intrusion Detection Exchange Protocol
(IDXP). Internet Draft, IETF, Outubro, 2002. Disponvel em: <http://www.ietf.org/internet-
drafts/draft-ietf-idwg-beep-idxp-07.txt>.
GUPTA, D.; BUCHHEIM, T.; FEINSTEIN, B.; MATTHEWS, G.; POLLOCK, T. IAP:
Intrusion Alert Protocol. Internet Draft, IETF, Fevereiro, 2001. Disponvel em:
<http://www.ietf.org/internet-drafts/draft-ietf-idwg-iap-05.txt>.
59
KAHN, C.; PORRAS, P. A.; STANIFORD-CHEN, S.; TUNG, B., A Common Intrusion
Detection Framework. Journal of Computer Security, Julho, 1998.
LECKIE, T.; YASINSAC, A. Metadata for Anomaly Based Security Protocol Attack
Detection. IEEE Transactions on Knowledge and Data Engineering, Volume 16, Number 10,
Outubro, 2004.
MCAFEE. Encrypted Threat Protection: Network IPS for SSL Encrypted Traffic. 2005.
Disponvel
em:<http://www.mcafee.com/us/local_content/white_papers/wp_encr_th_prot.pdf>
MICROSOFT. Microsoft Security Bulletin (MS00-078): Patch Available for 'Web Server
Folder Traversal' Vulnerability. Outubro, 2000. Disponvel em:
<http://www.microsoft.com/technet/security/bulletin/MS00-078.mspx>.
NEW, D.; ROSE, M. Reliable Delivery for Syslog. RFC3195. Novembro, 2001.
NETCRAFT. Web Server Survey Archives. Fevereiro, 2006. Disponvel em: <
http://news.netcraft.com/archives/web_server_survey.html>
NIST. Acquiring and Deploying Intrusion Detection Systems. ITL Computer Security
Bulletins. NIST. Novembro, 1999.
PALLER, A. New reports finds significant shifts in software being targeted by attackers.
SANS TOP 20 MOST CRITICAL INTERNET VULNERABILITIES REPORT. Novembro,
2005.
PLAGGEMEIER, M.; TLLE, J. Secure Shell Proxy Intrusion Detection, Proc. of R.T.O.
Information Systems Technology Panel Symposium on Real Time Intrusion Detection, Maio,
2002.
ROESCH, M. Snort - the de facto standard for intrusion detection/prevention. Verso 2.4.
Disponvel em: <http://www.snort.org>. Acesso em: 20 junho 2005.
ROSE, M. The Blocks Extensible Exchange Protocol Core. RFC3080, IETF, Maro, 2001.
SANDHU, R. S. Lattice-based access control models. IEEE Computer, Estados Unidos, v. 26,
n. 11, p. 9-19, 1993.
SEKAR, R.;GUPTA, A.; FRULLO, J.; SHANBHAG, T.; TIWARI, A.; YANG, H.; ZHOU, S.
Specification-based Anomaly Detection: A New Approach for Detecting Network Intrusions.
Proceedings of the 9th ACM Conference on Computer and Communications Security, p. 265-
274, 2002.
SPI DYNAMICS, Inc. SQL Injection Are Your Web Applications Vulnerable? 2002.
Disponvel em: <http://www.spidynamics.com/papers/SQLInjectionWhitePaper.pdf>
US-CERT: United States Computer Emergency Readiness Team. Microsoft Windows domain
controller denial of service in Kerberos message handling. Disponvel em:
<http://www.kb.cert.org/vuls/id/610133>. Acesso ao site: 16 Ago. 2005.
______. Microsoft Windows Remote Desktop Protocol service input validation vulnerability.
Disponvel em:<http://www.kb.cert.org/vuls/id/490628>. Acesso ao site: 16 Ago. 2005.
WU, Y.; FOO, B.; MEI, Y.; BAGCHI, S. Collaborative intrusion detection system (CIDS): a
framework for accurate and efficient IDS. 19th Annual Proceedings on Computer Security
Applications Conference, December, 2003.
YANG, Y.; CHANG, J.; CHU, Y. The Security Components Exchange Protocol (SXCP).
Internet Draft, Dezembro, 2003.
XU, D.; NING, P. Alert correlation through triggering events and common resources. 20th
Annual Computer Security Applications Conference, p. 360-369, Dezembro, 2004.
ZHANG, X.; LI, C.; ZHENG, W. Intrusion Prevention System Design. 4th International
Conference on Computer and Information Technology, p. 386-390, Setembro 2004