Professional Documents
Culture Documents
Ambientes Client-side"
Por
www.cin.ufpe.br/~posgraduacao
RECIFE, FEVEREIRO/2014
RECIFE, FEVEREIRO/2014
Agradecimentos
Agradeo. . .
Em primeiro lugar a Deus por sua graa e pelas bnos derramadas constantemente
sobre mim de maneira maravilhosa;
A minha famlia, meu pai, meu irmo, e especialmente minha me, esta por ser a
maior incentivadora e por fornecer amor e suporte emocional imprescindvel em
todos os momentos de minha vida;
A Adriana, por ser minha companheira fiel, me apoiando com seu carinho e cuidado
e por estar ao meu lado mesmo nas horas mais difceis.
Ao professor Vinicius Garcia pela pacincia e dedicao na orientao desta pesquisa.
Aos professores Ruy de Queiroz e Rodrigo Assad por terem aceitado participar de
minha banca.
A todos os meus amigos e colegas que contriburam direto e indiretamente para a
realizao deste sonho;
Muito Obrigado!
iv
"E aqueles que foram vistos danando foram julgados insanos por
aqueles que no podiam escutar a msica."
NIETZSCHE (Friedrich Nietzsche)
Resumo
vi
Abstract
Web Browsers are extremely important tools with respect to the use of information on
the Internet, are therefore the software which users utilize most of the time, whether
domestic or corporate. Over the years, the way of what was being published in web has
evolved, what was once static, read-only, now presents itself as a scenario where Internet
users and services interact by sharing information on a wide variety of scenarios, such as
email, social networking and e-commerce , thus becoming a dynamic and collaborative
environment.
Amid the advent of web, possibilities for specialized service providers have emerged
as banks or payers of commercial transactions, including over the internet found opportunities to make available their services with high availability , enabling its customers to be
able to use their services through a browser.
The result is a series of benefits such as shorter queues, speed, interactivity , focus
in the field, we can translate a word: convenience. Nevertheless, due to its advent,
the website is presented as an environment every once hostile, where people perform
malicious cyber crimes, the which aim to steal or tamper with sensitive information
of the web users, violating data users. These illegal activities are often implemented
through attacks that exploit factors such as Social Engineering, Web Applications Flaws
or Vulnerabilities in the browser user. These attack vectors are shown in several ways:
capturing input from users, forging official websites, injection malicious scripts, malware
propagation, among others. With the dynamism of the web , the control process of these
attack vectors becomes increasingly difficult, and how the trend of the web is to keep
evolving, these threats become one ongoing concern.
In this research we propose a tool, called Aegis, a protection model to interact directly
in the users browser in order to minimize the attacks mentioned purely by a client
-side solution. To this were done studies and literature review on the topic, seeking a
justification well founded for decisions and techniques applied. Additionally, the results
are presented obtained in the evaluation of Aegis in conjunction with other related tools.
Keywords: Information Security, Vulnerabilities in Web Applications, Vulnerabilities in
Web Browsers, Fraud Protection.
vii
Sumrio
Lista de Figuras
xi
Lista de Tabelas
xiii
Introduo
1.1 Justificativa e Motivao
1.2 Objetivos . . . . . . . .
1.3 Fora do Escopo . . . . .
1.4 Metodologia . . . . . . .
1.5 Estrutura da Dissertao
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Contextualizao da Proposta
2.1 Metodologia de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Definio de Pesquisa e Fonte Primria . . . . . . . . . . . . . . . . .
2.3 Critrios de Incluso . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4 Critrio de Excluso . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5 Critrio de Relevncia . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6 Triagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7 Classificao dos Resultados . . . . . . . . . . . . . . . . . . . . . . .
2.8 Anlise e discusso dos Resultados . . . . . . . . . . . . . . . . . . . .
2.8.1 Resultado Obtido da QP 1 . . . . . . . . . . . . . . . . . . . .
Vetor 1: Injeo de Cdigos . . . . . . . . . . . . . . . . . . .
Vetor 2: Fraudes . . . . . . . . . . . . . . . . . . . . . . . . .
Vetor 3: Fraca Proteo aos Dados . . . . . . . . . . . . . . . .
Vetor 4: Componentes ou Complementos Inseguros . . . . . . .
Vetor 5: Ataques de Domnio Cruzado . . . . . . . . . . . . . .
2.8.2 Resultado Obtido da QP 2 . . . . . . . . . . . . . . . . . . . .
Ataque 1: Cross-Site Scripting (XSS) - A1 . . . . . . . . . . .
Ataque 2: Injeo SQL (SQLi) - A2 . . . . . . . . . . . . . . .
Ataque 3: Clickjacking - A3 . . . . . . . . . . . . . . . . . . .
Ataque 4: Redirecionamentos e Encaminhamentos Invlidos - A4
Ataque 5: Complementos Maliciosos - A5 . . . . . . . . . . . .
Ataque 6: Exposio de Dados Sensveis - A6 . . . . . . . . . .
1
2
4
4
5
6
7
8
9
10
10
11
11
12
13
13
14
14
15
15
15
16
17
21
23
25
27
29
viii
2.9
3
Implementao da Proposta
3.1 Decises de Projeto . . . . . . . . . . . . . . . . . . .
3.1.1 Publico alvo e cenrio de atuao . . . . . . .
3.1.2 Tipo de ferramenta a ser desenvolvida . . . . .
3.2 Arquitetura do Aegis . . . . . . . . . . . . . . . . . .
3.2.1 A Extenso Aegis . . . . . . . . . . . . . . . .
Nvel de Confiana . . . . . . . . . . . . . . .
Listas . . . . . . . . . . . . . . . . . . . . . .
Scripts . . . . . . . . . . . . . . . . . . . . .
Manipulao das Requisies . . . . . . . . .
Manipulao de Dados Sensveis (A6) . . . . .
Manipulao de Complementos (A7) . . . . .
Manipulao de Dados em Transferncia (A5)
Notificaes ao Usurio . . . . . . . . . . . .
Operaes Internas . . . . . . . . . . . . . . .
3.2.2 Arquitetura do Servio do Aegis . . . . . . . .
Biblioteca Prpria . . . . . . . . . . . . . . .
Bibliotecas Open Source . . . . . . . . . . . .
Servios Externos . . . . . . . . . . . . . . . .
3.3 Funcionalidade dos Filtros . . . . . . . . . . . . . . .
3.3.1 Filtro A1: Ataques baseados em A1 . . . . . .
3.3.2 Filtro A2: Ataques baseados em A2 . . . . . .
3.3.3 Filtro A3: Ataques baseados em A3 . . . . . .
3.3.4 Filtro A4: Ataques baseados em A4 . . . . . .
3.3.5 Filtro A5: Ataques baseados em A5 . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
31
33
34
36
37
37
38
40
41
42
42
42
43
44
44
45
46
46
46
48
49
49
49
49
50
50
50
51
52
53
54
56
59
60
ix
.
.
.
.
.
61
65
66
68
69
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
70
70
71
72
79
81
82
83
83
84
85
85
86
86
87
87
88
89
90
91
92
3.4
4
Avaliao da Proposta
4.1 Metodologia . . . . . . . . . . .
4.1.1 Planejamento . . . . . .
4.1.2 Definio . . . . . . . .
4.1.3 Coleta de Dados . . . .
4.1.4 Anlise dos Resultados .
Resultado da Questo 1 .
Resultado da Questo 2 .
Resultado da Questo 3 .
Resultado da Questo 4 .
Resultado da Questo 5 .
Resultado da Questo 6 .
Resultado da Questo 7 .
Resultado da Questo 8 .
Resultado da Questo 9 .
4.2 Limitaes da Avaliao . . . .
4.3 Consideraes Finais . . . . . .
Referncias Bibliogrficas
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
93
A Apndice
127
B Anexo
131
Lista de Figuras
1.1
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
2.11
2.12
2.13
2.14
11
13
14
16
18
18
22
23
24
26
29
30
34
36
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
3.14
3.15
3.16
3.17
45
46
47
50
54
55
55
57
58
59
60
61
62
63
64
65
67
xi
67
68
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
70
72
80
81
82
83
84
84
85
85
86
86
87
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
xii
Lista de Tabelas
2.1
2.2
2.3
2.4
2.5
.
.
.
.
.
10
19
19
23
40
4.1
73
A.1
A.2
A.3
A.4
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
128
128
129
130
xiii
1
Introduo
Segundo a pesquisa da Mashable [41] ilustrada na Figura 1.1, em 1992 a web era utilizada
quase que exclusivamente por usurios norte-americanos, onde chegavam a representar
66% destes usurios que navegavam na rede mundial de computadores. Contudo, a
web nos dias atuais est de fato considerada globalizada, um bom exemplo disso que
no mesmo estudo, foi identificado que a partir do ano de 2012, os usurios de outras
partes do mundo j representavam 87% de todo o trafego da web, fazendo a hegemonia
norte-americana despencar para 13%.
Como justificativa deste crescimento a evoluo que a web e seus meios de navegao sofreram nos ltimos anos. Neste perodo a Internet ganhou fora e impulsionou
1.1
Justificativa e Motivao
Apesar das inmeras possibilidades de uso, institutos como o Centro de Estudos para
Resposta e Tratamento de Incidentes, CERT, alertam da necessidade de cuidados a serem
tomados durante a navegao na Internet, em especial aos vetores de ataques envolvidos
na utilizao dos navegadores web [1]. Com tantos valores agregados proporcionados
pela comodidade da Internet, operaes como compras online, Internet Banking e compartilhamento de informaes pessoais tornaram-se populares, sendo executadas durante
o dia a dia de milhares de pessoas. Consequentemente, o dado trafegado comea a conter
informaes sensveis, representando assim maior valor de negcio, a partir disso as
preocupaes quanto a uma proteo eficaz destes dados comea a receber crescimento.
O advento da web trs oportunidades tambm para pessoas mal-intencionadas, que
executam crimes cibernticos, dos quais visam roubar ou adulterar informaes sigilosas,
comprometendo a segurana da informao (SI) dos usurios da web, ou seja, violando
a Conformidade, Integridade e Disponibilidade (CID) de seus dados. Estes ataques
1.2. OBJETIVOS
1.2
Objetivos
Este estudo tem como objetivo propor o desenvolvimento de uma ferramenta capaz de
proteger o navegador web das principais ameaas que proporcionam violao aos dados.
Apresentar os navegadores mais populares da atualidade, a histria e evoluo dos
mesmos e as tecnologias envolvidas, sobre a tica da navegao segura.
Realizar uma reviso sistemtica sobre as questes de segurana e estado atual nas
principais fontes literrias.
Propor uma taxonomia dos principais ataques web direcionados aos ambientes
Client-side.
Discutir o estado atual das ameaas com base nos resultados obtidos na literatura,
direcionando o estudo baseado nas principais fontes literrias do tema seja academia
ou indstria.
Desenvolver e disponibilizar um prottipo da ferramenta que possa interagir com o
navegador em tempo real.
Analisar o comportamento da ferramenta proposta sendo executada nos ambientes
controlados disponveis na atualidade.
Desenvolver e disponibilizar um ambiente controlado, com o objetivo de uma
validao mais completa e voltado para a tica do tema proposto.
Discutir os resultados obtidos na validao da proposta.
1.3
Fora do Escopo
1.4. METODOLOGIA
1.4
Metodologia
Para atender os objetivos propostos, ser adotada uma metodologia que consiste em uma
serie de passos a serem executados.
O primeiro passo ser realizar uma reviso sistemtica na literatura sobre o tema que
apresenta relao com a proposta deste projeto. A reviso dever ser aplicada em bibliotecas ou repositrios de publicaes, e devem ser executadas atravs de palavras chaves
bem definidas. O objetivo ser analisar as principais ameaas que esto relacionadas ao
problema abordado no tema, e consequentemente mapear as solues apresentadas at
hoje e mitigar possveis lacunas.
Com todo o conhecimento de pesquisa j realizada sobre este tema revisado, o segundo
passo ser partir para as especificaes da soluo. A ferramenta proposta neste estudo
denominada Aegis dever ser acoplada aos navegadores considerados mais populares da
atualidade. Tambm devero ser avaliadas outras ferramentas que possuam propsitos
similares ao do Aegis, que atravs desta avalio dever ser gerado um relatrio com as
caractersticas e peculiaridades encontradas durante a investigao e tal relatrio servir
para uso durante o desenvolvimento deste projeto e na escrita desta dissertao.
No terceiro passo sero atividades de definio da arquitetura que modela a ferramenta
Aegis, para isso sero realizadas analises e estudos, bem como validaes para que se
possa fomentar a viabilidade de desenvolvimento da ferramenta. Este processo de
deciso arquitetural dever observar o ambiente de execuo da ferramenta, ou seja, uma
ferramenta que interaja com o navegador e proporcione uma experincia com o usurio.
No quarto passo ser descrito o desenvolvimento de um prottipo funcional da ferramenta proposta, e para isso sero utilizadas ferramentas para apoio ao desenvolvimento
em cada um dos navegadores mais populares.
Para que os resultados sejam o mais prximo da realidade, ser realizada uma validao da ferramenta proposta. Porm, devido aos inmeros cenrios propensos a violao
de dados, bem como as consequncias da exposio de dados sensveis, a execuo
em ambientes reais extrapolaria o cronograma da pesquisa. Portanto foi definido que a
ferramenta ser avaliada em ambientes controlados que reproduzem ambientes reais com
vulnerabilidades existentes. A validao ser realizada no quinto passo, que se caracteriza
em uma analise dos principais ambientes controlados atuais que se encontram disponveis
de forma gratuita e de cdigo aberto, e que tenha apoio ou tutela de alguma organizao
de grande relevncia ao tema.
No sexto passo, baseando-se na tica das principais ameaas obtidas no primeiro
passo, este trabalho tem o intuito de adicionar novas funcionalidades para que o respectivo
ambiente cubra as ameaas relacionadas ao tema que estavam at ento ausentes na
reproduo do seu cenrio.
As concluses, bem como variaes e comparaes entre os resultados da experimentao sero descritas no passo sete, trazendo um comparativo entre as ferramentas
mitigadas no segundo passo, em comparao com o Aegis.
1.5
Estrutura da Dissertao
2
Contextualizao da Proposta
Nesta pesquisa apresentada uma taxonomia para as principais ameaas, vetores e ataques
mais atuantes em ambientes Client-side, dos quais proporcionam a violao de dados
sensveis. Primeiramente importante conceituar alguns termos. Segundo [60] a violao
o roubo ou perda acidental de dados sensveis. J um dado sensvel qualquer dado que
possui seu acesso restrito s pessoas autorizadas. E segundo os estudos publicados pelas
entidades SANS/MITRE [314], um vetor de ataque um mtodo do qual um usurio
malicioso utiliza para realizar um ataque uma determinada aplicao ou servio web. J
um ataque na web qualquer ao realizada por uma aplicao ou pessoa, seja de forma
proposital (maliciosa) ou involuntria (atravs de vulnerabilidades), que resulta em algum
tipo de Ameaa. E por fim, uma Ameaa qualquer evento, circunstancia ou pessoa que
possa causar danos a uma determinada pessoa ou aplicao, a exemplo da violao de
dados sensveis.
Este captulo visa apresentar uma taxonomia que auxilie na didtica e classificao das
principais ameaas neste cenrio. O primeiro passo foi realizar uma reviso sistemtica
na literatura sobre o tema no intuito de apresentar os principais problemas e solues,
proporcionando assim maior fundamentao e embasamento na abordagem da proposta.
Como ponto de partida, foi necessrio realizar um levantamento das consideraes bsicas
quanto s definies e nomenclaturas j estabelecidas em publicaes reconhecidas
mundialmente sobre o tema proposto, alm de serem mantidas por entidades com alto
impacto e respaldo. Diante os critrios pr-estabelecidos como ponto de partida, foi
possvel selecionar sete publicaes consideradas o prisma da proposta desta dissertao,
as quais esto distribudas entre cinco entidades que desenvolveram e mantm seus
respectivos trabalhos. Segue uma breve introduo sobre as referencias selecionadas,
agrupadas por sua respectiva instituio mantenedora.
OWASP: uma entidade sem fins lucrativos e de respaldo internacional que visa
2.1
Metodologia de Pesquisa
Com os principais Ataques definidos, o prximo passo foi utilizar uma metodologia para
uma busca sistmica em fontes literrias disponveis online. A metodologia baseada
nas orientaes de Kitchenham [225] que baseia-se em uma triagem segmentada em
Questes de Pesquisa (QP) e tem o proposito de determinar um contedo e concepo de
uma reviso na literatura de um determinado tema. A reviso com o tema deste estudo
visa identificar os principais Vetores, Ataques, definies e suas consequncias, alm
2.2
Foi definido o IEEEXplore1 como a fonte primria deste trabalho, apesar do seu mecanismo de busca no possuir tantas funcionalidades como em outras fontes literrias,
esta possui um considervel nmero de publicaes. Tambm foi observado que se
dispe de um grande nmero de indexaes de trabalhos de outras fontes. Outras fontes
literrias tambm foram escolhidas por contemplarem trabalhos relevantes ao tema e
indispensveis para a elaborao das concluses desta reviso, a saber: Elsevier Scopus2 ,
ACM Digital Library3 , SpringerLink4 , Science Direct5 e Engineering Village6 .
Alm das fontes acadmicas, tambm foram consideradas algumas fontes direcionadas
indstria, pelo fato de possurem publicaes aderentes ao tema e de acesso totalmente
gratuito ao seu contedo, estas fontes foram representadas como uma nica Fonte literria
nomeada como "Outros".
Como pesquisa inicial foi realizado no IEEEXplore uma busca por trabalhos relacionados a segurana nos navegadores web, utilizando palavras-chave e termos baseados nas
sete publicaes apresentadas anteriormente, que definiram as nomenclaturas dos ataques
acerca deste estudo, chegando a seguinte regra de filtragem: [(palavras-chave relacionadas segurana)] E [palavra-chave relacionada navegador web] E [palavras-chave
relacionadas as ameaas ao navegador web] diretamente no meta-data das publicaes,
formado pelo titulo, abstract e palavras-chaves de cada artigo, resultando no seguinte
comando de busca conforme ilustrado na Tabela 2.1: O comando da Tabela 2.1 listou
345 publicaes7 no IEEEXplore , somando os resultados em todas as fontes de pesquisa,
resultou em 1.383 publicaes.
1 IEEE
Xplore: http://ieeexplore.ieee.org
Scopus: http://www.scopus.com/home.url
3 ACM Digital Library: http://dl.acm.org
4 Springer Link: http://link.springer.com/
5 Science Direct: http://www.sciencedirect.com/
6 Engineering Village: http://www.engineeringvillage.com/
7 Busca realizada em Agosto de 2013
2 Elsevier
2.3
Critrios de Incluso
2.4
Critrio de Excluso
10
2.5
Critrio de Relevncia
2.6
Triagem
Nesta seo descrita a triagem a qual faz uso dos critrios apresentados anteriormente
com o objetivo de refinar o resultado inicial das publicaes selecionadas. Inicialmente foi
aplicada uma analise superficial, baseada na leitura do abstract das publicaes, na qual
eram aplicados os critrios previstos, uma vez contemplados, a publicao era considerada.
Foi constatado que neste tipo de anlise existiam casos onde o processo superficial no
era suficiente, como por exemplo, quando o abstract era muito resumido ou no era
possvel extrair dele as informaes necessrias aos cumprimentos dos critrios. Essas
publicaes eram alocadas separadamente para uma futura avaliao mais detalhada onde
seria analisada a introduo ou demais captulos ou sees da publicao. O resultado
da triagem resultou nas publicaes conforme ilustrado na Figura 2.1. Esta triagem
resultou em 915 publicaes, e revelou que o IEEEXplore a fonte com maior numero
11
de trabalhos disponveis sobre o tema, com 233 publicaes, ou seja, a triagem descartou
112 artigos que foram considerados na pesquisa inicial. O mesmo procedimento foi
realizado nas demais fontes e isso trouxe ao resultado final a garantia que as publicaes
selecionadas apresentam de fato aderncia ao tema deste estudo. Conforme especificado
anteriormente, a fonte demarcada como "Outros", representam as obras encontradas nas
fontes industriais, e nestas esto includas as sete publicaes que fundamentam os termos
e nomenclaturas desta pesquisa.
2.7
12
2.8
2.8.1
Resultado Obtido da QP 1
Apesar de cada vetor possuir uma caracterstica especfica, nada impede que o mesmo
atue simultaneamente com outros vetores em um mesmo cenrio, resultando assim
em diversas interseces entre as publicaes e Vetores. Conforme os cinco vetores
apresentados na Figura 2.2, o resultado da QP1 gerou o grfico da Figura 2.3 no qual
demonstra a distribuio das 915 publicaes entre os cinco Vetores, com o objetivo de
observar quais vetores so mais explorados. importante salientar que o total de 915
artigos divergente do somatrio dos nmeros desprendidos no grfico da Figura 2.3
(1063), o motivo o acumulo de ocorrncias de interseces j mencionadas, gerando
sobreposies publicaes atribudas em mais de um Vetor. O grfico da Figura 2.3
13
14
golpes dos quais simulam um cenrio real de um determinado site ou servio com o
objetivo de levar o usurio a crer que o site em questo quem se diz ser [6].
Vetor 3: Fraca Proteo aos Dados
Com 325 publicaes um vetor intermedirio em termos de explorao literria,
encontrando-se como segundo mais relatado. Sua consequncia se caracteriza por ausncia ou falha em tcnicas como a criptografia ou ofuscao de dado sensvel, quando
no aplicadas ou aplicadas de forma ineficiente. Exemplos comuns so senhas ou dados
de carto de crdito, muitas vezes estes dados so trafegados de forma inadequada por
aplicaes que adotam uma fraca poltica de proteo dados sensveis [292][83].
Vetor 4: Componentes ou Complementos Inseguros
Uma rea bastante relevante, mas at ento menos explorada na literatura. Foram encontrados apenas 72 artigos, que representa em torno de 7% de todos os artigos selecionados.
Este tipo de vetor ocorre quando existe alguma vulnerabilidade no navegador ocasionada
por uma falha em seu desenvolvimento [1]. Apesar dos desenvolvedores de navegadores
estarem sempre corrigindo as falhas e incentivando seus usurios a atualizarem suas
verses, muito rpida a disseminao de uma notcia de nova falha em uma determina
verso do navegador, como em casos de ataques de Dia Zero, do ingls, Zero-Day [356].
Uma vez que muitos navegadores utilizam o mesmo motor de desenvolvimento, no
incomum encontrar inmeras vulnerabilidades em navegadores distintos [127], dando
margens ao usurio ser suscetvel a esta vulnerabilidade.
Outra forma de explorao deste vetor ocorre quando uma ferramenta externa
adicionada ao navegador e traz consigo alguma vulnerabilidade, que consequentemente
compromete a segurana do navegador. Essa ocorrncia muito comum em Extenses
ou Plug-ins, o fato que so ferramentas desenvolvidas por terceiros, e a segurana
do navegador fica em cheque devido alguma negligencia no desenvolvimento dessas
ferramentas adicionais [355].
Vetor 5: Ataques de Domnio Cruzado
Este vetor resulta em ataques que so executados de fora dos domnios da aplicao que
recebeu o ataque. Casos comuns so originados de servios externos maliciosos que
se aproveitam da confiana obtida de um usurio ou aplicao [384]. Existem milhares
de APIs disponveis para serem consumidas, podendo tambm construir combinaes
15
de outras APIs, das quais so conhecidas como Mashups [194]. Estas interfaces tm
srios problemas de padronizao [339], isto dificulta aplicar uma poltica de segurana
consistente, e a consequncia disto que muitas vezes o controle de acesso, autenticao,
tratamento das entradas, trafego de dados criptografado, monitoramento das atividades,
entre outros aspectos de segurana que so negligenciados, oferecendo grande risco ao
usurio de navegador web. Foi mapeado como o quarto vetor mais explorado, com 110
publicaes relacionadas.
2.8.2
Resultado Obtido da QP 2
Nesta seo foram identificados os Ataques envolvidos em cada vetor da QP1, onde se
fez uma classificao de forma mais granular a fim obter maior visibilidade dos resultados da pesquisa agrupados entre os cinco Vetores e os nove Ataques correspondentes.
Alguns Ataques podem ocorrer em um ou mais vetores, portanto tambm so passiveis
a interseces, conforme a distribuio ilustrada na Figura 2.4. Com o resultado do
grfico da Figura 2.4 podem ser observados os Ataques que mais trabalham em conjunto
com outros, podendo-se concluir que algo bastante muito comum de acontecer. Alm
disso, pode-se concluir que as pesquisas que relatam sobre o Ataque relacionado ao vetor
de Fraca Proteo aos Dados frequentemente tambm relatam sobre outros vetores e
consequentemente outras ameaas distintas, conFigurando o cenrio de Ataques que
atuam em conjunto. Nesta seo tambm sero apresentados os ataques que envolvem
os vetores mapeados, descrevendo seu respectivo vetor, definio e impactos. Estes
resultados seguem a seguinte estrutura:
16
17
essa informao em sua base de dados. Essa informao persistida ser posteriormente
requisitada por outro usurio da mesma aplicao, que ir se tornar uma vitima do ataque.
XSS Refletido: Esse cenrio ocorre quando um usurio mal intencionado altera os
parmetros de uma URL com cdigos maliciosos, e encaminha para um usurio vitima,
que este ao tentar abrir o endereo, far com que seu navegador interprete os cdigos
injetados via parmetros [48]. Muitas vezes essas aes tambm podem utilizam tcnicas
de embaralhamento [295] na URL para dificultar a deteco da alterao nos parmetros,
conforme na Figura 2.6.
A Figura 2.6 demonstra uma aplicao que no realiza uma validao nos valores
atribudos ao parmetro "p"em sua seo de busca por termos ou palavras chaves que so
fornecidos pelo usurio e processados na pagina seguinte. Neste contexto um usurio
mal intencionado pode explorar essa vulnerabilidade inserindo cdigo JS ou HTML neste
parmetro, resultando em um resultado desastroso para a aplicao na pgina seguinte.
XSS Baseado em DOM: DOM o acrnimo para Document Object Model, que
um padro utilizado para construir elementos HTML atravs de javascript. Quando se diz
que um XSS baseado em DOM se caracteriza por modificar das propriedades destes
elementos sem a necessidade de realizar requisies no servidor, j que a modificao
pode ser feita diretamente no navegador do usurio [291]
No exemplo da Tabela 2.2, o cdigo HTML em questo faz o navegador renderizar
18
uma tela onde fornece ao usurio um menu suspenso que representa o conjunto de idiomas
disponvel na aplicao, disponibilizando ao usurio a opo que define o idioma padro
na pgina. O menu suspenso em questo est sendo criado pela aplicao atravs de DOM,
no qual espera em seu parmetro um contedo texto que represente o idioma desejado pelo
usurio, quando na verdade um usurio mal intencionado pode simplesmente modificar o
parmetro para que no momento que o elemento DOM seja renderizado, ir executar o
contedo nocivo passado via parmetro pelo mal intencionado [291].
Principais Tcnicas de Ataque
Nesta seo sero descritas as principais tcnicas utilizadas nos ataques de XSS.
Forma Direta: So ataques que utilizam tcnicas mais comuns, ou quando o cdigo
injetado enviado sem codificao. Geralmente estas aes so minimizadas com a
utilizao de filtros [262]. Basicamente apresentam-se nas seguintes formas:
a) Explorando falhas em tratamento de Escape.: So cdigos injetados em uma
aplicao que no faz um devido tratamento de escape nas Strings a serem exibidas ao
usurio. Atualmente muitos frameworks de web por padro ativam esse este tipo de
filtragem nas sadas de String. Na tabela 2.3 ilustrada a funcionalidade desta tcnica.
String html = b>Teste</b>"
Aplicando a tcnica de Escape a String resulta em: <>Teste</>
Ao ser renderizada, ser exibido ao usurio o seguinte texto: <b>Teste</b>
19
20
que sero utilizados em uma determinada pgina, garantindo assim legitimidade de seu
contedo. Apesar de diversas medidas de preveno do navegador, ainda se faz ineficiente
as tcnicas de proteo nativa dos navegadores, seja por tcnicas que se baseiam em
evaso de filtros ou por falhas nas configuraes da CSP [288].
Principais Tcnicas de Defesa
Analise Esttica: A Anlise Esttica de Cdigo consiste em realizar uma auditoria
no cdigo, sendo necessria a intercepo da requisio antes do processo de resposta.
uma tcnica muito alinhada aos Padres de Comportamento [396][202][238].
Padres de Comportamento: Refere-se s prevenes relacionadas ao cdigo JS
com o objetivo de detectar comportamentos suspeitos. As medidas aplicadas so anlises
de cdigos pr-definidos combinados a polticas de listas negras ou brancas, baseados em
expresso regular [77][374][172].
Proxy Reverso: Uma camada adicional de um terceiro (provedor da soluo de
segurana) que atravs de separao ou isolamento dos dados no qual ir interceptar as
requisies e aplicar um conjunto de outras tcnicas [223][201].
Proteo de Parmetros ou Atributos: So medidas que visam ocultar informaes
sensveis no cabealho ou formulrios, a fim de impedir a intercepo por um atacante,
o que caracteriza no ataque Man-in-The-Middle. Outra medida a analise dos valores
passados em elementos, como HTML, nos quais os atacantes manipulam a fim de escapar
XSS [329][351].
Preveno Evaso de Filtros: So tcnicas que analisam a utilizao de codificaes para escapar entradas com comandos JS [378][203].
Dynamic Data Tainting: Tambm conhecida como Data Flow Analysis, uma
analise diferente das abordagens focadas em falhas no lado do navegador. Atravs dela
possvel monitorar um cdigo JS diretamente no mecanismo de renderizao do JS,
analisando sua semntica em tempo de execuo, possibilitando assim interromper ou
continuar um processamento [266]. uma tcnica bastante utilizada em conjunto com
Anlise esttica e padro de comportamento.
Ataque 2: Injeo SQL (SQLi) - A2
Vetor Relacionado
Vetor 1: Injeo de Cdigos.
Definio Seguindo a reviso sistemtica desta pesquisa, esta ameaa foi identificada
como a terceira mais explorada na literatura, com 160 publicaes, e segundo [292] o
ataque com maior criticidade em aplicaes web devido ao alto impacto nos negcios.
21
22
usurios de navegador web. Alm disso, o atacante pode realizar um chamado by-pass
ou quebra de acesso, onde este adquire privilgios indevidos, podendo realizar acesso,
excluso, adulterao ou roubo de informaes sigilosas dos usurios.
Principais Tcnicas de Defesa
As tcnicas utilizadas so bastante similares as aplicadas para XSS, conforme em
[329][378][203]. Tambm faz uso da Anlise Esttica, conforme em [165][131][213]
Ataque 3: Clickjacking - A3
Vetor Relacionado
Vetor 2: Fraudes.
Definio
Conforme os resultados desta reviso sistemtica, o Clickjacking foi identificado
como o ataque menos explorado na literatura, ao contexto do tema desta pesquisa foram
mapeadas 31 publicaes relacionadas. Segundo [287], Clickjacking, que tambm
conhecido na literatura por UI Redressing, um ataque que sequestra o clique do mouse,
mais precisamente quando o usurio deseja clicar em algum link ou boto disponvel na
pagina, fazendo com que o usurio acredite que realmente clicou no boto, quando na
verdade h elementos HTML sobrepondo o alvo, muitas vezes DIV ou IFRAME.
O Clickjacking apresenta-se como uma ou mltiplas camadas transparentes ou opacas
que se sobrepem com o objetivo de enganar o usurio que tinha a inteno de clicar em
um link ou boto sobreposto [257], conforme ilustrado na Figura 2.8.
Na Figura 2.8 ilustrado um cenrio onde uma pagina introduz um elemento DIV
que sobrepem um link. O DIV sobreposto possui atributos definidos para que o mesmo
fique transparente e com posicionamento flutuante, fazendo com que o usurio no o
23
enxergue e que fique por cima do link, do qual ser visvel e o usurio quando tentar
clica-lo, na verdade estar clicando no DIV transparente, do qual ir disparar um evento
que pode redirecionar o usurio para outra pgina. Outra tcnica especfica que to
prevalente que tambm tem seu prprio termo cunhado, conhecido como "Likejacking",
que possui o mesmo mecanismo de um Clickjacking, porem focado contra o Facebook,
onde engana um usurio sobrepondo o boto "Curtir", sequestrando seu click, fazendo
com que pginas ou imagens sejam curtidas sem seu consentimento [364].
Tambm existe uma variao do Clickjacking, denominada Strokejacking, que ao
invs do click, este captura o evento das teclas do teclado. Devido ao pequeno numero de
publicaes encontradas na literatura sobre este ataque, este estudo considerou Strokejacking e Clickjacking como um mesmo ataque [269]. Na Figura 2.9 ilustrada outra
utilizao para sequestrar informaes sigilosas como credencias de acesso, com base
nas tcnicas j apresentadas.
No cenrio ilustrado na Figura 2.9, o usurio informa suas credencias de acesso sem
desconfiar que na verdade existem campos sobrepondo os campos visveis, estes campos
ocultos podem ser submetidos em formulrios ou frames cruzados, tcnica conhecida
como Double Framing [286].
Principais Tcnicas de Ataque
a) Sobreposio de Elementos em Tela: Essa sobreposio possvel atravs de
recursos do prprio HTML como o estado flutuante do objeto e a sua opacidade [257].
b) Manipulao em Frames: Modificaes no atributo parente.location.href, reproduzindo um Double Framing [286][216].
Consequncias
Na prtica, o Clickjacking uma fraude. O atacante faz com que o usurio clique
em um determinado recurso na pagina, onde imagina que tenha um determinado comportamento, quando na verdade seu clique foi em outro recurso, desta forma o atacante
24
"sequestra"este clique para outros fins. Algum dos objetivos do furto do clique redirecionar o usurio vitima de um ambiente legitimo para outro hostil onde possa extrair seus
dados sensveis, que uma ao muito intrnseca ao redirecionamento invlido. Clickjacking atualmente est muito comum em redes sociais, uma vez que a usabilidade destes
ambientes direcionada ao simples clique das coisas, como botes curtir ou compartilhar.
Mas nada impede que esta tcnica tambm seja usada para sequestrar cliques de um
teclado digital, que so muitas vezes utilizados em internet banking [186][239].
Principais Tcnicas de Defesa
a) CSP: Algumas medidas de preveno adotadas pelos navegadores atuais, assim
como em XSS, tambm utiliza a Poltica de Segurana de Contedo [268].
b) Preveno em Frames: Utilizao das opes do Cabealho HTTP X-Frame, impedindo modificaes nos atributos de um Frame e tcnicas de Frame Busting [71][162].
Ataque 4: Redirecionamentos e Encaminhamentos Invlidos - A4
Vetor Relacionado
Vetor 2: Fraudes.
Definio
A reviso sistemtica mapeou-a como a quarta ameaa mais explorada na literatura,
com 144 publicaes relacionadas. Neste contexto esto s preocupaes relacionadas
ao redirecionamento do usurio durante a navegao, Segundo [292], as aplicaes web
frequentemente redirecionam e encaminham usurios para outras pginas e no usam
uma validao adequada quanto aos parmetros de redirecionamento de seu domnio,
fazendo a vtima achar que uma determinada URL ir direciona-la ao respectivo domnio
confivel, quando na verdade so encaminhados para sites forjados e no confiveis.
Este contexto tambm est associado ao usurio ser enganado para cair em sites forjados, j que na prtica tudo uma fraude, e os objetivos so baseados em uma engenharia
social da qual redireciona o usurio para um ambiente hostil, que representa visualmente
muito fielmente o site do servio oficial, mas que na verdade este ir intercepta os dados
sensveis para um golpista, fazendo o usurio pensar que suas informaes esto sendo
enviada para o servio legtimo. Esta tcnica de ataque denominada Phishing, que
segundo [6], Phishing, Phishing-scam ou Phishing/scam, o tipo de fraude por meio da
qual um golpista tenta obter dados pessoais e financeiros de um usurio, pela utilizao
combinada de meios tcnicos e engenharia social, conforme a Figura 2.10.
Na Figura 2.10 ilustrado um exemplo de um site forjado com intuito de roubar os
dados do usurio.
25
26
BR, NIC.br. Porm, uma medida ineficiente visto que poucos usurios detectam estas
minucias no endereo, por muitas vezes no precisar digitar o endereo no navegador, j
que os principais vetores so disseminados atravs de mensagens de e-mail, e o alvo em
potencial so usurios de comercio eletrnico, redes sociais, companhias areas, e algum
tipo de recadastramento que solicita dados sensveis.
b) Controle de Phishing baseado em Lista Branca ou Negra: Muito dos navegadores
atuais tem a politica de proteger o usurio baseado em uma Lista Negra atualizada
periodicamente, mas a tarefa bastante rdua devido a grande velocidade e demanda
da atuao dos golpistas. Prova disso conforme o Phishing da Figura A.1, onde foi
registrado por este estudo que no dia 01/10/2013, as 16:15, este Phishing ainda era
possvel de ser executado por qualquer navegador popular, e todos atualizados, a exemplo
do Google Chrome que nesta data e horrio estava com suas atualizaes em dia, na
verso 30.0.1599.66m e mesmo assim foi possvel acessar o contedo da Figura A.1.
Seguindo a mesma proposta da proteo nativa dos Navegadores, existem solues de
terceiros que visam proteger a navegao do usurio em tempo real, conforme em [361]
[306] [51] [411] [206] [265]. Para o caso das modificaes em parmetros de URL
legitimas, as aplicaes podem utilizar uma politica de Lista Branca para endereos
validos em seus redirecionamentos.
Ataque 5: Complementos Maliciosos - A5
Vetor Relacionado
Vetor 2: Fraudes.
Definio
Com base nesta reviso sistemtica, com apenas 27 publicaes, este ataque foi
considerado o menos explorado na literatura. Este ataque representa outro vis da
Fraude, e ocorre quando o usurio redirecionado para um ambiente onde promete aos
seus visitantes ferramentas para otimizar o seu navegador ou auxiliar na reproduo
de algum formato de mdia atravs dele, mas que na verdade trata-se de um Trojan
ou cavalo de Tria como no caso em [183], que segundo [5] um programa que atua
como hospedeiro, e embora em alguns casos ainda execute as funes para as quais foi
aparentemente projetado, seus principais objetivos so outros, normalmente maliciosas,
como o monitoramento do trafego ou coleta de dados, sem o consentimento e devida
autorizao do usurio.
Principais Tcnicas de Ataque
a) Atravs de Plug-ins: Um tipo de plug-in muito explorado neste contexto so os
27
28
criado e mantido por um determinado autor. O grande problema que este autor pode
estar no anonimato, visto que qualquer desenvolvedor pode criar seu ActiveX e solicitar o
certificado. Uma vez que o ActiveX malicioso autorizado para execuo, todos os dados
do navegador, como tambm o computador do usurio podem ser comprometidos [259].
Algumas publicaes na literatura propem o monitoramento de plug-ins instalados no
navegador em tempo real, como em [128][159][245].
b) Politicas de restries as Extenses: Recentemente os desenvolvedores dos navegadores mais populares adotaram uma nova politica, da qual restringe que o navegador
instale apenas extenses mantidas em seus prprios domnios, no caso do Google Chrome, o mesmo no permite que extenses fora da Chrome Store9 sejam instaladas em
seu navegador [365]. Um bom exemplo foi na ocasio onde um grupo de criminosos
conseguiu publicar extenses maliciosas na Chrome Store [301].
Ataque 6: Exposio de Dados Sensveis - A6
Vetor Relacionado
Vetor 3: Fraca Proteo aos Dados.
Definio
Com base desta pesquisa, a Exposio de Dados Sensveis foi identificada como a
ameaa mais explorada de toda a literatura, com 325 publicaes registradas. Este ataque
9 Chrome
29
Consequncias
Alguns dos grandes incidentes durante os anos foi o caso da empresa Adobe em
outubro de 2013, onde sua base de dados foi invadida, comprometendo mais de 130
milhes de senhas de usurios [316]. Outro caso da Target Corporation, a segunda maior
rede varejista da Amrica, e hackers conseguiram explorar brechas de segurana das
quais acarretaram em um roubo de mais de 40 milhes de cartes de crdito [153][362].
Principais Tcnicas de Defesa
a) Trfego seguro para dado sensvel: Algumas medidas de segurana como O HTTPS
e a criptografia so bastante utilizadas em ambientes com trafego de dados sensveis,
o grande problema que nem sempre so aplicadas nas aplicaes que manipulam
dados sensveis. Algumas publicaes na literatura direcionam seus estudos baseado nas
medidas aplicadas pelo HTTPS, a saber: [133][188][92].
30
31
32
33
34
[386], responsvel por inibir que uma mesma pgina carregue contedos de domnios
distintos, resultando em restries em ambientes que utilizam o objeto XMLHttpRequest
(XHR) atravs de JavaScript (JS).
Principais Tcnicas de Ataque
a) Explorao atravs de XHR: Um domnio externo injeta XSS em um domnio alvo,
essa tcnica tambm conhecida como Cross-Site Script Inclusion, XSSI [357]. Outro
ataque tambm explorao a PMO o Cross Site History Manipulation (XSHM) [282]
que possibilita uma manipulao no histrico do navegador, violando a privacidade do
usurio.
b) API ou Mashups no confiveis: Outra explorao atravs de APIs ou Mashups
inseguros, fato muito emergente na atualidade. Com isso, o resultado do servio pode ser
originado de fontes no confiveis, que possam explorar e executar ataques como XSS
ou algum tipo de fraude [79].
c) Explorao de Cookies: Um dos ataques relacionados a esta tcnica o Cookie
Tossing, que se define na explorao de dados que so dados armazenado e enviados
pelo navegador atravs de uma requisio [150][308], esses dados so cookies, que so
chamados de CookieHTTP [238]. Este conjunto de cookies por padro no so acessveis
via script, porem so passiveis ao acesso por seguirem as regras do escopo de cookie,
podendo ser acessados atravs de uma requisio.
Consequncias
As falhas em PMO basicamente proporcionam vetores para diversos ataques j
conhecidos. Conforme na Tabela A.1, ilustra uma quebrar da Poltica de Mesma Origem,
utilizando convenes como o jQuery , JSONP e o YQL . Para explorar um ataque de
XSS, atravs de HTML baseado em Hex encoding, conforme a Tabela A.2, do qual reflete
uma interpretao do navegador que resulta em um ataque ao usurio-final, ilustrado na
Figura A.2.
Principais Tcnicas de Defesa
a) CORS: Alguns padres como o Cross-Origin Resource Sharing (CORS) [385] so
alternativas que contornam as restries da PMO, e que ao mesmo tempo adotam prticas
que no comprometem a segurana. Porm, existem convenes baseadas em JavaScript,
como JSONP ou o WebSocket do HTML5, estes so capazes de quebrar a PMO, sem
necessariamente alavancar prticas voltadas para as questes de segurana [359][217].
b) Utilizao de Cabealhos HTTP: Parmetros como Origin para prevenir requisies
de domnios no validados [189][107].
35
Consideraes Finais
E concludo a QP2, na Figura 2.14 ilustrada a projeo das ameaas durante os anos
registrados na literatura, registrando as publicaes desde 1994 at o primeiro semestre
de 2013.
Com base nos dados distribudos na Figura 2.14, perceptvel que ao longo dos
anos todos os Ataques esto sendo cada vez mais explorados, refletindo o ritmo de
crescimento das preocupaes emergentes quanto aos impactos de negcio. Em 1994
consta o primeiro registro de uma publicao na literatura [83], na ocasio o artigo
trata a respeito de aspectos da Exposio de Dados Sensveis, Ataque do qual ao longo
dos anos passou a ser bastante desenvolvido e hoje detm como o mais explorado nas
fontes literrias, uma das justificativas para este fato que foi bastante comum ocorrer
de uma publicao relat-lo em combinao com outros ataques, conforme observado
anteriormente na Figura 2.4.
Na mesma linha, Injeo de Cdigo apresentou-se como o tipo de vetor mais explorado
na literatura, reflexo do expressivo numero de publicaes de XSS e SQLi, ocupando
respectivamente o segundo e terceiro lugar na lista de Ataques mais explorados, segundo
os resultados desta reviso sistemtica. No to obstante, as preocupaes referentes
aos Redirecionamentos e Encaminhamentos Invlidos e Falhas em Polticas de Mesma
Origem tiveram nmeros expressivos, ao contrrio das preocupaes com os ataques de
Clickjacking e Complemento Maliciosos, este ultimo classificado como o Ataque menos
explorado, com apenas 27 publicaes.
E por fim, o CSRF e Utilizao de Componentes Vulnerveis Conhecidos podem
ser classificados como Ataques intermedirios em respeito ao interesse dos pesquisados,
36
2.8.3
Resultado Obtido da QP 3
37
38
pem uma triagem nas manipulaes maliciosas nos elementos HTML atravs do atributo
innerHTML. E por fim, Kirdaet al [223] apresentam o Noxes, uma soluo que visa
mitigar ataques por meio de anlise esttica baseada em uma heurstica que cobre diversos
tipos de XSS.
Proteo contra A2: Shahriar et al [325] propem uma proteo de quatro mtricas
de entropia condicional, na qual avaliam a proposta. As mtricas analisam comportamentos da aplicao, como mensagens de erro e ausncia de sanitizao nas entradas em
formulrios.
Proteo contra A3: Lundeen & Alves-Foss [239] propem defesas baseadas na
anlise do contexto visual, identificando sobreposies e opacidades dos elementos
considerados como suspeitos. Balduzzi et et al [71] apresentam solues quanto ao
controle e manipulaes de frames na pgina, alm de comportamentos de elementos
flutuantes.
Proteo contra A4: No trabalho de Yue & Wang [391] proposto um mtodo de
deteco e classificao de pginas maliciosas. Eshete et al [124] estendem a ideia para a
anlise de Phishing, como tambm o monitoramento e preveno para possveis tcnicas
de Malversiting.
Proteo contra A5: Carlini et al [387] apresentam um mecanismo de avaliao
de extenses para Google Chrome, que consiste em analisar as polticas de privilgio,
isolamento e permisso definidas no gerenciador de Extenses. Ford et al [128] propem
uma proteo que monitora downloads e acessos possveis malwares baseados em Flash
nas pginas web.
Proteo contra A6: West & Pulimood [401] propem uma anlise de ameaas e
prevenes na utilizao de recursos do HTML5 como o WebStorage.Toubiana et al
[369] analisam as questes de privacidade quanto aos cookies dos servios da Google,
visando aspectos de persistncia e identificao. Fung & Cheung [133] apresentam uma
camada de armazenamento client-side que restringe o acesso exclusivamente baseado
em em HTTPS. E por fim, Dong et al [119] propem deteces de ameaas e protees
contra a exposio de dados sensveis utilizando um mecanismo denominado Cryptons.
Proteo contra A7: Walden et al [389] abordam os impactos das vulnerabilidades
existentes em plug-ins, considerando o poder de propagao dos mesmos. Schmitt et
al [315] propem protees quanto leitura de arquivos PDF com ataques injetados
baseados em JS.
Proteo contra A8: Ryck et al [108] proporcionam uma abordagem sobre defesas de
CSRF no lado cliente, baseando-se nas permisses definidas em parmetros do cabealho
39
HTTP. Maes et al [241] propem uma poltica de proteo baseada em uma anlise da
troca de Tokens entre servidor e cliente.
Proteo contra A9: Bhargavan et al [243] apresentam uma proposta de defesa das
falhas, quanto s definies de permisses de domnios cruzados, por meio dos parmetros
de cabealho HTTP sobre um mecanismo que estende o JS. Wang et al [392] propem
um proxy para permisses de requisies remotas cruzadas sobre o contexto da aplicao.
Ferramentas de proteo integradas ao navegador
Nesta seo so apresentadas as principais ferramentas selecionadas no estudo que
possuem seus objetivos correlatos e atuam diretamente nos navegadores mais populares.
Conforme listado na Tabela 2.5, so apresentadas aquelas selecionadas que atendem
os critrios previstos. Estes so baseados em considerar as ferramentas mais atuantes
durante os ltimos 12 meses e que sejam disponibilizadas gratuitamente. O resultado da
triagem resultou em 23 ferramentas. Foi constatado que o Firefox o navegador com
um maior nmero disponvel de opes, totalizando em 13. Em seguida o Chrome com
10 ferramentas selecionadas. E por fim, nenhuma foi contabilizada para o navegador IE,
mostrando uma grande carncia em relao disponibilidade desse tipo de ferramenta.
Tabela 2.5: Ferramentas disponveis e Ataques relacionados
Extenses
A1
A2
A3
A4
A5
A6
A7
A8
A9
Navegador
Atualizao
Chrome[8]
16/11/2013
Anti-Phishing
Firefox[7]
20/06/2013
Clickjacking Reveal
Firefox[12]
19/11/2013
Clickjacking Test
Chrome[13]
05/08/2013
CSRF Finder
Firefox[14]
06/08/2013
ImmuniWeb Self-Fuzzer
Firefox[19]
21/08/2013
Netcraft Extension
Chrome[22]
e Firefox[21]
17/11/2013 e
07/10/2013
Firefox[23]
08/11/2013
Request Policy
Firefox[26]
30/06/2013
Right ClickXSS
Firefox[27]
19/06/2013
Safe Preview
Chrome[28]
e Firefox[29]
14/11/2013 e
23/06/2013
Script Safe
Chrome[30]
02/07/2013
40
SQL Inject Me
Firefox[31]
02/10/2013
Tamper Monkey
Chrome[32]
11/11/2013
Toogle Cookies
Firefox[34]
30/06/2013
Chrome[38]
e Firefox[39]
18/11/2013 e
18/11/2013
Websecurify
Chrome[40]
04/11/2013
XSS chef
Chrome[42]
20/06/2013
XSS Me
Firefox[44]
11/04/2012
Chrome[45]
12/04/2012
2.9
Consideraes Finais
41
3
Implementao da Proposta
A soluo proposta nesta dissertao, denominada Aegis1 , apresenta-se como uma soluo
leve e acoplvel aos navegadores web mais populares da atualidade. Tem o intuito de
proteger a navegao do usurio, objetivando minimizar as aes dos principais ataques
mencionados no Captulo 2. Nas prximas sees so apresentados, em detalhes, os
seguintes aspectos do desenvolvimento da ferramenta proposta nesta dissertao, a saber:
(i) Decises de Projeto, (ii) Arquitetura e (iii) Principais Funcionalidades. Todas as
concluses desses aspectos tiveram base nos resultados obtidos no Captulo 2.
3.1
Decises de Projeto
Para uma soluo que visa apoiar o navegador proporcionando uma navegao segura
para o usurio, algumas decises foram levantadas, considerando o pblico alvo, cenrio
de atuao e tipo de ferramenta.
3.1.1
O pblico alvo o usurio de navegador web que carece de uma soluo nica que possa
minimizar os principais ataques que violam seus dados sensveis. A ferramenta precisa
interagir o mximo possvel com o usurio e sua navegao pela web, portanto, o cenrio
ideal da proposta est nos navegadores mais populares.
1O
nome Aegis vem da mitologia grega, era o escudo revestido com a pele da Medusa e pertencia
deusa Atena.
42
3.1.2
Escolhidos o pblico alvo e cenrio de atuao, o prximo passo foi analisar o tipo de
ferramenta a ser construda. Foram observados trs possveis caminhos para o desenvolvimento da proposta:
Desenvolver um novo navegador voltado para as Questes de Segurana
Esta opo foi imediatamente descartada. Primeiramente pela complexidade, seria
uma tarefa muito custosa ter que manter regularmente um navegador atualizado, sem
contar com o esforo que seria desprendido em outras funcionalidades e preocupaes que
fogem do escopo desta pesquisa. O outro fator seria da aceitao, com tantos navegadores
disponveis na atualidade, o mercado bastante competitivo. E por fim, este caminho
cairia em contradio com um dos requisitos da proposta desta dissertao, que seria
proporcionar segurana s opes mais populares de navegao na web.
Desenvolver um aplicativo independente e instalvel no sistema operacional
Esta opo torna-se interessante quando se deseja proteger um usurio independente
do aplicativo em uso, seja um navegador, seja um cliente de e-mail. Porm, ela carece de
maior integrao e controle de contedo a ser trafegado entre o usurio e o Navegador.
Um exemplo seria possibilitar uma anlise do contedo de resposta de uma requisio
antes que a mesma fosse renderizada no navegador, inibindo assim ao de diversos
ataques que atuam neste contexto.
Desenvolver um aplicativo interativo
Aplicativos interativos so aplicaes leves que podem oferecer certas variedades de
recursos. Tm um comportamento parecido com um complemento do navegador, porm,
a grande diferena que uma aplicao dessa natureza tem uma interao mais limitada
com o usurio quanto a sua atividade e monitoramento, uma de suas caractersticas, que
justifica essa concluso o fato do usurio sempre precisar iniciar o aplicativo quando
o navegador for inicializado. Isso dificulta um eficiente autogerenciamento durante a
navegao do usurio [24].
Desenvolver um Complemento para um navegador existente
Esta opo foi identificada como a mais adequada para a implementao da proposta.
Primeiramente pelo fato que os navegadores mais populares, se predispem a aceitar
ferramentas desta natureza, oferecendo suporte e manuteno ao desenvolvimento, alm
de conceder certos privilgios sobre o contedo transitado pelo usurio, e at mesmo controle de certas funcionalidades do Navegador. Conforme j especificado nesta dissertao,
um Complemento pode se caracterizar como uma Extenso ou um Plug-in.
Dentre as opes, a Extenso a mais vivel para a proposta, por ser a mais adequada
43
3.2
Arquitetura do Aegis
Nesta seo so descritos os aspectos arquiteturais da proposta, apresentando os componentes que fomentam as principais funcionalidades.
3.2.1
A Extenso Aegis
A extenso Aegis, internamente, possui a arquitetura de uma Extenso padro de navegador que se comunica com outros recursos externos. Nesta seo sero apresentados os
aspectos particulares e adicionais de suas funcionalidades, considerando seu cenrio de
atuao, conforme a estrutura interna da extenso ilustrada na Figura 3.1. Por questes didticas, as nomenclaturas e descries quanto aos componentes e APIs internas utilizadas
pelas extenses tero como base a documentao das Extenses para Google Chrome,
mas cabe a ressalva que os conceitos seguem um padro onipresente nos navegadores
mais populares.
Todo navegador web possui um recurso chamado Interpretador, que recebe o contedo
da web e o interpreta em formato de leitura padro. Em seguida, antes de ser renderizado
ao usurio, o Aegis ir intervir neste contedo, composto por HTML, CSS e JS, que
pode ter sido manipulado ou criado por um atacante, podendo o mesmo ser abortado,
no caso de fraudes ou vulnerabilidades de um determinado componente. Outra medida
de preveno o bloqueio de recursos do navegador, que tem por base uma poltica de
confiana quanto ao contedo em sites com comportamentos suspeitos. Apresentando a
estrutura externa da extenso Aegis, conforme na Figura 3.2, ilustrando a interface da
Extenso e as funcionalidades que podem ser ativadas pelo usurio a qualquer momento
em sua navegao.
O boto "Atualizar", ilustrado na Figura 3.2, serve para o usurio checar atualizaes
da extenso a qualquer momento. O boto "denunciar"serve para o usurio colaborar
informando fraudes, sites vulnerveis ou vulnerabilidades existentes. Adicionalmente
todas as opes podem ser acionadas por meio do menu no boto direito do mouse. Na
prxima seo descrita, em detalhes, as funcionalidades dos Nveis de Confiana.
44
Nvel de Confiana
Relacionado ao nvel de confiana que a extenso considera um determinado site. A
avaliao realizada de acordo com os resultados das anlises dos filtros das Ameaas,
uma vez identificado algum comportamento suspeito, o nvel de confiana reduzido. A
confiana corresponde liberao de recursos do navegador que podem ser desabilitados
quando o nvel de confiana reduzido. Isso garante que a requisio ser abortada
em ltimo caso, ocorrendo apenas quando um determinado recurso no for bloqueado
por alguma interferncia do navegador ou quando o site continue perigoso mesmo
com o nvel de confiana reduzido. Essa avaliao se faz possvel atravs da API
chrome.contentSettings, que possibilita um gerenciamento das configuraes e controle
dos recursos de contedo.
Recursos de Contedo
a) Requisies AJAX;
b) Cookies;
c) Imagens e CSS;
d) JavaScript;
e) Plug-ins;
f) Pop-ups;
45
46
47
48
49
3.2.2
Biblioteca Prpria
O servio do Aegis dispe de uma biblioteca prpria, que oferece solues de preveno
para Ataques que no esto cobertos por bibliotecas de terceiros, como os Ataques
relacionados ao A3, A4 e A5.
Bibliotecas Open Source
A OWASP Enterprise Security API, tambm conhecida como OWASP ESAPI2 , uma
documentao desenvolvida pela OWASP que traz uma srie de bibliotecas voltadas
para linguagens em ambientes Server-side, de cdigo aberto, alm de um conjunto de
boas prticas no desenvolvimento seguro. Apesar de ser Server-side, alguns de seus
2 OWASP
ESAPI: https://code.google.com/p/owasp-esapi-java/
50
conceitos e tcnicas foram adaptadas para uma verso Client-side intitulada JavaScriptbased ESAPI[15]. At o presente momento, esta biblioteca encontra-se em fase alfa e sua
ltima verso foi liberada em 2011.
Para atender os requisitos desse estudo algumas funcionalidades precisaram ser incorporadas, sendo necessrio realizar algumas modificaes e adies de funcionalidades
nesta biblioteca. Alm disso, por ser a biblioteca de cdigo aberto facilitou o processo de
adaptao, garantindo apoio plenitude dos requisitos. A documentao da biblioteca do
OWASP ESAPI padro apoiada por muitos especialistas, que auxiliam em constantes
modificaes e melhorias, esse um dos motivos para as atualizaes peridicas das
regras dos filtros do Aegis. Esse estudo tem o objetivo de disponibilizar essa adaptao
da biblioteca em JS para que possa ser incorporada ao projeto Client-side do ESAPI.
Servios Externos
Os servios externos so funcionalidades disponveis online e gratuitas que interagem
em tempo real com o Servio Aegis, provendo recursos que auxiliam nos objetivos a
serem alcanados com base em entidades de excelncia em solues relacionados aos
problemas em questo.
Servio Unshort.me API
O Unshort.me3 um servio gratuito que descobre a URL real de uma URL curta,
disponibilizando o seu servio por meio de uma API em REST de fcil utilizao e rpida
resposta nas requisies.
Servio VirusTotal API
O VirusTotal4 um servio gratuito que contempla mais de 40 servios de antivrus
online diferentes, proporcionando maior preciso nas varreduras de diversos tipos de
Malwares e uma rica anlise de URL suspeitas. Seu servio tambm disponvel em
REST e internacionalizvel em diversos idiomas, incluindo o portugus.
Servio SQLMap API
O SQLMap API5 um servio disponvel tambm em REST que analisa um site e
verifica se o mesmo est vulnervel ou no SQLi. O servio ainda encontra-se em fase
experimental, mas j possui alguns resultados satisfatrios.
Servio CVE Details
CVE um acrnimo para Common Vulnerabilities and Explosures, apresentado no
3 Unshort.me:
http://www.unshort.me
https://www.virustotal.com
5 SQLMap API: https://github.com/sqlmapproject/sqlmap
4 VirusTotal:
51
3.3
Nesta seo so descritos os filtros que visam minimizar as nove ameaas mais exploradas
quanto violao de dados sensveis do usurio de navegador web. As principais medidas
tomadas pelos filtros, para alcanarem seus objetivos, bloquear os recursos do navegador
ou aplicar aes preventivas quando o contedo em questo possui algum comportamento
considerado hostil ao usurio. Um ponto positivo, por ser uma defesa client-side, que o
usurio pode ter uma interao maior com a ferramenta, como por exemplo, ele poder
indicar que um determinado site enquadra-se em uma regra de exceo, representado por
uma lista branca para cada filtro.
Essa lista serve para indicar para a ferramenta, que apesar do site em questo ter um
comportamento suspeito, o mesmo considerado confivel pelo usurio, resolvendo assim
os problemas de falsos positivos. Por questes didticas, sero apresentados fluxogramas
que representam a funcionalidade de cada filtro especfico, sendo importante frisar que,
apesar das diferenas no desenvolvimento entre os trs navegadores mais populares,
6 CVE
52
3.3.1
53
Caso a anlise esttica no encontre elementos suspeitos, o prximo passo ser analisar o
contedo em busca de padres de comportamento, conforme descrito anteriormente no
Captulo 2, como utilizao suspeita de expresses regulares ou mesmo evases de filtro.
Por fim, o contedo ser submetido para uma nova anlise, esta baseada em uma triagem
quanto aos valores atribudos em atributos de elementos declarados na pgina.
3.3.2
54
55
o site como No Vulnervel. Uma vez sem falhas, o site se mantm protegido por um
longo tempo, portanto a classificao por lista branca se faz eficaz. Mas, por questes de
preveno, o Servio do Aegis ir reavaliar periodicamente mediante primeiro fluxo, os
sites considerados como No Vulnerveis em determinados perodos estratgicos, como
em horrios mais ociosos. importante ressaltar que todos os sites que possuam alguma
caracterstica bsica do SQLi, como parmetros em GET ou POST, a Extenso ir sugerir
ao usurio uma anlise de SQLi, essa,quando acatada, ir executar o primeiro fluxo. Um
pedido recusado pelo usurio faz com que a ferramenta entenda que se trata de um site
confivel, sendo assim adicionado lista de excees.
Adicionalmente, o filtro de SQLi tambm realiza uma checagem de vulnerabilidades
em aplicaes que utilizam o WebSQL. A premissa bsica de, por meio de expresso
regular, observar sintaxes SQL que estejam utilizando implementaes que previnam
SQLi nesses cenrios, como por exemplo, a presena de concatenao de parmetros
utilizando o vars [17], ao invs de concatenar parmetros diretamente na String. Essa
preveno se faz importante porque uma vez um site vulnervel a XSS, um atacante pode
roubar informaes atravs de WebSQL.
3.3.3
56
URL confiveis, uma vez constando o resultado da sub-rotina ser FALSO, indicando que
no se trata de um Phishing. No caso de ausncia da URL na listagem de confiveis, o
prximo passo ser verificar se a URL consta na listagem de Phishing da Extenso Aegis.
Essa listagem proporciona reduo de latncia, uma vez que armazena confirmao de
Phishing em anlises anteriores da mesma URL.
Caso a URL conste na lista negra, o resultado da sub-rotina ser VERDADEIRO.
Uma vez ausente, posteriormente a URL ser avaliada no servio externo do PhishTank.
O resultado do servio do PhishTank uma anlise da URL em seu banco de dados
de Phishing catalogados. Uma vez constatado que a URL trata-se de um Phishing, o
resultado dessa confirmao ser adicionado listagem de Malwares e o resultado do
fluxo retornar VERDADEIRO, caso contrrio o fluxo apenas retornar o valor FALSO.
Na figura 3.9 est ilustrada a filtragem de Clickjaking, a qual possui, como primeira
etapa, a execuo da sub-rotina anti-Phishing. Posteriormente ser verificado se o site em
questo trata-se de uma exceo, se quando verdadeiro, ignora o restante do processo de
filtragem e prosseguir com a requisio. Caso seja falso, ser recuperado o contedo da
requisio em busca dos elementos contidos na tela.
De posse desses elementos, verificar-se- a distncia entre um elemento e outro,
identificando, assim, as sobreposies ou manipulaes maliciosas em frames. Caso
alguma dessas caractersticas seja detectada, a Extenso considerar o site como uma
Fraude, bloqueando sua requisio e informando ao usurio sobre o bloqueio. Caso
contrrio, o prximo passo ser interceptar o contedo do cabealho HTTP usando o
mtodo onBeforeSendHeaders, do WebRequest em busca de comportamentos suspeitos
em parmetros do cabealho.
57
Vale uma ressalva a respeito da deciso de sempre checar as URLs e a utilizao dos
servios do Unshort.me e PhishTank. Foi observado durante os testes realizados neste
estudo, e at o fechamento deste captulo10 , que em servios como goo.gl11 , bitly.com12 ,
e o mcaf.ee13 foram bloqueadas as tentativas de criar uma URL curta em uma URL
catalogada no PhishTank. Em contrapartida, em servios como Ow.ly14 , Tiny.cc15 e o
Bit.do16 , foi possvel criar uma URL encurtada que redireciona para uma URL maliciosa.
Outra questo foi que as URL encurtadas geradas nos servios mencionados, quando
inseridas no PhishTank, o servio anti-phishing informou que no h nada a respeito
sobre a URL, ou seja, concretizando em um ByPass no servio do PhishTank. Com base
nestes resultados, este estudo concluiu que se faz necessria a integrao entre o servio
do Unshort.me, para em seguida enviar a URL original a ser avaliada no PhishTank.
10 Sexta-feira,
10 de Janeiro de 2014.
URL Shortener: http://goo.gl/
12 Bit.ly your bitmarks: https://bit.ly
13 McAfee Secure Short URL Service: http://mcaf.ee
14 Ow.ly Shorten URL: http://ow.ly
15 Tiny URL: http://tiny.cc
16 it.do URL Shortener: http://bit.do
11 Google
58
3.3.4
59
3.3.5
60
3.3.6
Este o ataque mais explorado na literatura, e no seria diferente demandar funcionalidades com um maior nmero de questes e comportamentos inseguros a serem considerados.
Ao todo so 3 fluxos distintos, descritos na Figura 3.13, 3.14 e 3.15, para a filtragem
com o intuito de minimizar os ataques relacionados exposio de dados sensveis, que
so falhas no intencionas ocorridas no processo de desenvolvimento da aplicao. O
primeiro fluxo, apresentado na Figura 3.13, dedicado s questes de armazenamento de
dados sensveis atravs de recursos do HTML5, que ir capturar o contedo da pgina a
61
O segundo fluxo, apresentado na Figura 3.14, voltado para as questes de transmisso de contedos atravs de Cookies e cabealhos HTTP e a utilizao de HTTPS.
A filtragem de explorao de dados sensveis baseada na biblioteca OWASP ESAPI,
que possui checagens e prevenes deste tipo de cenrio, analisando o trfego desse
tipo de dados. O objetivo verificar se um determinado trfego do cabealho HTTP
62
E por fim, o terceiro fluxo, apresentado na Figura 3.15, busca minimizar comportamentos perigosos, principalmente quando so realizados em um computador compartilhado
por diversos usurios, muito comum em locais pblicos como em laboratrios ou as
conhecidas Lan Houses. A filtragem baseada em buscar elementos na tela que manipulem os dados sensveis do usurio, considerando dois aspectos: responsveis em prover
protees aos dados do usurio, e que possam ocasionar armazenamento inseguro.
Aprofundando mais aos detalhes sobre as funcionalidades nesses aspectos, no primeiro
caso a extenso realizar uma busca pelo boto "deslogar", que em algumas aplicaes
h variaes no termo, como "logout", "sair", entre outros. Esse tipo de comportamento
ser tratado em um dicionrio de palavras-chave com possveis variaes para o link ou
63
64
3.3.7
Nesta pgina se faz possvel capturar os links das atualizaes disponveis dos plug-ins
desatualizados. Para identificar os casos de dia zero, a Extenso far uma comunicao
assncrona mediante componente XMLHttpRequest para o site do CVE Details em busca
de vulnerabilidades divulgadas. A consulta no CVE Details baseada no retorno de um
arquivo JSON que armazena informaes como o nome do plug-in, verso e descrio
65
3.3.8
66
destes elementos por DOM. Adicionalmente as URL apontadas aos servios externos, as
quais no so capturadas pelo WebRequest, por serem disparadas enquanto a pgina
carregada, sero capturadas e submetidas a uma filtragem usando o filtro A4.
67
3.3.9
68
com relao anlise de URLs. Uma vez o cabealho sendo avaliado como confivel, o
prximo passo ser analisar o contedo de resposta, buscando por respostas de elementos
que realizam requisies em servios externos.
3.4
69
4
Avaliao da Proposta
4.1
Metodologia
70
4.1. METODOLOGIA
4.1.1
Planejamento
Segundo Soligen & Berghout [377], o objetivo desta fase definir o plano de projeto,
no qual se descreve o ambiente, participantes e o que ser avaliado. O primeiro passo
deste estudo foi realizar uma busca por ambientes controlados disponveis com base nas
principais publicaes descritas no Captulo 2. Um ambiente controlado tem o objetivo de
simular um cenrio real, a fim de testar uma determinada causa e efeito. Para a realizao
dessa avaliao, foi utilizado o projeto OWASP Broken Web Application[25], OBWP,
que mantido pela OWASP e apresenta-se como um conjunto de aplicaes que visam
auxiliar no estudo de vulnerabilidades em aplicaes.
O estudo tambm detectou a existncia de outras aplicaes que no fazem parte do
projeto do OWASP, mas se encontram no contexto deste estudo. Como triagem inicial,
os nicos critrios estabelecidos foram que a ferramenta cobrisse ao menos uma das
ameaas e que tivesse seu contedo disponvel de forma gratuita, seja por download ou
acesso online. Na Tabela A.3 so listadas as 28 aplicaes resultantes da triagem inicial e
sua respectiva cobertura quanto s ameaas abordadas neste estudo.
Analisando o resultado ilustrado na Tabela A.3, foi observado que no existe um
ambiente controlado disponvel que contenha os ataques A4, A5 e A7. Alm disso,
tambm no h avaliao de certos recursos do HTML5 relacionados os ataques A1, A2
e A6, assim como alguns comportamentos apresentados por este estudo aos ataques A1,
A3, A8 e A9, que no foram encontrados nos ambientes disponveis.
Baseando nessas concluses, este estudo desenvolveu uma aplicao intitulada "Aegis
Web Threats"ou AegisWT, uma aplicao J2EE com vulnerabilidades intencionais que
utiliza o framework HTML5 attack [16], desenvolvido pela AppSec Lab3 , na qual traz
cobertura em todos os ataques e rene comportamentos aderentes ao tema proposto. O
objetivo da criao dessa aplicao foi atender s ameaas no cobertas pelos ambientes
disponveis, possibilitando a plena avaliao desta proposta.
Adicionalmente, pretendido submeter essa aplicao para o projeto OBWP para que
tal aplicao faa parte do projeto e assim possa ser disponibilizada para outros estudos,
fazendo exemplo das aplicaes Google Gruyere4 , Peruggia5 e BodgeIt6 .
De posse das aplicaes disponveis, o prximo passo foi realizar uma triagem mais
criteriosa com o objetivo de selecionar as aplicaes mais aderentes ao tema, selecionando
3 AppSec
71
4.1. METODOLOGIA
assim as que sero utilizadas na avaliao. Essa seleo foi baseada em dois critrios, a
saber: (i) a aplicao com maior nmero de ataques relacionados; e (ii) a aplicao com
atualizaes mais recentes, considerando o semestre e ano. Como critrio de desempate,
foi considerada a ferramenta com maior perodo de atividade e documentao disponvel.
Seguindo os critrios anteriormente mencionados, a aplicao selecionada foi a
OWASP WebGoat[9] , porque alm de se tratar de uma aplicao com mais de 10 anos
de atividade, tambm rica em documentao. De posse dessas aplicaes, o ambiente
controlado contempla assim as vulnerabilidades necessrias para reproduzir todos os
ataques relacionados neste estudo.
4.1.2
Definio
As abordagens de Soligen & Berghout [377] expem que na fase da definio que
devem ser descritos os objetivos, questes e mtricas, seguindo a estrutura conforme
ilustrada na Figura 4.2 e desenvolvido na Tabela 4.1. Os ambientes controlados iro
disponibilizar pginas vulnerveis nas quais o participante, a Aplicao Teste, aguardar
um determinado comportamento, resultante de um ataque bem sucedido. Nesse momento,
as Extenses, que representam o contexto, devero tomar alguma ao que impea o
ataque de ser realizado, seja bloqueando recursos do navegador, cancelando a requisio
ou resposta ou mesmo solicitando uma confirmao ao usurio para continuar o processo.
72
Descrio
Mtricas
Contexto
Escala
[Q1] Quo eficaz a proteo das ferramentas diante dos ataques A1?
(1).Aegis
Mtricas
(2).ImmuniWeb
Self-Fuzzer
(M2).XSS
Padro (sem
Refletido
escapes).
atravs
com
regular.
No
1
(3).Netcraft
(M3).XSS
de
escapes
expresso
atingidas
se
aplica
Fraco
Extension
2
Razovel
(4).No-Script
4
Satisfatrio
(5).RightClikXSS
(M4).XSS
vs
de
atraDOM.
(M5).XSS
baseado
em DOM atravs de Web
Workers
5 - Excelente
(6).ScriptSafe
(7).TamperMonkey
(8).Websecurify
(9).XSS
chef
(10).XSS Me
4.1. METODOLOGIA
73
(M2).Vulnerabilidade
via
POST
(1).Aegis
Mtricas
(2).ImmuniWeb
Self-Fuzzer
No
1
(3).SQL
(M3).Vulnerabilidade em
Web SQL
atingidas
Inject
se
aplica
Fraco
Me
2
Razovel
(4).Websecurify
3 - Satisfatrio
(M1).Roubo de informaes
em
Formulrio
(1).Aegis
Mtricas
(2).Clickjacking
Reveal
(3).Clickjacking
Test
atingidas
No
se
aplica
(M2).Roubo de cliques
(M3).Anlise
X-Frame-Options
Fraco
de
(4).No-Script
(5).Zscaler
king Prevention
2
Likejac-
Razovel
3 - Satisfatrio
74
4.1. METODOLOGIA
(M1).Vulnerabilidade
via
GET
(1).[Aegis Web Threats] A Aplicao Teste acessar uma pgina que possui um elemento <a> que direciona para um
Phishing.
Aps o carregamento da pgina, a Aplicao Teste
ir acionar o link e espera direcionar a pgina para a URL,
indicando que o elemento no foi bloqueado pela extenso.
(2).[Aegis Web Threats] A Aplicao Teste acessar uma pgina na qual
possui um link com uma URL curta que redireciona para um Phishing.
Aps 10 segundos do carregamento da pgina, o prximo passo da Aplicao Teste ser conseguir clicar no link mencionado, encontrando o
link ainda funcional.
(M1).Redirecionamento
para
Phishing
(M2).Checagem
URL curtas
(1).Aegis
Mtricas
(3).Anti-Phishing
(4).Netcraft
2 - Satisfatrio
atingidas
No
se
aplica
de
Extension
Razovel
(5).RequestPolicy
(6).SafePreview
(7).ScriptSafe
(8).TamperMonkey
(9).Web
(WOT)
(M1).Download
de
Malware
(Plug-in)
(M2).Deteco
de
Phishing em Complemento (Extenso)
Trust
(1).Aegis
Mtricas
(3).Safe
(4).Web
(WOT)
Preview
of
Trust
atingidas
No
-
2 - Satisfatrio
se
aplica
Razovel
75
4.1. METODOLOGIA
of
(M1).Utilizao
de
Cookies
Persistentes
(1).Aegis
(2).Netcraft
(M2).Armazenamento
indevido
baseado
codificao
Base64
(M3).Armazenamento
indevido
atravs
do
LocalStorage
(M4).Autenticao
Basic
sem
HTTPS
(M5).Armazenamento
indevido
atravs
do
IndexDB
Mtricas
Extension
atingidas
No
(3).No-Script
(4).RequestPolicy
(5).ScriptSafe
(6).TamperMonkey
7 - Excelente
(7).Toogle
2
4
6
se
aplica
Fraco
Razovel
Satisfatrio
Cookies
(8).Websecurify
4.1. METODOLOGIA
76
(1).[Aegis Web Threats] A Aplicao Teste ir acessar uma pgina a qual possui um link para instalar um
plug-in com vulnerabilidade conhecida.
O resultado final ser conseguir instalar o referido plug-in no navegador.
(2).[Aegis Web Threats] Primeiramente ser instalada no navegador
uma Extenso com uma verso com vulnerabilidade. Posteriormente a
Aplicao Teste acessar uma pgina em branco. O resultado final ser
observar se a extenso foi removida.
(1).[WebGoat] A Aplicao Teste acessar uma pgina que possui
um formulrio de envio de email no qual possvel injetar um elemento <img> que realiza uma requisio atravs do atributo SRC
com parmetros modificados. A Aplicao Teste interpretar o
ataque como concludo caso seja possvel submeter o formulrio.
(2).[WebGoat] A Aplicao Teste acessar uma pgina a qual possui um formulrio de envio de e-mail no qual controla a requisio atravs de um Token. O Token em questo est armazenado de forma insegura, como um campo hidden com seu valor exposto no cdigo fonte da pgina. A Aplicao Teste interpretar
o ataque como concludo caso seja possvel submeter o formulrio.
(3).[Aegis Web Threats] A Aplicao Teste acessar uma pgina que
possui um mtodo que ser disparado em seu carregamento, e do qual
renderizar atravs de DOM um elemento <img> com um SRC atribudo com uma requisio forjada. A Aplicao Teste interpretar o
ataque como concludo caso a imagem seja carregada.
(M1).Plug-in
instalado
com
vulnerabilidade
conhecida
(1). Aegis
Mtricas
0
(M2).Extenso
instalada com vulnerabilidade
conhecida
(M1).CSRF
vs
de
atra<img>
atingidas
No
se
aplica
Razovel
2 - Satisfatrio
(1).Aegis
(2).CSRF
Mtricas
Finder
atingidas
No
se
aplica
(M2).ByPass em Token
(M3).Forjando
quisio
atravs
DOM
rede
(3).No-Script
(4).RequestPolicy
(5).Websecurify
3 - Satisfatrio
Fraco
Razovel
4.1. METODOLOGIA
77
(M1).Proteo de PMO
(1).Aegis
Mtricas
(M2).Aplicando
XSSI
via
(2).RequestPolicy
(3).Websecurify
atingidas
No
se
aplica
AJAX
(M3).Checagem
do
arquivo crossdomain.xml
(M4).Falhas de PMO atravs
de
WebSocket
2
4
3
-
Fraco
-
Razovel
Satisfatrio
5 - Excelente
(M5).XSS
atravs
de Web Messaging
78
4.1. METODOLOGIA
4.1. METODOLOGIA
4.1.3
Coleta de Dados
A coleta de dados foi realizada com base nas questes e mtricas definidas na seo
Descrio. As mtricas foram obtidas por meio da execuo de Testes Funcionais que, na
Engenharia de Software, so responsveis por realizar uma inspeo dos componentes
de um determinado sistema com o objetivo de analisar resultados esperados. A tcnica
valida se o comportamento e funcionalidades do sistema esto de acordo com os objetivos
definidos [248]. Como o objetivo a proteo do lado cliente, os comportamentos internos
dos sites no so visveis extenso, portanto o mtodo de avaliao ser baseado em
testes funcionais, tambm conhecidos como caixa preta [248].
A participante dessa avaliao foi uma aplicao, denominada Aplicao Teste,
que executa as mtricas para avaliar o comportamento de uma Extenso instalada no
navegador. Cada extenso foi avaliada individualmente, ou seja, quando uma extenso era
avaliada, as demais ficavam desabilitadas no navegador. Os testes foram executados de
forma automatizada. A automao em testes a utilizao de um software para controlar
a execuo dos testes da funcionalidade de outro software [248].
Quanto adoo do processo automatizado na realizao dos testes, se faz partindo
do princpio que uma vez no contexto, uma Extenso, seja permitida a utilizao de simulao como trabalho automatizado, isso proporciona um experimento mais quantitativo,
podendo alternar variveis e comparar comportamentos distintos, ou seja, possibilita um
comparativo entre um considervel nmero de Extenses submetidas aos testes. Outra
questo que a confiabilidade aumenta quando eliminado o carter subjetivo da avaliao, no caso, a interveno manual. E diante do contexto desse estudo no h nada que
um ser humano possa fazer que a automao no seja capaz de reproduzir.
A ferramenta escolhida para proporcionar automao aos testes foi a Selenium Server8 ,
que oferece a realizao dos testes em praticamente todos os navegadores disponveis,
fazendo uso de mecanismos que realizam operaes diretamente em uma instncia do
navegador.
A Aplicao Teste foi desenvolvida na tecnologia J2SE e representa um conjunto de
testes baseados em Testes Unitrios. Testes Unitrios, ou tambm conhecidos como Testes
de Unidade, um processo que garante que o retorno de um determinado mtodo seja
esperado pela aplicao [248]. Nessa avaliao foi utilizado o Framework JUnit10 como
apoio na execuo dos Testes Unitrios. Alm do JUnit, a Aplicao Teste tambm utiliza
8 http://docs.seleniumhq.org
10 JUnit:
http://junit.org/
79
4.1. METODOLOGIA
WebDriver: http://docs.seleniumhq.org/projects/webdriver/
http://portswigger.net/burp/
12 BurpSuite:
80
4.1. METODOLOGIA
4.1.4
Com base na Tabela 4.1, foram submetidas 23 ferramentas aos testes desta experimentao, com os resultados obtidos por Ataques e as respectivas ferramentas que oferecem
proteo. Pde ser observado que em alguns casos a escala possui um nvel qualificado
como "Satisfatrio", outros se estendem at o "Excelente". Os casos com ausncia do nvel "Excelente"referem-se aos ambientes de testes que, devido falta de cenrios prontos
e o tempo e esforo para desenvolv-los, no contemplam todos os aspectos vulnerveis
descritos no estudo.
81
4.1. METODOLOGIA
82
4.1. METODOLOGIA
Resultado da Questo 2
Seguindo para a anlise dos resultados de SQLi, conforme ilustrado na Figura 4.6,
os dados obtidos vo em contradio aos de XSS, tanto em respeito quantidade de
ferramentas disponveis, quanto eficcia. O fato que as tcnicas de deteco no
contexto de uma extenso so bastante limitadas, primeiramente pela heurstica aplicada
por todas as ferramentas, as quais realizam uma inspeo baseada em um nvel mais
superficial, observando comportamentos como erro da aplicao ou mensagens ao usurio
quando os parmetros so manipulados. Com base nos resultados obtidos, a ferramenta
Aegis apresentou-se com uma heurstica com maior riqueza quanto aos comportamentos
descritos. A primeira mtrica do teste possui um comportamento de fcil deteco,
mesmo assim uma ferramenta teve seu comportamento de proteo considerado nulo. A
ferramenta Aegis se sobressaiu devido s questes de vulnerabilidade no WebSQL, as
quais no so avaliadas pelas demais ferramentas.
Resultado da Questo 3
Nos dados extrados quanto ao ataque de Clickjacking, conforme ilustrado na Figura 4.7,
a maioria das solues candidatas apresentaram um comportamento classificado como
fraco em relao a sua funcionalidade de proteo, e dentre elas, uma apresentou um
comportamento nulo. Em contrapartida, a ferramenta No-Script alm de detectar sobreposio para furto de cliques, tambm obteve controle dos cabealhos HTTP referente a
permisses de frames. Contudo a ferramenta Aegis foi nica que alm desses aspectos,
tambm cobriu a sobreposio de campos em formulrios.
83
4.1. METODOLOGIA
Resultado da Questo 4
Conforme ilustrado na Figura 4.8, o destaque negativo quanto proteo aos ataques A4.
Com exceo da Aegis, nenhuma outra ferramenta foi capaz de detectar o Phishing em
uma URL curta, definido como a segunda mtrica desta avaliao. Tal fato possibilita que
o usurio clique em um link e com isso acaba jogando a responsabilidade de preveno
do Phishing para o navegador. Dessas ferramentas, a nica preveno apresentada foi
referente ao ataque de forma mais bsica, descrito na primeira mtrica. Ainda sim, duas
ferramentas tiveram um comportamento nulo devido ao fato de serem baseadas em uma
lista negra que possui um considervel tempo de depreciao. O fato foi comprovado pois
os testes utilizaram Phishing catalogados e confirmados no dia anterior no PhishTank, um
tempo mais que suficiente para um mal intencionado realizar aes ilcitas em centenas
de usurios.
84
4.1. METODOLOGIA
Resultado da Questo 5
Em relao aos resultados obtidos nos testes do ataque A5, com exceo a SafePreview,
que apresentou seu comportamento como nulo, as demais ferramentas conseguiram
detectar o download de um Malware, conforme descrito na Figura 4.9. Porm, apenas a
ferramenta Aegis conseguiu realizar a preveno contra uma Extenso maliciosa.
Resultado da Questo 6
O comportamento padro das ferramentas de preveno disponveis o controle de
Cookies. Conforme descrito na Figura 4.10, todas as ferramentas tiveram uma ao
preventiva. A TamperMonkey observou o armazenamento inseguro em LocalStorage,
porm, apenas a Aegis cobriu todas as vulnerabilidades quanto aos componentes do
HTML6. Alm disso, as demais ferramentas apresentaram-se com baixa cobertura quanto
s observaes e comportamentos inseguros descritos neste estudo.
85
4.1. METODOLOGIA
Resultado da Questo 7
Em relao aos ataques A7, nenhuma outra ferramenta foi encontrada disponvel para
um possvel comparativo com a Aegis. Isso tambm reflete na pequena quantidade de
publicaes disponveis na literatura sobre esse ataque. Alm disso, conforme descrito
na Figura 4.11, apenas no Chrome foi possvel realizar uma preveno satisfatria, uma
vez que o navegador em questo disponibiliza uma listagem de seus plug-ins instalados,
por meio do endereo chrome://plugins, onde se faz possvel desabilitar um determinado
plug-in, o que no ocorre na listagem about:plugins do Firefox. Portanto a soluo
proposta ainda possui um comportamento minimamente preventivo.
Resultado da Questo 8
Conforme descrito na Figura 4.12, a ferramenta Aegis e a No-Script apresentaram
um comportamento satisfatrio nos testes que envolvem ataques de A8. As demais
ferramentas tiveram ineficincia quanto a deteco da mtrica 2, a qual baseada na forja
de Token.
86
Resultado da Questo 9
Finalmente, com base nos resultados da avaliao da Questo 9, conforme ilustrado na
Figura 4.13, poucas foram as ferramentas disponveis para as protees de falhas em
PMO, sendo detectadas apenas trs ferramentas. A Aegis foi nica que considerou
os critrios abordados neste estudo, a saber, a segurana em arquivos SWF e as falhas
ocasionais em recursos do HTML5 como o WebSocket e o WebMessaging.
4.2
Limitaes da Avaliao
87
4.3
Consideraes Finais
88
5
Concluses e Trabalhos Futuros
89
5.1. CONTRIBUIES
Este estudo apresentou uma abordagem que visa aplicar tcnicas de defesa que so
executadas diretamente no navegador, a fim de oferecer ao usurio uma soluo preventiva
intrnseca ao contexto. A proposta foi submetida a uma avaliao, na qual foi possvel
observar que a mesma conseguiu inibir um grande nmero de ataques consequentes por
ausncia ou falhas nas prevenes de segurana em recursos disponveis na web usando
um navegador.
As diversas tcnicas aplicadas nesta proposta, a exemplo da anlise esttica, so as
verificaes mais recomendadas no nvel client-side, mas em um mbito geral essas
tcnicas no so as mais eficientes. Mesmo assim, a iniciativa dessa proposta tornase vlida. Primeiro porque as anlises mais eficazes so as realizadas no nvel de
implementao, e no se pode garantir que todos os desenvolvedores iro atribuir s
devidas tcnicas em suas aplicaes. Segundo, porque apesar de limitada, essa tcnica
trouxe resultados satisfatrios conforme a avaliao apresentada no Captulo 4.
5.1
Contribuies
90
5.2
Limitaes da Proposta
Devido s restries de tempo, alguns dos problemas abordados nesta dissertao ainda
esto em aberto na soluo apresentada neste estudo. Alm disso, algumas caractersticas
da proposta carecem de uma funcionalidade mais eficaz. Eis alguns pontos que podem
ser investigados como melhorias desejveis, a saber:
Melhorias nas funcionalidades do Filtro A2: Conforme descrito no Captulo 3,
seo 3.3.2, planejada uma integrao com os resultados do SQLMap, a fim de
proporcionar uma anlise com maior nvel de profundidade, buscando preciso aos
resultados.
Melhorias nas funcionalidades do Filtro A5: Conforme descrito no Captulo 3,
seo 3.3.5, planejada uma melhoria em relao checagem de arquivos em
download, uma vez que a Extenso precise pausar a transferncia, a fim de coibir o
trmino do carregamento do arquivo, antes da concluso da inspeo, isso trouxe
alguns problemas quando realizado download em servidores que no suportam
reincios.
Melhorias nas funcionalidades do Filtro A7: Conforme descrito no Captulo
3, seo 3.3.7, o filtro ainda carece de boas funcionalidades, principalmente no
navegador Firefox. O estudo identificou que, devido s limitaes do navegador,
esse filtro talvez apresente um comportamento mais eficiente se for executado em
um contexto diferente quele proporcionado a uma extenso.
91
5.3
Trabalhos Futuros
92
Referncias Bibliogrficas
93
REFERNCIAS BIBLIOGRFICAS
94
REFERNCIAS BIBLIOGRFICAS
95
REFERNCIAS BIBLIOGRFICAS
[58] Ali, A., Shakhatreh, A., Abdullah, M., and Alostad, J. (2011). Sql-injection vulnerability scanning tool for automatic creation of sql-injection attacks. Procedia Computer
Science.
[59] Ali, S., K. S. R. A. (2011). A cryptography-based approach to web mashup security.
Proceedings - International Conference on Computer Networks and Information
Technology.
[60] Allen, J. (2001). The CERT guide to system and network security practices. SEI
series in software engineering. Addison-Wesley.
[61] Alvarez, G. and Petrovic, S. (2003). A new taxonomy of web attacks suitable for
efficient encoding. Computers Security.
[62] Anderson, B.; Quist, D. L. T. (2011). Detecting code injection attacks in internet
explorer. Computer Software and Applications Conference Workshops (COMPSACW),
2011 IEEE 35th Annual.
[63] Anderson, R. and Lee, J.-H. (2000). Jikzi: a new framework for security policy,
trusted publishing and electronic commerce. Computer Communications.
[64] Anupam, V.; Mayer, A. (1998). Secure web scripting. Internet Computing, IEEE.
[65] Armando, A., Carbone, R., Compagna, L., Cullar, J., Pellegrino, G., and Sorniotti, A. (2013). An authentication flaw in browser-based single sign-on protocols:
Impact and remediations. Computers Security.
[66] Arulsuju, D. (2011). Hunting malicious attacks in social networks. Advanced
Computing (ICoAC), 2011 Third International Conference on.
[67] Aslam, B.; Lei Wu; Zou, C. (2010). Pwdip-hash: A lightweight solution to phishing
and pharming attacks. Network Computing and Applications (NCA), 2010 9th IEEE
International Symposium on.
[68] Assad, R. E. (2011). SSQA Software Security Quality Assurance. Ph.D. thesis,
Universidade Federal de Pernambuco Centro de Informtica.
[69] Austin, A., Holmgreen, C., and Williams, L. (2013). A comparison of the efficiency
and effectiveness of vulnerability discovery techniques. Information and Software
Technology.
96
REFERNCIAS BIBLIOGRFICAS
[70] Balasundaram, I. and Ramaraj, E. (2012). An efficient technique for detection and
prevention of injection attack using based string matching. Procedia Engineering.
[71] Balduzzi, M., E. M. K. E. B. D. K. C. (2010). A solution for the automated
detection of clickjacking attacks. Proceedings of the 5th International Symposium on
Information, Computer and.
[72] Balfanz., D. D. E. W. F. D. S. W. D. (1997). Java security: Web browsers and
beyond. Internet besieged.
[73] Balzer, R. (2003). Safe email, safe office, and safe web browser demo description.
DARPA Information Survivability Conference and Exposition, 2003. Proceedings.
[74] Bamrara, A., S. G. B. M. (2013). Cyber attacks and defense strategies in india: An
empirical assessment of banking sector. International Journal of Cyber Criminology.
[75] Bandhakavi, S., Bisht, P., Madhusudan, P., and Venkatakrishnan, V. (2007). Candid:
Preventing sql injection attacks using dynamic candidate evaluations. Proceedings of
the ACM Conference on Computer and Communications Security.
[76] Barone, G.B.; Margarita, N. M. A. M. N. R. L. (2001). Secure access to personalized web services. Dependable Computing, 2001. Proceedings. 2001 Pacific Rim
International Symposium on.
[77] Bates, D., Barth, A., and Jackson, C. (2010). Regular expressions considered
harmful in client-side xss filters. In Proceedings of the 19th International Conference
on World Wide Web, WWW 10, pages 91100, New York, NY, USA.
[78] Beck, K.; Zhan, J. (2010). Phishing in finance. Future Information Technology
(FutureTech), 2010 5th International Conference on.
[79] Ben-Itzhak, Y. (2013). Welcome to the malware-as-a-service business model.
<URL> acesso: 10/12/13.
[80] Bestuzhev, D. (2013). Brazil: a country rich in banking trojans. <URL> acesso:
10/12/13.
[81] Bielova, N. (2013). Survey on javascript security policies and their enforcement
mechanisms in a web browser. The Journal of Logic and Algebraic Programming.
97
REFERNCIAS BIBLIOGRFICAS
[82] Bielova, N., Devriese, D., Massacci, F., and Piessens, F. (2011). Reactive noninterference for a browser model. In P. Samarati, S. Foresti, J. Hu, and G. Livraga,
editors, NSS, pages 97104. IEEE.
[83] Bina, E. ; McCool, R. . J. V. . W. M. (1994). Secure access to data over the
internet. Parallel and Distributed Information Systems, 1994., Proceedings of the
Third International Conference.
[84] Blanc, G.; Ando, R. K. Y. (2011). Term-rewriting deobfuscation for static client-side
scripting malware detection. New Technologies, Mobility and Security (NTMS), 2011
4th IFIP International Conference on.
[85] Boyan Chen; Zavarsky, P.; Ruhl, R. L. D. (2011). A study of the effectiveness of
csrf guard. Privacy, security, risk and trust (passat), 2011 ieee third international
conference on and 2011 ieee third international conference on social computing
(socialcom).
[86] Boyd, S. and Keromytis, A. (2004). Sqlrand: Preventing sql injection attacks.
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial
Intelligence and Lecture Notes in Bioinformatics).
[87] Bozic, J., W. F. (2013). Xss pattern for attack modeling in testing. 2013 8th
International Workshop on Automation of Software Test, AST 2013 - Proceeding.
[88] Caballero, S. C. H. C. M. (2010). Residue objects: a challenge to web browser
security. EuroSys 10 Proceedings of the 5th European conference on Computer
systems.
[89] Chandrashekhar, R., Mardithaya, M., Thilagam, S., and Saha, D. (2012). Sql
injection attack mechanisms and prevention techniques. Lecture Notes in Computer
Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes
in Bioinformatics).
[90] Chen, F.-H. H. C.-K. T. Y.-C. Y. W.-J. W. L.-H. (2011). Browserguard: A behaviorbased solution to drive-by-download attacks. Selected Areas in Communications, IEEE
Journal on.
[91] Chen, P. Z. J. S. H. (2010). Insecure javascript detection and analysis with browserenforced embedded rules. Parallel and Distributed Computing, Applications and
Technologies (PDCAT), 2010 International Conference on.
98
REFERNCIAS BIBLIOGRFICAS
[92] Chen, S., Mao, Z., Wang, Y.-M., and Zhang, M. (2009). Pretty-bad-proxy: An
overlooked adversary in browsers https deployments. In Proceedings of the 2009 30th
IEEE Symposium on Security and Privacy, SP 09, pages 347359, Washington, DC,
USA. IEEE Computer Society.
[93] Chhabra, S., A. A. B. F. K.-P. (2011). Phi.sh$ocial: The phishing landscape through
short urls. ACM International Conference Proceeding Series.
[94] Cho, S. and Cha, S. (2004). Sad: web session anomaly detection based on parameter
estimation. Computers Security.
[95] Chomsiri, T. (2007). Https hacking protection. Advanced Information Networking
and Applications Workshops, 2007, AINAW 07. 21st International Conference on.
[96] Choudhary, S.; Dincturk, M. B. G. J.-G.-V. O.-I. I. P. (2012). Solving some modeling
challenges when testing rich internet applications for security. Software Testing,
Verification and Validation (ICST), 2012 IEEE Fifth International Conference on.
[97] Ciampa, A., Visaggio, C., and Di Penta, M. (2010). A heuristic-based approach for
detecting sql-injection vulnerabilities in web applications. Proceedings - International
Conference on Software Engineering.
[98] Cittzen, G. (2007). Persistent csrf and the hotlink hell. <URL> acesso: 10/12/13.
[99] Claessens, J., Dem, V., Cock, D. D., Preneel, B., and Vandewalle, J. (2002). On the
security of todays online eletronic banking systems. Computers Security.
[100] Cluley, G. (2013). Is that youtube video downloader browser plugin safe? beware!.
<URL> acesso: 10/12/13.
[101] Collin Jackson, Andrew Bortz, D. B. and Mitchell, J. C. (2006). Protecting browser
state from web privacy attacks. 15th International World Wide Web Conference.
[102] Couvreur, J. (2006). Crossdomain.xml security warning. <URL> acesso: 10/12/13.
[103] Crispo, B., Landrock, P., and Jr., V. M. (2000). Www security and trusted third
party services. Future Generation Comp. Syst., 16.
[104] Crites, S., H. F. C. H. (2008). Omash: Enabling secure web mashups via object
abstractions. Proceedings of the ACM Conference on Computer and Communications
Security.
99
REFERNCIAS BIBLIOGRFICAS
[105] Dacosta, I., Chakradeo, S., Ahamad, M., and Traynor, P. (2012). One-time cookies:
Preventing session hijacking attacks with statelessauthentication tokens. ACM Trans.
Internet Technol., 12(1), 1:11:24.
[106] De Groef, W., Devriese, D., and Nikiforakis, Nick andPiessens, F. (2012). Flowfox:
A web browser with flexible and precise information flowcontrol. In Proceedings
of the 2012 ACM Conference on Computer and CommunicationsSecurity, CCS 12,
pages 748759, New York, NY, USA.
[107] De Ryck, P., D. L. H. T.-P.-F. J.-W. (2010). Csfire: Transparent client-side
mitigation of malicious cross-domain requests. 2nd International Symposium on
Engineering Secure Software and Systems.
[108] De Ryck, P., D. L. J. W.-P.-F. (2011). Automatic and precise client-side protection
against csrf attacks. Lecture Notes in Computer Science (including subseries Lecture
Notes in Artificial Intelligence and Lecture Notes in Bioinformatics).
[109] De Ryck, P., Decat, M., Desmet, L., Piessens, F., and Joosen, W. (2012a). Security
of web mashups: A survey. In Proceedings of the 15th Nordic Conference on Information Security Technology for Applications, NordSec10, pages 223238, Berlin,
Heidelberg. Springer-Verlag.
[110] De Ryck, P., Nikiforakis, N., Desmet, L., Piessens, F., and Joosen, W. (2012b).
Serene: Self-reliant client-side protection against session fixation. In Proceedings
of the 12th IFIP WG 6.1 International Conference on DistributedApplications and
Interoperable Systems, DAIS12, pages 5972, Berlin, Heidelberg. Springer-Verlag.
[111] de S.Paulo, F. (2008). Por segurana, brasil adota domnio "b.br"exclusivo para
bancos. <URL> acesso: 10/12/13.
[112] De Zoysa, K.; Muftic, S. (2002). Bi-directional web document protection system
for serious e-commerce applications. Parallel Processing Workshops, 2002. Proceedings. International Conference on.
[113] Details, C. (2013a). Gecko security vulnerabilities. <URL> acesso: 10/12/13.
[114] Details, C. (2013b). Quicktime vulnerabilities. <URL> acesso: 10/12/13.
[115] Details, C. (2013c). Webkit security vulnerabilities. <URL> acesso: 10/12/13.
100
REFERNCIAS BIBLIOGRFICAS
[116] Devesa, J., C. X. A. G. B.-P. (2011). An efficient security solution for dealing with
shortened url analysis. Proceedings of the 8th International Workshop on Security in
Information Systems,.
[117] Dhawan, M.; Ganapathy, V. (2009). Analyzing information flow in javascriptbased browser extensions. Computer Security Applications Conference, 2009. ACSAC
09. Annual.
[118] Di Lucca, G.A.; Fasolino, A. M. M. T.-P. (2004). Identifying cross site scripting
vulnerabilities in web applications. Telecommunications Energy Conference, 2004.
INTELEC 2004. 26th Annual International.
[119] Dong, X., Chen, Z., Siadati, H., Tople, S., Saxena, P., and Liang, Z. (2013).
Protecting sensitive web content from client-side vulnerabilities with cryptons. In
Proceedings of the 2013 ACM SIGSAC conference on Computer communications
security, CCS 13, pages 13111324, New York, NY, USA. ACM.
[120] Dymond, P.; Jenkin, M. (1999). Www distribution of private information with
watermarking. Systems Sciences, 1999. HICSS-32. Proceedings of the 32nd Annual
Hawaii International Conference on.
[121] Eftekhari, M. H., Barzegar, Z., and Isaai, M. T. (2011). Web 1.0 to web 3.0
evolution: Reviewing the impacts on tourism development and opportunities. In
Proceedings of the First International Conference on Human-computerInteraction,
Tourism and Cultural Heritage, HCITOCH10, pages 184193, Berlin, Heidelberg.
Springer-Verlag.
[122] Eisen, O. (2010). Catching the fraudulent man-in-the-middle and man-in-thebrowser. Network Security.
[123] Elia, I., Fonseca, J., and Vieira, M. (2010). Comparing sql injection detection tools
using attack injection: An experimental study. Proceedings - International Symposium
on Software Reliability Engineering, ISSRE.
[124] Eshete, B., Villafiorita, A., and Weldemariam, K. (2012). Binspect: Holistic
analysis and detection of malicious web pages. In SecureComm, pages 149166.
[125] Estado (2012). Especialistas alertam para problema em navegador da microsoft.
<URL> acesso: 10/12/13.
101
REFERNCIAS BIBLIOGRFICAS
[126] Florian, C. (2012). Web browser war, security battle in 2011. <URL> acesso:
10/12/13.
[127] for Internet Security, C. (2013). Multiple vulnerabilities in mozilla products could
allow remote codeexecution. <URL> acesso: 10/12/13.
[128] Ford, S.; Cova, M. K. C. V. G. (2009). Analyzing and detecting malicious flash advertisements. Computer Security Applications Conference, 2009. ACSAC 09. Annual.
[129] Fredrikson, M.; Livshits, B. (2011). Repriv: Re-imagining content personalization
and in-browser privacy. Security and Privacy (SP), 2011 IEEE Symposium on.
[130] Frenz, C.M.; Yoon, J. (2012). Xssmon: A perl based ids for the detection of
potential xss attacks. Systems, Applications and Technology Conference (LISAT), 2012
IEEE Long Island.
[131] Fu, X., Lu, X., Peltsverger, B., Chen, S., Qian, K., and Tao, L. (2007). A static
analysis framework for detecting sql injection vulnerabilities. In Proceedings of the
31st Annual International Computer Software and Applications Conference - Volume
01, COMPSAC 07, pages 8796, Washington, DC, USA. IEEE Computer Society.
[132] Fukushima, Y.; Hori, Y. S. K. (2011). Proactive blacklisting for malicious web
sites by reputation evaluation based on domain and ip address registration. Trust,
Security and Privacy in Computing and Communications (TrustCom), 2011 IEEE 10th
International Conference on.
[133] Fung, A.P.H.; Cheung, K. (2010). Httpslock: Enforcing https in unmodified
browsers with cached javascript. Network and System Security (NSS), 2010 4th
International Conference on.
[134] Fung, B.S.Y.; Lee, P. (2011). A privacy-preserving defense mechanism against
request forgery attacks. Trust, Security and Privacy in Computing and Communications
(TrustCom), 2011 IEEE 10th International Conference on.
[135] Gajek, S. (2008). A universally composable framework for the analysis of browserbasedsecurity protocols. In Proceedings of the 2Nd International Conference on
Provable Security, ProvSec 08, pages 283297, Berlin, Heidelberg. Springer-Verlag.
[136] Gajek, S. (2009). Foundations of provably secure browser-based protocols. Ph.D.
thesis, Ruhr University Bochum. http://d-nb.info/996578269.
102
REFERNCIAS BIBLIOGRFICAS
[137] Gajek, S., Sadeghi, A.-R., and Stuble, Christian andWinandy, M. (2007). Compartmented security for browsers - or how to thwart a phisherwith trusted computing.
In Proceedings of the The Second International Conference on Availability,Reliability
and Security, ARES 07, pages 120127, Washington, DC, USA. IEEE Computer
Society.
[138] Gajek, S., Jager, T., Manulis, M., and Schwenk, J. (2008a). A browser-based
kerberos authentication scheme. In Proceedings of the 13th European Symposium on
Research in ComputerSecurity: Computer Security, ESORICS 08, pages 115129,
Berlin, Heidelberg. Springer-Verlag.
[139] Gajek, S., Manulis, M., and Schwenk, J. (2008b). Enforcing user-aware browserbased mutual authentication with stronglocked same origin policy. In Proceedings of
the 13th Australasian Conference on Information Securityand Privacy, ACISP 08,
pages 620, Berlin, Heidelberg. Springer-Verlag.
[140] Gajek, S., Lohr, H., Sadeghi, A.-R., and Winandy, M. (2009a). Truwallet:
Trustworthy and migratable wallet-based web authentication. In Proceedings of
the 2009 ACM Workshop on Scalable Trusted Computing, STC 09, pages 1928, New
York, NY, USA.
[141] Gajek, S., Manulis, M., and Schwenk, J. (2009b). User aware provably secure
protocols for browser based mutual authentication. Int. J. Appl. Cryptol., 1(4), 290
308.
[142] Galan, E.; Alcaide, A. O. A. B. J. (2010). A multi-agent scanner to detect storedxss vulnerabilities. Internet Technology and Secured Transactions (ICITST), 2010
International Conference for.
[143] Gamma, E., Helm, R., Johnson, R., and Vlissides, J. (1995). Design Patterns:
Elements of Reusable Object-oriented Software. Addison-Wesley Longman Publishing
Co., Inc., Boston, MA, USA.
[144] Gastellier-Prevost, S.; Granadillo, G. L. M. (2011a). Decisive heuristics to differentiate legitimate from phishing sites. Network and Information Systems Security
(SAR-SSI), 2011 Conference on.
[145] Gastellier-Prevost, S.; Granadillo, G. L. M. (2011b). A dual approach to detect
pharming attacks at the client-side. New Technologies, Mobility and Security (NTMS),
2011 4th IFIP International Conference on.
103
REFERNCIAS BIBLIOGRFICAS
104
REFERNCIAS BIBLIOGRFICAS
105
REFERNCIAS BIBLIOGRFICAS
106
REFERNCIAS BIBLIOGRFICAS
107
REFERNCIAS BIBLIOGRFICAS
[194] James Governor, Dion Hinchcliffe, D. N. (2009). Web 2.0 Architectures: What
Entrepreneurs and Information ArchitectsNeed to Know. OReilly.
[195] Jarkowski, M., Binczewski, A., and Stroinski, M. (1999). New approach for
management services with a web browser. Computer Networks.
[196] Jayaraman, K.; Wenliang Du; Rajagopalan, B. C. S. (2010a). Escudo: A finegrained protection model for web browsers. Distributed Computing Systems (ICDCS),
2010 IEEE 30th International Conference on.
[197] Jayaraman, K., L. G. T. P. C. S. (2010b). Enforcing request integrity in web
applications. Lecture Notes in Computer Science (including subseries Lecture Notes
in Artificial.
[198] Jenkin, M.; Dymond, P. (1998). A plugin-based privacy scheme for world-wide
web file distribution. System Sciences, 1998., Proceedings of the Thirty-First Hawaii
International Conference on.
[199] Jiang Wang; Huang, Y.; Ghosh, A. (2010). Safefox: A safe lightweight virtual
browsing environment. System Sciences (HICSS), 2010 43rd Hawaii International
Conference on.
[200] Jim Hendler, T. B.-L. (2009). From the semantic web to social machines: A
research challenge forai on the world wide web. In Artificial Intelligence 2009.
Elsevier B.V. All rights reserved.
[201] Johns, M. (2006). Sessionsafe: Implementing xss immune session handling. In In
Proc. ESORICS.
[202] Johns, M. (2013). Preparedjs: Secure script-templates for javascript. Lecture Notes
in Computer Science (including subseries Lecture Notes in Artificial Intelligence and
Lecture Notes in Bioinformatics).
[203] Johns, M. and Beyerlein, C. (2007). Smask: Preventing injection attacks in
web applications by approximatingautomatic data/code separation. In In 22nd ACM
Symposium on Applied Computing (SAC 2007), Security Track.
[204] Jon Howell, Collin Jackson, H. J. W. and Fan, X. (2007). Mashupos: Operating
system abstractions for client mashups. 11th Workshop on Hot Topics in Operating
Systems.
108
REFERNCIAS BIBLIOGRFICAS
[205] Joshi, Y.; Das, D. S. S. (2009). Mitigating man in the middle attack over secure
sockets layer. Internet Multimedia Services Architecture and Applications (IMSAA),
2009 IEEE International Conference on.
[206] Joshi, Y.; Saklikar, S. D. D. S. S. (2008). Phishguard: A browser plug-in for
protection from phishing. Internet Multimedia Services Architecture and Applications,
2008. IMSAA 2008. 2nd International Conference on.
[207] Jovanovic, N. ; Kirda, E. . K. C. (2006). Preventing cross site request forgery
attacks. Securecomm and Workshops, 2006.
[208] Jovanovic, N., Kruegel, C., and Kirda, E. (2006). Pixy: A static analysis tool for
detecting web application vulnerabilities(short paper). In Proceedings of the 2006
IEEE Symposium on Security and Privacy, SP 06, pages 258263, Washington, DC,
USA. IEEE Computer Society.
[209] Jr., R. C. D., Carver, C., and Ferguson, A. J. (2007). Phishing for user security
awareness. Computers Security.
[210] Juels, A.; Jakobsson, M. J. T. (2006). Cache cookies for browser authentication.
Security and Privacy, 2006 IEEE Symposium on.
[211] Jun Li; Dongting Yu; Maurer, L. (2012). A resource management approach to
web browser security. Computing, Networking and Communications (ICNC), 2012
International Conference on.
[212] Jung, J. K. K. S. S. (2009). Webvaccine: A client-side realtime prevention system
against obfuscated malicious web pages. INC, IMS and IDC, 2009. NCM 09. Fifth
International Joint Conference on.
[213] Junjin, M. (2009). An approach for sql injection vulnerability detection. In Proceedings of the 2009 Sixth International Conference on InformationTechnology: New
Generations, ITNG 09, pages 14111414, Washington, DC, USA. IEEE Computer
Society.
[214] Kai Zhao; Kaji, Y. (2010). Anti-phishing mutual authentication using the visual secret sharing scheme. Information Theory and its Applications (ISITA), 2010
International Symposium on.
[215] Kaneshige, T. (2009). Segurana ameaa reputao do safari. <URL> acesso:
10/12/13.
109
REFERNCIAS BIBLIOGRFICAS
110
REFERNCIAS BIBLIOGRFICAS
111
REFERNCIAS BIBLIOGRFICAS
112
REFERNCIAS BIBLIOGRFICAS
[249] Matsuda, T., K. D. S. M. (2012). Cross site scripting attacks detection algorithm
based on the appearance position of characters. Proceedings of the 5th International
Conference on Communications, Computers and.
[250] Maurer, M.-E., H. L. (2011). Sophisticated phishers make more spelling mistakes:
Using url similarity against. Lecture Notes in Computer Science (including subseries
Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics).
[251] Maurer, M.-E., H. L. (2012). Sophisticated phishers make more spelling mistakes:
Using url similarity against. Lecture Notes in Computer Science (including subseries
Lecture Notes in Artificial.
[252] McAfee (2013). Java zero-day vulnerability pushes out crimeware. <URL> acesso:
10/12/13.
[253] McAllister, N. (2013). Oracle trowels more plaster over flawed java browser plugin.
<URL> acesso: 10/12/13.
[254] Meyer, H. (1997a). Browser bugs raise security concerns. Computers Security.
[255] Meyer, H. (1997b). Securing your users web browsers. Computers Security.
[256] Micha? Chora?, R. K. (2013). Evaluation of various techniques for sql injection
attack detection. Advances in Intelligent Systems and Computing.
[257] MITRE (2009). Capec-103: Clickjacking. <URL> acesso: 10/12/13.
[258] MITRE (2012a). Cwe-525: Information exposure through browser caching.
<URL> acesso: 10/12/13.
[259] MITRE (2012b). Cwe-618: Exposed unsafe activex method. <URL> acesso:
10/12/13.
[260] MITRE (2013a). Common attack pattern enumeration and classification. <URL>
acesso: 10/12/13.
[261] MITRE (2013b). Cwe-601: Url redirection to untrusted site (open redirect).
<URL> acesso: 10/12/13.
[262] MITRE (2013c). Cwe-79: Improper neutralization of input during web page
generation (cross-site scripting). <URL> acesso: 10/12/13.
113
REFERNCIAS BIBLIOGRFICAS
[263] Mook, N. (2006). Cross-site scripting worm hits myspace. <URL> acesso:
10/12/13.
[264] Naik, Umesha; Shivalingaiah, D. (2008). Comparative study of web 1.0, web 2.0
and web 3.0. In CALIBER 2008 Allahabad. IEEE Xplore.
[265] Nakayama, S.; Echizen, I. Y. H. (2009). Preventing false positives in content-based
phishing detection. Intelligent Information Hiding and Multimedia Signal Processing,
2009. IIH-MSP 09. Fifth International Conference on.
[266] Nentwich, F., Jovanovic, N., Kirda, E., ChristopherKruegel, and Vigna, G. (2007).
Cross-site scripting prevention with dynamic data tainting and static analysis. In In
Proceeding of the Network and Distributed System Security Symposium(NDSS07.
[267] Network, M. D. (2013a). About cross-frame scripting and security. <URL> acesso:
10/12/13.
[268] Network, M. D. (2013b). Introducing content security policy. <URL> acesso:
10/12/13.
[269] Niemietz, M. (2011). Ui redressing: Attacks and countermeasures revisited.
Technical report, Ruhr-University of Bochum.
[270] Nikiforakis, N.; Kapravelos, A. J. W. K. C. P. F. V. G. (2013). Cookieless monster:
Exploring the ecosystem of web-based device fingerprinting. Security and Privacy
(SP), 2013 IEEE Symposium on.
[271] Nikiforakis, N., Invernizzi, L., Kapravelos, A., Van Acker, S., Joosen, W., Kruegel,
C., Piessens, F., and Vigna, G. (2012). You are what you include: Large-scale
evaluation of remote javascript inclusions. In Proceedings of the 2012 ACM Conference
on Computer and Communications Security, CCS 12, pages 736747, New York, NY,
USA.
[272] Ntagwabira, L. and Kang, S. (2010). Use of query tokenization to detect and
prevent sql injection attacks. Proceedings - 2010 3rd IEEE International Conference
on Computer Science and Information Technology, ICCSIT 2010.
[273] Nunan, A.E.; Souto, E. d. S. E. F. E. (2012). Automatic classification of cross-site
scripting in web pages using document-based and url-based features. Computers and
Communications (ISCC), 2012 IEEE Symposium on.
114
REFERNCIAS BIBLIOGRFICAS
[274] Ofuonye, E. and Miller, J. (2013). Securing web-clients with instrumented code
and dynamic runtime monitoring. Journal of Systems and Software.
[275] Ofuonye, E.; Miller, J. (2008). Resolving javascript vulnerabilities in the browser
runtime. Software Reliability Engineering, 2008. ISSRE 2008. 19th International
Symposium on.
[276] Ojamaa, A.; Duuna, K. (2012). Assessing the security of node.js platform. Internet
Technology And Secured Transactions, 2012 International Conferece For.
[277] Oliveira, C. K. O. A. O. S. L. S. (2013). Obtaining the threat model for e-mail
phishing. Journal Applied Soft Computing.
[278] OReilly, T. (2005). What is Web 2.0: Design Patterns and Business Models for
the Next Generation of Software. OReilly.
[279] Oriyano, S.-P. and Shimonski, R. (2012). Protecting web browsers. Client-Side
Attacks and Defense.
[280] Orman, H. (2012). Towards a semantics of phish. Security and Privacy Workshops
(SPW), 2012 IEEE Symposium on.
[281] OWASP (2009). Man-in-the-middle attack. <URL> acesso: 10/12/13.
[282] OWASP (2010). Cross site history manipulation (xshm). <URL> acesso: 10/12/13.
[283] OWASP (2011). Testing for cross site scripting. <URL> acesso: 10/12/13.
[284] OWASP (2012a). Owasp antisamy project. <URL> acesso: 10/12/13.
[285] OWASP (2012b). Owasp top ten cheat sheet. <URL> acesso: 10/12/13.
[286] OWASP (2013a). Clickjacking defense cheat sheet. <URL> acesso: 10/12/13.
[287] OWASP (2013b). Clickjacking. <URL> acesso: 10/12/13.
[288] OWASP (2013c). Content security policy. <URL> acesso: 10/12/13.
[289] OWASP (2013d). Cross-site request forgery (csrf). <URL> acesso: 10/12/13.
[290] OWASP (2013e). Cross-site request forgery (csrf) prevention cheat sheet. <URL>
acesso: 10/12/13.
115
REFERNCIAS BIBLIOGRFICAS
116
REFERNCIAS BIBLIOGRFICAS
[305] Qurashi, U.S.; Anwar, Z. (2012). Ajax based attacks: Exploiting web 2.0. Emerging Technologies (ICET), 2012 International Conference on.
[306] Raffetseder, T., Kirda, E., and Kruegel, C. (2007). Building anti-phishing browser
plug-ins: An experience report. In Proceedings of the Third International Workshop
on Software Engineering for Secure Systems, SESS 07, pages 6, Washington, DC,
USA. IEEE Computer Society.
[307] Raichal, S., Soniya, Gayathri, V., and Nedunchelian, R. (2013). Detection and
avoidance of sql injection attack in multi-tier web based application. International
Journal of Engineering and Technology.
[308] Rich Lundeen, Jesse Ou, T. R. (2011). New ways im going to hack your web app.
In New Ways Im Going to Hack Your Web App.
[309] Ritchie, P. (2007). The security risks of ajax/web 2.0 applications. Network
Security.
[310] Ross, B., Jackson, C., Miyake, N., and Boneh, Dan andMitchell, J. C. (2005).
Stronger password authentication using browser extensions. In Proceedings of the
14th Conference on USENIX Security Symposium - Volume 14, SSYM05, pages 22,
Berkeley, CA, USA. USENIX Association.
[311] Rouaix, F. (1996). A web navigator with applets in caml. Computer Networks and
Systems.
[312] Ryck, P. D., Desmet, L., Piessens, F., and WouterJoosen (2012). A security analysis
of emerging web standards - html5 and friends,from specification to implementation.
In SECRYPT, pages 257262.
[313] Saiedian, H.; Broyle, D. (2011). Security vulnerabilities in the same-origin policy:
Implications and alternatives. Computer.
[314] SANS/MITRE (2011). 2011 cwe/sans top 25 most dangerous software errors
<URL> acesso: 10/12/13.
[315] Schmitt, F., Gassen, J., and Gerhards-Padilla, E. (2012). Pdf scrutinizer: Detecting
javascript-based attacks in pdf documents. In Proceedings of the 2012 Tenth Annual
International Conference on Privacy, Security and Trust (PST), PST 12, pages 104
111, Washington, DC, USA. IEEE Computer Society.
117
REFERNCIAS BIBLIOGRFICAS
[316] SCHROEDER, S. (2013). Adobe data breach affects 38 million not 3 million, as
reported. <URL> acesso: 10/12/13.
[317] Schultz, E. E. (2005). Internet explorer security: is there any hope? Network
Security.
[318] Security, N. (1998). Web security for browsers. Network Security.
[319] Security, N. (2001). Browser attacks: can wipe out almost anything? Network
Security.
[320] Security, W. (2013a). Website security statistics report. Technical report, WhiteHat
Security.
[321] Security, W. L. (2013b). How theola malware uses a chrome plugin for banking
fraud. <URL> acesso: 10/12/13.
[322] Seifert, C.; Welch, I. K. P. (2008). Identification of malicious web pages with static
heuristics. Telecommunication Networks and Applications Conference, 2008. ATNAC
2008. Australasian.
[323] Serrhini, M.; Dargham, A. A.-M. A. (2012). Improve security of web browser with
stand-alone e-learning awareness application. Multimedia Computing and Systems
(ICMCS), 2012 International Conference on.
[324] Shabtai, A., Elovici, Y., and Rokach, L. (2012). A Survey of Data Leakage
Detection and Prevention Solutions. Springer Publishing Company, Incorporated.
[325] Shahriar, H. and Zulkernine, M. (2012). Information-theoretic detection of sql
injection attacks. In HASE, pages 4047. IEEE Computer Society.
[326] Shahriar, H.; Zulkernine, M. (2010). Client-side detection of cross-site request forgery attacks. Software Reliability Engineering (ISSRE), 2010 IEEE 21st International
Symposium on.
[327] Shahriar, H., W. K. L.-T. Z. M. (2013). A model-based detection of vulnerable
and malicious browser extensions. Proceedings - 7th International Conference on
Software Security and Reliability, SERE 2013.
[328] Shahriar, H., Z. M. (2012). Trustworthiness testing of phishing websites: A
behavior model-based approach. Future Generation Computer Systems.
118
REFERNCIAS BIBLIOGRFICAS
[329] Shar, L. and Tan, H. (2013). Predicting sql injection and cross site scripting
vulnerabilities through mining input sanitization patterns. Information and Software
Technology.
[330] Shar, L. K. and Tan, H. B. K. (2012). Automated removal of cross site scripting
vulnerabilities in web applications. Information and Software Technology.
[331] Shar, L. K. H. B. K. T. (2012a). Defending against cross-site scripting attacks.
Computer.
[332] Shar, L.K., T. H. (2012b). Auditing the xss defence features implemented in web
application programs. IET Software.
[333] Shar, L.K., T. H. (2013). Predicting sql injection and cross site scripting vulnerabilities through mining input sanitization patterns. Information and Software
Technology.
[334] Shepherd, S. (1996). Lessons learned from security weaknesses in the netscape
world wide web browser. Public Uses of Cryptography., IEE Colloquium on.
[335] Shi, C.-C., Zhang, T., Yu, Y., and Lin, W. (2012). A new approach for sql-injection
detection. Advances in Intelligent and Soft Computing.
[336] Shun-Wen Hsiao; Sun, Y. F.-C. A. M. C. C. (2011). A secure proxy-based crossdomain communication for web mashups. Web Services (ECOWS), 2011 Ninth IEEE
European Conference on.
[337] Siddiqui, M.S.; Verma, D. (2011). Cross site request forgery: A common web
application weakness. Communication Software and Networks (ICCSN), 2011 IEEE
3rd International Conference on.
[338] Silic, M.; Krolo, J. D. G. (2010). Security vulnerabilities in modern web browser
architecture. MIPRO, 2010 Proceedings of the 33rd International Convention.
[339] Silva, C. M. R., Silva, J. L. C. d., Rodrigues, R. B., Campos, G. M. M., Nascimento,
L. M. d., and Garcia, V. C. (2013). Security threats in cloud computing models:
Domains and proposals. In IEEE CLOUD, pages 383389. IEEE.
[340] Skaruz, J.; Seredynski, F. (2009). Intrusion detection in web applications: Evolutionary approach. Computer Science and Information Technology, 2009. IMCSIT 09.
International Multiconference on.
119
REFERNCIAS BIBLIOGRFICAS
120
REFERNCIAS BIBLIOGRFICAS
[353] Sun, J.-H., L. Z.-R. C. H. (2012b). Secure cross-domain communication mechanism for web mashups. Tongxin Xuebao/Journal on Communications.
[354] Sung, Y.-C., C. M.-W. C.-W. H. C.-W. S. S. (2013). Light-weight csrf protection
by labeling user-created contents. Proceedings - 7th International Conference on
Software Security and Reliability, SERE 2013.
[355] Symantec (2010). Web browser plug-in vulnerabilities. <URL> acesso: 10/12/13.
[356] Symantec (2011). Zero-day vulnerabilities. <URL> acesso: 10/12/13.
[357] Symatec (2013). Fake browser update site installs malware. <URL> acesso:
10/12/13.
[358] Tajpour, A., Masrom, M., Heydari, M., and Ibrahim, S. (2010). Sql injection
detection and prevention tools assessment. Proceedings - 2010 3rd IEEE International
Conference on Computer Science and Information Technology, ICCSIT 2010.
[359] Takesue, M. (2008). A protection scheme against the attacks deployed by hiding
the violation of the same origin policy. Emerging Security Information, Systems and
Technologies, 2008. SECURWARE 08. Second International Conference on.
[360] Takesue, M. (2009). An http extension for secure transfer of confidential data.
Networking, Architecture, and Storage, 2009. NAS 2009. IEEE International Conference on.
[361] Tan, H. H. S. Z. J. (2009). Browser-side countermeasures for deceptive phishing
attack. Information Assurance and Security, 2009. IAS 09. Fifth International Conference on.
[362] Target (2013). Target confirms unauthorized access to payment card data in
u.s.stores. <URL> acesso: 10/12/13.
[363] Team, A. B. C. J. C. R. G. C. (2009). The security architecture of the chromium
browser. In Magazine Communications of the ACM - A Blind Persons Interactionwith
Technology.
[364] TecMundo (2013a). Facebook: como saber se sua conta foi infectada pelo clickjacking. <URL> acesso: 10/12/13.
121
REFERNCIAS BIBLIOGRFICAS
[365] TecMundo (2013b). Google bloqueia instalao de apps externos chrome web
store. <URL> acesso: 10/12/13.
[366] Tecnologia, T. (2009). Falha no internet explorer permite invaso de hackers.
<URL> acesso: 10/12/13.
[367] Ter Louw, M.; Venkatakrishnan, V. (2009). Blueprint: Robust prevention of crosssite scripting attacks for existing browsers. Security and Privacy, 2009 30th IEEE
Symposium on.
[368] Thomas, K., G. C. M. J. P. V. S. D. (2011). Design and evaluation of a real-time
url spam filtering service. Proceedings - IEEE Symposium on Security and Privacy.
[369] Toubiana, V., Verdot, V., and Christophe, B. (2012). Cookie-based privacy issues
on google services. In Proceedings of the Second ACM Conference on Data and
Application Security and Privacy, CODASPY 12, pages 141148, New York, NY,
USA. ACM.
[370] Trampus, M.; Ciglaric, M. P. M. V. T. (2003). Are e-commerce users defenceless?
Intelligence and Lecture Notes in Bioinformatics).
[371] TRENDMicro (2011). The basics of web threats. Technical report, TRENDMicro.
[372] TRENDMicro (2013). Malware hijacks social media accounts via browser add-ons.
<URL> acesso: 10/12/13.
[373] Urien, P. (2000). Internet card, a smart card as a true internet node. Computer
Communications.
[374] V., S. C. and Selvakumar, S. (2011). Bixsan: Browser independent xss sanitizer
for prevention of xss attacks. SIGSOFT Softw. Eng. Notes, 36(5), 17.
[375] Van Acker, S., De Ryck, P., Desmet, L., Piessens, F., and Joosen, W. (2011).
Webjail: Least-privilege integration of third-party components in web mashups. In
Proceedings of the 27th Annual Computer Security Applications Conference, ACSAC
11, pages 307316, New York, NY, USA.
[376] Van Acker, S., Nikiforakis, N., Desmet, L., Joosen, W., and Piessens, F. (2012).
Flashover: Automated discovery of cross-site scripting vulnerabilities in rich internet
applications. In Proceedings of the 7th ACM Symposium on Information, Computer
and Communications Security, ASIACCS 12, pages 1213, New York, NY, USA.
122
REFERNCIAS BIBLIOGRFICAS
123
REFERNCIAS BIBLIOGRFICAS
[389] Walden, J., Doyle, M., Lenhof, R., Murray, J., and Plunkett, A. (2010). Impact of
plugins on the security of web applications. In Proceedings of the 6th International
Workshop on Security Measurements and Metrics, MetriSec 10, pages 1:11:8, New
York, NY, USA. ACM.
[390] Wang, A. C. A. M. T. K. H. J. (2013a). Lightweight server support for browserbased csrf protection. WWW 13 Proceedings of the 22nd international conference on
World Wide Web.
[391] Wang, C. Y. H. (2008). Anti-phishing in offense and defense. Computer Security
Applications Conference, 2008. ACSAC 2008. Annual.
[392] Wang, H. J., Fan, X., Howell, J., and Jackson, C. (2007). Protection and communication abstractions for web browsers in mashupos. SIGOPS Oper. Syst., 41(6),
116.
[393] Wang, J., Xiao, N., and Rao, H. R. (2012). An exploration of risk information
search via a search engine: Queries and clicks in healthcare and information security.
Decision Support Systems.
[394] Wang, Pingjian; Wang, L. X. J. L. P. G. N. J. J. (2013b). Mjblocker: A lightweight
and run-time malicious javascript extensions blocker. Software Security and Reliability
(SERE), 2013 IEEE 7th International Conference on.
[395] Wang, Z. L. K. Z. X. (2010). Mash-if: Practical information-flow control within
client-side mashups. Dependable Systems and Networks (DSN), 2010 IEEE/IFIP
International Conference on.
[396] Wassermann, G. Z. S. (2008). Static detection of cross-site scripting vulnerabilities.
Software Engineering, 2008. ICSE 08. ACM/IEEE 30th International Conference on.
[397] Watanabe, T.; Zixue Cheng; Kansen, M. H. M. (2010). A new security testing
method for detecting flash vulnerabilities by generating test patterns. Network-Based
Information Systems (NBiS), 2010 13th International Conference on.
[398] Watanabe, T., Cheng, Z., Kansen, M., and Hisada, M. (2010). A new security
testing method for detecting flash vulnerabilitiesby generating test patterns. In T. Enokido, F. Xhafa, L. Barolli, M. Takizawa, M. Uehara, and A. Durresi, editors, NBiS,
pages 469474. IEEE Computer Society.
124
REFERNCIAS BIBLIOGRFICAS
125
REFERNCIAS BIBLIOGRFICAS
[411] Yue Wang; Agrawal, R. B.-Y. C. (2008). Light weight anti-phishing with user
whitelisting in a web browser. Region 5 Conference, 2008 IEEE.
[412] Zarandioon, S.; Danfeng Yao; Ganapathy, V. (2008). Omos: A framework for
secure communication in mashup applications. Computer Security Applications
Conference, 2008. ACSAC 2008. Annual.
[413] Zavou, A., A. E. P. G. K. A. (2012). Exploiting split browsers for efficiently protecting user data. Proceedings of the ACM Conference on Computer and Communications
Security.
[414] Zhang, S. C. Z. M. Y.-M. W. M. (2009). Pretty-bad-proxy: An overlooked
adversary in browsers https deployments. Security and Privacy, 2009 30th IEEE
Symposium on.
[415] Zhengqin Luo; Rezk, T. (2012). Mashic compiler: Mashup sandboxing based on
inter-frame communication. Computer Security Foundations Symposium (CSF), 2012
IEEE 25th.
126
A
Apndice
127
<html><head>
<script src="http://code.jquery.com/jquery-latest.js</script>
<script src="https://dl.dropboxusercontent.com
/u/XXX/jquery.xdomainajax.js
</script><script type="text/javascript
$.ajax({url: http://servicoexterno.com.br/exemplo.html, type: GET,
success: function(res) {
var conteudo = $(res.responseText).text();
$("#resposta").html(conteudo);}});
</script></head><body><div id="resposta</div></body></html>
128
Aplicaes
A1
A2
A3
A4
A5
A6
A7
A8
A9
Acunetix Vulnweb
BadStore
Cyclone Transfers
EeSafe.org
EnigmaGroup
Exploit- DB
Google Gruyere
Hackxor
Hacme Apps
Moth
Mutillidae
OWASP Hackademic
OWASP SiteGenerator
OWASP Vicnum
PCTechtips Challenge
Peruggia
Stanford SecuriBench
WackoPicko
Watchfire
WebMaven/Buggy Bank
129
Extenses
Navegador
Verso
Aegis
Chrome / Firefox
ND
Chrome
9.0.2006.45
Anti-Phishing
Firefox
1.0
Clickjacking Reveal
Firefox
1.1
Clickjacking Test
Chrome
1.0
CSRF Finder
Firefox
1.2
ImmuniWeb Self-Fuzzer
Firefox
0.9.3
Netcraft Extension
Chrome / Firefox
1.3.0 / 1.8.3
Firefox
2.6.8.5
RequestPolicy
Firefox
0.6.28
RightClickXSS
Firefox
0.2.1
Safe Preview
Chrome / Firefox
2.0.0 / 1.1.2
ScriptSafe
Chrome
1.0.6.16
SQL Inject Me
Firefox
0.4.7
TamperMonkey
Chrome
3.7.3703
Toogle Cookies
Firefox
0.7.4
Chrome / Firefox
2.3.1 / 20131118
Websecurify
Chrome
4.0.0
XSS chef
Chrome
1.0
XSS Me
Firefox
0.4.6
Chrome
1.1.9
130
B
Anexo
131
1994
1[83]
1999
1[300],
3[120]
2[195],
1995
1[341], 2[151]
1996
1[334],
3[311]
2[228],
2000
1[63],
3[103]
2001
1[319],
3[399],
5[76]
2[403],
4[236],
2004
1[350], 2[118], 3[154],
4[94], 5[57], 6[86]
2[373],
2005
1[163], 2[229], 3[317],
4[221], 5[166]
1997
1[254],
3[72]
2[255],
1998
1[64],
3[167],
5[318]
2002
1[296],
3[99]
2[112],
2003
1[61],
2[370],
3[380], 4[73]
2006
1[210], 2[223], 3[342],
4[101], 5[207]
2[198],
4[245],
2007
1[209], 2[309], 3[168],
4[75], 5[164], 6[193],
7[217], 8[204], 9[95]
2008
1[391], 2[359], 3[104], 4[412],
5[206], 6[49], 7[322], 8[187],
9[188], 10[411], 11[50], 12[158],
13[275], 14[156], 15[396],
16[218]
2009
1[179], 2[340], 3[414], 4[265],
5[242], 6[205], 7[240], 8[360],
9[184],
10[128],
11[117],
12[367], 13[361], 14[212],
15[222]
2010
1[122], 2[56], 3[97], 4[123],
5[232], 6[272], 7[299], 8[358],
9[402],
10[162],
11[326],
12[404],
13[214],
14[197],
15[133],
16[196],
17[304],
18[71],
19[407],
20[148],
21[142], 22[397], 23[408],
24[395], 25[88], 26[78], 27[91],
28[338], 29[199], 30[147],
31[67], 32[107]
2011
1[159], 2[244], 3[303], 4[84],
5[129], 6[313], 7[46], 8[132],
9[161], 10[368], 11[116], 12[59],
13[145], 14[108], 15[336],
16[85], 17[134], 18[345], 19[62],
20[169],
21[66],
22[400],
23[346], 24[297], 25[410],
26[90],
27[337],
28[144],
29[146], 30[344], 31[54], 32[58],
33[219], 34[250], 35[93], 36[53],
37[343]
2012
1[160], 2[405], 3[413], 4[130],
5[237], 6[393], 7[330], 8[70],
9[89], 10[335], 11[279], 12[331],
13[276], 14[273], 15[149],
16[55],
17[352],
18[226],
19[353], 20[305], 21[211],
22[249], 23[387], 24[349],
25[409], 26[328], 27[239],
28[51],
29[415],
30[323],
31[251], 32[302], 33[332],
34[227],
35[96],
36[175],
37[192], 38[235], 39[280]
2013
1[382], 2[220], 3[388], 4[394],
5[177], 6[256], 7[74], 8[202],
9[87], 10[354], 11[270], 12[406],
13[81],
14[274],
15[243],
16[348],
17[390],
18[224],
19[307],
20[329],
21[327],
22[65],
23[233],
24[173],
25[69], 26[347], 27[52], 28[277],
29[333]
132