aegis: um modelo de proteção à dados sensíveis em ambientes client-side (apresentação)

Upload: vinicius-cardoso-garcia

Post on 18-Oct-2015

61 views

Category:

Documents


0 download

DESCRIPTION

Trabalho apresentado ao Programa de Pós-graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre em Ciência da Computação.Resumo: Os Navegadores Web, do inglês, Web Browsers, são ferramentas de extrema importância no que diz respeito ao consumo de informações na internet, consequentemente são os softwares dos quais os usuários utilizam a maior parte do tempo, sejam domésticos ou corporativos. Com o passar dos anos, a forma do que estava sendo publicado na web foi evoluindo, o que antes era estático e apenas leitura, agora se apresenta como um cenário onde os internautas e serviços interagem, compartilhando informações em uma grande variedade de cenários, como e-mail, redes sociais e comércio eletrônico, tornando-se então em um ambiente dinâmico e colaborativo.Em meio ao advento da web, foram surgindo possibilidades para prestadores de serviços especializados, como bancos ou fontes pagadoras de transações comerciais, dos quais através da internet encontraram oportunidades para disponibilizarem seus serviços com alta disponibilidade, possibilitando que seus clientes consigam utilizar seus serviços através de um browser. O resultado disso é uma série de benefícios, como redução de filas, interatividade, foco no domínio, que podemos traduzir em uma palavra: comodidade.Não obstante, em consequência ao seu advento, a web se apresenta como um ambiente cada vez mais hostil, onde pessoas mal-intencionadas executam crimes cibernéticos, dos quais visam roubar ou adulterar informações sigilosas dos usuários da web, violando os dados do usuários. Essas atividade ilícitas muitas vezes são executadas através de ataques que exploram fatores como Engenharia Social, Falhas nas Aplicações Web ou Vulnerabilidades no Browser do usuário. Estes vetores de ataques apresentam-se em diversas formas: capturando entradas dos usuários, forjando sites oficiais, injeção de scripts maliciosos, propagação de Malwares, entre outros. Com o dinamismo da web, o processo de controle destes vetores de ataque torna-se cada vez mais difícil, e como a tendência da web é manter-se em constante evolução, estas ameaças tornam-se uma preocupação contínua.Nesta pesquisa é proposta uma ferramenta, intitulada Aegis, como modelo de proteção para interagir diretamente no browser do usuário, buscando minimizar os ataques mencionados através de uma solução puramente cliente-side. Para isso, foram realizados estudos e revisão na literatura sobre o tema, buscando uma justificativa bem fundamenta para as decisões e técnicas aplicadas. Adicionalmente, são apresentados os resultados obtidos na avaliação da Aegis em conjunto com demais ferramentas relacionadas.Palavras-chave: Segurança da Informação, Vulnerabilidades em Aplicações Web, Vulnerabilidades em Navegadores Web, Proteção à Fraudes.

TRANSCRIPT

Apresentao do PowerPoint

Aegis: Um Modelo de Proteo Dados Sensveis em Ambientes Client-SideAluno: Carlo Marcelo Revoredo da Silva([email protected])

Orientador: Vinicius Cardoso Garcia([email protected])

25 de Fevereiro de 2014CIn.ufpe.brnAgendaMotivao;Definio do Problema;Objetivos Gerais e Especficos;Reviso Sistemtica da Literatura;Abordagem da PropostaAvaliaoConclusoCIn.ufpe.brn1. MotivaoCIn.ufpe.brnMotivao

O Advento da Web [Mashable, 2013]CIn.ufpe.brnMotivao Os Navegadores Web

CIn.ufpe.brnMotivaoNavegador Web: Grandes Poderes, Grandes Responsabilidades

Arquitetura de um Navegador Web [Adaptado de HTML5Rocks, 2011]CIn.ufpe.brnMotivao

A popularidade dos Navegadores Web [W3Schools, 2013]CIn.ufpe.brn

MotivaoAs Oportunidades OferecidasCIn.ufpe.brn82. Definio do ProblemaCIn.ufpe.brnDefinio do ProblemaViolao de Dados Sensveis

Violao de DadosRoubo ou perda acidental de dados sensveis

Dados SensveisDados que possuem seu acesso restrito pessoas autorizadas[Allen, 2001]CIn.ufpe.brn10Definio do ProblemaVetores de Ataques na WebMtodos que um usurio malicioso utiliza para atacar uma determinada aplicao ou servio web;Ataques baseados na WebQualquer ataque realizado por uma aplicao ou pessoa, seja de forma proposital (Maliciosa) ou no intencional (sob Vulnerabilidades), contra uma aplicao cliente, e que resulta em algum tipo de Ameaa.AmeaaQualquer evento, circunstncia ou pessoa que possa causar danos, exemplo da Violao de Dados Sensveis.[SANS/MITRE , 2011]CIn.ufpe.brn

Definio do ProblemaServer-SideClient-sideNavegador WebServio BServio 2Servio 1

Servio ANavegador WebDadoDadoDadoDadoVulnerabilidades em Aplicaes WebDadoDadoVulnerabilidades no Navegador Web

DadoEngenharia Social

Servio BForjadoDadoDadoDadoNavegador WebServio ADadoDadoCIn.ufpe.brn123. ObjetivosCIn.ufpe.brnObjetivo GeralPropor a elaborao de um mecanismo que minimize os vetores de ataques relacionados Violao de Dados Sensveis em ambientes Client-Side;CIn.ufpe.brn14Objetivos EspecficosElaborar uma Reviso Sistemtica da Literatura (RSL) a fim de discutir o estado atual das principais tcnicas de ataque e defesa dos principais vetores Client-Side;

Apresentar uma Proposta com base nos resultados da RSL que auxilie o navegador web a oferecer maior segurana ao usurio sobre a tica de violao de dados sensveis;

Realizar uma avaliao da Proposta em conjunto com trabalhos relacionados e discutir os resultados obtidos;CIn.ufpe.brn15Fora do EscopoAtaques que envolvam consequncias de disponibilidadeDenial of Service;Buffer Overflow;

Solues que envolvam boas prticas de implementaoMetodologias de Desenvolvimento Seguro;Anlise de Cdigo Fonte (Testes de Caixa Branca);Componentes aplicveis nvel de implementao

CIn.ufpe.brn164. Reviso Sistemtica da LiteraturaCIn.ufpe.brnReviso Sistemtica da LiteraturaContextualizao da Pesquisa

CIn.ufpe.brn18Reviso Sistemtica da LiteraturaClassificao das Causas (Ameaas), Vetores e Ataques

CIn.ufpe.brn19Reviso Sistemtica da LiteraturaResultado da Triagem

CIn.ufpe.brn20Reviso Sistemtica da LiteraturaPrincipais Tcnicas de Ataque e DefesaA1 (XSS)Tcnicas de Ataque: Forma direta [MITRE 2013]; Evaso de Filtro [OWASP, 2013]Tcnicas de Defesa: Anlise esttica [Wassermann, 2008]; Padres de comportamento [Bates et al, 2010]; Proxy Reverso [Kirda et al, 2006]; Preveno Evaso nos Filtros [Venkatakrishnan et al 2010]; Data Flow Analysis [Nentwich, 2007]A2 (SQLi)Tcnicas de Ataque: Manipulao em parmetros (GET ou POST) [MITRE, 2011] [OWASP,2013]Tcnicas de Defesa: Idem XSS [Fu et al, 2007];A3 (Clickjacking)Tcnicas de Ataque: Sobreposio em elementos na tela; Manipulao de Frames; [SANS/MITRE, 2011]Tcnicas de Defesa: diretivas de segurana atravs de cabealhos HTTP (CSP [W3C, 2012], X-FRAME-OPTIONS [Rydstedt et al, 2010]);CIn.ufpe.brn21Reviso Sistemtica da LiteraturaPrincipais Tcnicas de Ataque e DefesaA4 (Redirecionamentos e Encaminhamentos Invlidos)Ataque: Encaminhamentos: Links para Phishing ou Malwares;Redirecionamentos: http://www.aplicacao.com/login?redirect=http://www.evil.com [CERT, 2008]Defesa: Confiabilidade no Domnio (www.bb.com.br => www.bb.b.br);Restrio atravs de BlackList ou WhiteList; [CERT, 2008]A5 (Complementos Maliciosos)Ataque: Atravs de plug-ins; Atravs de Extenses; [TRENDMicro, 2013]Defesa: Polticas de restries de complementos de terceiros; [Guha et al, 2011]CIn.ufpe.brn22Reviso Sistemtica da LiteraturaPrincipais Tcnicas de Ataque e DefesaA6 (Exposio de Dados Sensveis)Ataque: Ausncia ou falhas nas polticas de segurana da aplicaoCriptografia, gesto das sesses, brechas para Man-in-The-Middle; [OWASP, 2013]Armazenamentos Inapropriados; [HTML5Sec, 2013]Defesa: Camadas de Trfego seguro [Jackson et al, 2008]; Conformidades [US Govermment, 2010];A7 (Utilizao de Compl. Com Vulnerabilidades)Ataque: Vulnerabilidades em Complementos nativos do navegador; Vulnerabilidades em complementos de terceiros; ZeroDay; [SANS/MITRE, 2011]Defesa: Bloqueio de Recursos depreciados; Atualizaes peridicas do navegador; Atualizaes peridicas dos complementos de terceiros [Florian, 2012];CIn.ufpe.brn23Reviso Sistemtica da LiteraturaPrincipais Tcnicas de Ataque e DefesaA8 (CSRF)Ataque: Manipulao em parmetros (GET e POST) [OWASP, 2013]Defesa: Atravs de elementos persistentes na aplicao (Injeo de CSRF persistente: , , etc...) [Wang, 2013]A9 (Falhas nas PMO)Ataque: Explorando XmlHttpRequest; API ou Mashups no confiveis [Ben-Itzhak, 2013], Exposio de Cookies entre domnios [Lundeen, 2013]; Defesa: Diretivas de segurana atravs de cabealhos HTTP; [Gentile, 2013]Cross-Origin Resource Sharing (CORS); [W3C, 2013]CIn.ufpe.brn24Reviso Sistemtica da LiteraturaCombinao de Vetores x Ataques

CIn.ufpe.brn25Reviso Sistemtica da LiteraturaPrincipais Grupos de Pesquisa e Trabalhos CorrelatosBina et al;Primeira publicao (1994);Jackson et al;13 publicaes;Kirda et al;5 publicaes;Gajek et al; & Heiderich et al;11 publicaes;Piessens et al;13 publicaes;CIn.ufpe.brn26Reviso Sistemtica da LiteraturaConsideraes FinaisProteo Client-Side em considervel projeo de crescimento;

Cronologia das publicaes (225)1771137CIn.ufpe.brn27Reviso Sistemtica da LiteraturaConsideraes FinaisConsidervel nmero de publicaes relacionadas A1, A2 e A6;Carncia em publicaes relacionadas Fraudes (A3, A4 e A5);

Publicaes x Ataques x AnosCIn.ufpe.brn285. Abordagem da PropostaCIn.ufpe.brn29Abordagem da PropostaCenrio da Extenso Aegis

CIn.ufpe.brn30Abordagem da Proposta

Interface da Extenso AegisCIn.ufpe.brn31Abordagem da Proposta

Arquitetura do Servio ExternoCIn.ufpe.brn32Abordagem da PropostaFiltro de A1 (XSS)

CIn.ufpe.brn33Abordagem da PropostaFiltro de A2 (SQLi) 1/2

CIn.ufpe.brn34Abordagem da PropostaFiltro de A2 (SQLi) 2/2

CIn.ufpe.brn35Abordagem da PropostaFiltros de Fraude: Sub-rotina Anti-Phishing

CIn.ufpe.brn36Abordagem da PropostaFiltro A3 (Clickjacking)

CIn.ufpe.brn37Abordagem da PropostaFiltro A4 (Redirecionamentos ou Encaminhamentos Invlidos)

CIn.ufpe.brn38Abordagem da PropostaFiltro A5 (Complementos Maliciosos) 1/2

CIn.ufpe.brn39Abordagem da PropostaFiltro A5 (Complementos Maliciosos) 2/2

CIn.ufpe.brn40Abordagem da PropostaFiltro A6 (Exposio de Dados Sensveis) 1/3

CIn.ufpe.brn41Abordagem da PropostaFiltro A6 (Exposio de Dados Sensveis) 2/3

CIn.ufpe.brn42Abordagem da PropostaFiltro A6 (Exposio de Dados Sensveis) 3/3

CIn.ufpe.brn43Abordagem da PropostaFiltro A7 (Utilizao de Componentes Vulnerveis Conhecidos)

CIn.ufpe.brn44Abordagem da PropostaFiltro A8 (CSRF) 1/2

CIn.ufpe.brn45Abordagem da PropostaFiltro A8 (CSRF) 2/2

CIn.ufpe.brn46Abordagem da PropostaFiltro A9 (Falhas nas PMO)

CIn.ufpe.brn47Abordagem da PropostaLimitaesExtenso para IE;Fator Humano;

Consideraes FinaisInterceptar Comportamentos para medir Reputao;Limitao de Recursos do Navegador;

CIn.ufpe.brn48Abordagem da PropostaFerramentas Correlatas (20)ExtensesA1A2A3A4A5A6A7A8A9Navegadoravast! Online Security [23]OOOXXOOOOChromeAnti-Phishing [24]OOOXOOOOOFirefoxClickjackingReveal [25]OOXOOOOOOFirefoxClickjacking Test [26]OOXOOOOOOChromeCSRF Finder [27]OOOOOOOXOFirefoxImmuniWeb Self-Fuzzer [28]XXOOOOOOOFirefoxNetcraftExtension [29]XOOXOXOOOChrome e FirefoxNo-Script Security Suite [30]XOXOOXOXOFirefoxRequestPolicy [31]OOOXOXOXXFirefoxRightClickXSS [32]XOOOOOOOOFirefoxSafe Preview [33]OOOOXOOOOChrome e FirefoxScriptSafe [34]XOOXOXOOOChromeSQL Inject Me [35]OXOOOOOOOFirefoxTamperMonkey [36]XOOXOXOOOChromeToogle Cookies [37]OOOOOXOOOFirefoxWeb ofTrust (WOT) [38]OOOXXOOOOChrome e FirefoxWebsecurify [39]XXOOOXOXXChromeXSS chef [40]XOOOOOOOOChromeXSS Me [41]XOOOOOOOOFirefoxZscalerLikejackingPrevention [42]OOXOOOOOOChromeCIn.ufpe.brn496. AvaliaoCIn.ufpe.brnAvaliaoMetodologia: GQM [Basili & Caldiera, 1994]

CIn.ufpe.brn51Ambientes Controlados DisponveisAplicaesA1A2A3A4A5A6A7A8A9Acunetix VulnwebXXOOOOOOOBadStoreXXOOOOOOOCenzic (CrackMe Bank)XXOOOOOOOCyclone TransfersXXOOOXOOODamn Vulnerable Web ApplicationXXOOOOOOOEeSafe.orgXXOOOOOOOEnigmaGroupXXOOOOOOOExploit- DBOXOOOOOOOExploit KB Vulnerable Web AppOXOOOOOOOGoogle GruyereXXOOOXOXOHackxorXXOOOOOXOHacme AppsXXOOOXOOOMothXXOOOOOOOMutillidaeXXOOOXOOOOWASP HackademicXXOOOOOOOOWASP SiteGeneratorXXOOOOOOOOWASP VicnumXXOOOXOOOOWASP Web GoatXXOOOXOXXPCTechtips ChallengeOXOOOOOOOPeruggiaXXOOOXOXOStanford SecuriBenchXXOOOXOOOThe Bodgeit StoreXXOOOXOXOThe Butterfly Security ProjectXXOOOXOOOWackoPickoXXOOOXOOOWatchfireXXOOOOOOOWeb Security DojoXOOOOOOOOWebMaven/Buggy BankXXOOOOOOOXSS Encoding Skills x5sXOOOOOOOOCIn.ufpe.brn52AvaliaoExecuo dos Testes Unitrios

CIn.ufpe.brn53AvaliaoResultados Obtidos (Q1)

CIn.ufpe.brn54AvaliaoResultados Obtidos (Q2)

CIn.ufpe.brn55AvaliaoResultados Obtidos (Q3)

CIn.ufpe.brn56AvaliaoResultados Obtidos (Q4)

CIn.ufpe.brn57AvaliaoResultados Obtidos (Q5)

CIn.ufpe.brn58AvaliaoResultados Obtidos (Q6)

CIn.ufpe.brn59AvaliaoResultados Obtidos (Q7)

CIn.ufpe.brn60AvaliaoResultados Obtidos (Q8)

CIn.ufpe.brn61AvaliaoResultados Obtidos (Q9)

CIn.ufpe.brn62AvaliaoLimitaesPlenitude nos aspectos abordados;Resultados mais quantitativos;Ausncia de anlise comparativa na Q7;Ausncia nos testes para o IE;CIn.ufpe.brn63AvaliaoConsideraes FinaisEm relao ao estudo propostoA ferramenta Aegis teve bons resultados em ambos os navegadores;Em relao ao contexto geralCarncia nas solues atuais quanto as prevenes em ataques A2, A3, A5 e A9;Ausncia quanto a preveno de ataques A7;CIn.ufpe.brn647. ConclusoCIn.ufpe.brnConclusoSolues baseadas em proteo Client-Side;A proposta apresentou resultados satisfatrios quando imersa em um ambiente controlado;A proposta buscou atuar atravs de um modelo que prioriza o maior nvel de interao com a navegao;

CIn.ufpe.brn66ConclusoContribuiesReviso na literatura sobre os principais ataques em nvel Client-Side;Abordagem de um modelo de proteo que busca minimizar os principais vetores atuantes em ambientes Client-Side;Um ambiente controlado que proporciona uma avaliao mais ampla em comparao com os ambientes disponveis atualmente;CIn.ufpe.brn67ConclusoContribuiesDurante o desenvolvimento das pesquisas, foi possvel promover debates e artigos cientficos em conferncias nacionais e internacionais a respeito de certos aspectos abordados neste estudo (A9), a saber;SafeMash: Uma Plataforma como Servio para a Composio Segura e Colaborativa de Mashups WTDSI - SBSI 2013An Approach for Secure Mashup Composition IADIS 2013SafeMash: A Platform for Safety Mashup Composition WEBIST 2014CIn.ufpe.brn68ConclusoLimitaes da PropostaFiltro A2Anlise de maior profundidade;Filtro A5Transferncias de arquivos;Filtro A7Carece de boa funcionalidade;CIn.ufpe.brn69ConclusoTrabalhos FuturosMelhorias quanto aos Falsos PositivosFator humano;Execuo em Isolamento;EsteganografiaArquivos de Imagens com cdigos maliciosos em seu meta-dados;Notificao de VulnerabilidadesNotificar os proprietrios de sites ou servios vulnerveis;Melhoria no desempenho dos filtrosGanho de performance com nova verso do webRequest (Chrome);Aegis como uma API para desenvolvimento seguro;CIn.ufpe.brn70RefernciasMashable, 2013: http://mashable.com/2013/10/17/internet-users-1996/?utm_cid=mash-com-g+-pete-photoHTML5Rocks, 2013: http://www.html5rocks.com/en/tutorials/internals/howbrowserswork/W3Schools, 2013: http://www.w3schools.com/browsers/browsers_stats.aspAllen, 2001: The CERT guide to system and network security practices. series in software engineering. Addison-Wesley.SANS/MITRE, 2011: cwe/sans top 25 most dangerous software errorsMITRE, 2013: Common attack pattern enumeration and classification.OWASP, 2013: Owasp top ten project 2013. Technical reportWassermann, G. Z. S. (2008). Static detection of cross-site scripting vulnerabilities. Software Engineering, 2008. ICSE 08. ACM/IEEE 30th International Conference onCIn.ufpe.brn71RefernciasBates, 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.Kirda, E., K. C. V. G. J. N. (2006). Noxes: A client-side solution for mitigating cross-site scripting attacks. Proceedings of the ACM Symposium on Applied Computing.Venkatakrishnan, V. N., Bisht, P., Louw, M. T., Zhou, M., Gondi, K., and Ganesh, K. T. (2010). Webapparmor: A framework for robust prevention of attacks on webapplications. In Proceedings of the 6th International Conference on Information Systems Security, ICISS10, pages 326, Berlin, Heidelberg. Springer-Verlag.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.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.CIn.ufpe.brn72RefernciasW3C (2012). Content Security Policy 1.0: http://www.w3.org/TR/CSP/Gustav Rydstedt, Elie Bursztein, D. B. and Jackson, C. (2010). Busting frame busting: a study of clickjacking vulnerabilities at popular sites. IEEE Oakland Web 2.0 Security and Privacy Workshop.CERT, 2008. Securing your web browser.TRENDMicro (2013). Malware hijacks social media accounts via browser add-ons.Guha, A.; Fredrikson, M. L. B. S. N. (2011). Verified security for browser extensions. Security and Privacy (SP), 2011 IEEE Symposium on.HTML5Sec (2013). Html5 security cheatsheet.Jackson, C. and Barth, A. (2008). Forcehttps cookies: A defense against eavesdroppingand pharming. 17th International World Wide Web Conference.Information, U. G. (2010). HIPAA, 2010: Public law 111148mar. 23, 2010. Technical report, US Govermment Information.

CIn.ufpe.brn73RefernciasFlorian, C. (2012). Web browser war, security battle in 2011. Wang, A. C. A. M. T. K. H. J. (2013). Lightweight server support for browserbased csrf protection. WWW 13 Proceedings of the 22nd international conference on World Wide Web.Ben-Itzhak, Y. (2013). Welcome to the malware-as-a-service business model.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.Gentile, M. (2013). Client-side security in the modern web. Technical report, Minded Security.W3C (2013a). Cross-origin resource sharing.Victor R. Basili, G. C. and Rombach, H. D. (1994). Goal Question MetricParadigm. Encyclopedia of Software Engineering.CIn.ufpe.brn74Obrigado!Aluno: Carlo Marcelo Revoredo da Silva([email protected])

Orientador: Vinicius Cardoso Garcia([email protected])

25 de Fevereiro de 2014CIn.ufpe.brn