Escolar Documentos
Profissional Documentos
Cultura Documentos
Abstract. Nowadays, we see the need for migration of desktop software to the
Internet. Because of this, the number of web applications developed grows
every day, and projections related to the persistence of such a steady growth
are even more optimistic. However, the security of web applications is not
prioritized the same way that the quest for rapid and agile software
development. Based on these considerations, this paper presents an alternative
to solve the aforementioned problem by using an adaptive web application
firewall that also protects web applications from known attacks, and protect
them from possible 0-day attacks that may arise.
Resumo. Nos dias atuais, observamos a necessidade de migrao dos
softwares desktop para a Internet. Por conta disso, cresce a cada dia o
nmero de aplicaes web desenvolvidas e as projees relacionadas a
continuidade desse crescimento so ainda mais otimistas. No entanto, a
segurana das aplicaes web no priorizada da mesma forma que a busca
pelo desenvolvimento de software rpido e gil. Com base em tais
consideraes, esse trabalho apresenta uma alternativa para solucionar o
problema supracitado atravs da utilizao de um firewall de aplicaes web
adaptativo que, alm de proteger as aplicaes web de ataques j conhecidos,
proteger as mesmas de possveis ataques 0-day que possam surgir.
1. Introduo
105
2. Conceitos Preliminares
2.1. Web Application Firewall
De acordo com [WAFEC 2006], Web Application Firewall (WAF) uma nova
tecnologia de segurana que tem o papel de proteger aplicaes web de ataques. As
solues de um WAF so capazes de prevenir ou at mesmo neutralizar um ataque a
uma aplicao, conseguindo filtrar de forma eficiente o que um IDS (Intrusion
Detection Systems) e firewalls de rede no conseguem. Isso se deve ao fato de um WAF
agir diretamente na camada de aplicao, filtrando os dados e principalmente
parmetros utilizados em uma transao HTTP [Jones and Bejtlich 2006].
2.1.1. Implementaes e configuraes de um WAF
Os WAFs podem ser implementados de trs formas diferentes, cada uma possuindo
vantagens e desvantagens. Segundo [WAFEC 2006], as formas de implementao de
um WAF so:
106
O modelo de segurana negativo simples de ser configurado e tem por base permitir o
trfego de todos os pacotes de solicitao, filtrando somente os que obedecem a alguma
assinatura ou regra do WAF (black list). O sucesso dessa implementao determinado
pela eficincia com que o firewall de aplicao web consegue detectar solicitaes
nocivas, de acordo com sua base de regras e assinaturas.
O problema em implementar o modelo de segurana negativo, reside no risco do
banco de dados de regras filtrar um grande nmero de falso-positivos (quando a regra
filtra pacotes autnticos da aplicao) e por esse modelo ser mais suscetvel a tcnicas
de evaso.
A vantagem de se usar o modelo de segurana negativo se deve a facilidade de
configurao que o mesmo proporciona, pois sero criadas regras e assinaturas de
ataques que sero aplicadas a todas as requisies.
2.1.3. Modelo de segurana positivo
Dessa forma, ser possvel aprender mais sobre os mecanismos de ataques e usar
as informaes obtidas para proteger as aplicaes web do ambiente. Para o invasor, o
sistema parecer comprometido e, portanto, poder realizar vrias tentativas de
obteno de informaes de bancos de dados e/ou mesmo testar falhas na aplicao. Do
ponto de vista do modelo de segurana sugerido aqui, varias informaes importantes
esto sendo coletadas a respeito do mecanismo de ataque, do comportamento do
invasor, das ferramentas e que informaes exatamente o invasor busca.
107
Por outro lado podemos implementar honeypots atravs de mquinas virtuais rodando
sobre algum sistema de virtualizao, onde os honeypots apresentam as mesmas
funcionalidades implementadas em uma mquina fsica, no entanto, a escalabilidade
desse modelo muito maior, sua manuteno facilitada e, ainda, o custo bem menor
do que a utilizao de mquinas fsicas.
Encapsulamento de Protocolos;
108
Adaptao Dinmica;
Naturalmente Heterogneos;
3. Trabalhos Relacionados
3.1. ModSecurity
O jShield Security Appliance a nossa soluo para segurana de aplicaes web, que
tem por finalidade impedir que atacantes comprometam a segurana desse nicho de
aplicaes. Essa soluo composta por trs ferramentas, que so:
Loki Honeypot;
109
Alm disso, o jShield tambm faz a verificao dos dados enviados da aplicao
para o cliente, onde o mesmo filtra os dados da transao para evitar que a aplicao
ataque o usurio. Um exemplo que podemos citar so os ataques cross-site scripting
persistidos, onde o atacante insere o cdigo malicioso no banco de dados, por exemplo.
Caso a solicitao seja nociva, por padro, o jShield descarta o pacote sem
encaminhar a solicitao do atacante para nenhum local abortando a conexo. Outras
possibilidades seriam: redirecionar a requisio para uma pgina de acesso negado;
encaminhar a requisio para um aplicativo honeypot, que poder receber e documentar
toda a tentativa de ataque para, por exemplo, analisar e gerar novas regras e assinaturas
de ataques com base nas inferncias realizadas nesses logs.
4.2. Loki Honeypot
110
111
O Savant Mobile Agent tem por funo principal navegar por contextos que
contenham o Loki Honeypot, com finalidade de analisar os logs gerados por essa
ferramenta, gerar regras de assinaturas dos ataques detectados, e transportar as regras
teis geradas de forma autnoma para o jShield, onde essas regras sero adicionadas a
sua base de conhecimento. A Figura 3 descreve o funcionamento do Savant.
112
Para validar a nossa pesquisa, foram realizados vrios testes de carga e estresse no
jShield e no ModSecurity (Ambos configurados como proxy reverso). O objetivo desses
testes foi comparar o jShield com o ModSecurity nos quesitos desempenho (vazo),
nmero de usurios simultneos que os WAFs testados suportam (escalabilidade), e
tambm a perda de velocidade que ocorre nas transaes que passam pelos mesmos
(latncia). Para executar esses testes utilizamos a ferramenta Apache JMeter [JMeter
2010].
113
114
6. Concluses
Como demonstrado nos testes, o jShield alm de tornar a aplicao mais segura,
agiliza o tempo de resposta das solicitaes graas ao algoritmo de caching
implementado, ao mesmo tempo que no h perdas significantes na vazo dos dados
que passam pela ferramenta, tornando-o uma ferramenta extremamente atrativa pelos
seus resultados.
E, por fim, a grande contribuio deste trabalho a combinao de agentes
mveis (Savant Agent Mobile) em honeypots (Loki Honeypot) para minerar logs
115
Referncias
Bace, R., Mell, P. (2001). Intrusion Detection Systems. NIST - National Institute of
Standards and Technology. http://www.snort.org/docs/nist-ids.pdf.
CERT.BR (2010). Estatsticas dos Incidentes
http://www.cert.br/stats/incidentes/index.html. Julho.
Reportados
ao
CERT.br.
Lange, D. (1998). Mobile objects and mobile agents: The future of distributed
computing?.
ECOOP98
Object-Oriented
Programming.
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.18.7189&rep=rep1&type=
pdf.
open
source
web
application
firewall.
OWASP (2010). The ten most critical web application security vulnerabilities. Open
Web
Application
Security
Project
OWASP.
http://owasptop10.googlecode.com/files/OWASP%20Top%2010%20-%202010.pdf.
Provos, N. and Holz, T. (2007) Virtual Honeypots From Botnet Tracking to Intrusion
Detection. Addison-Wesley.
116