Your SlideShare is downloading. ×
"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Diretor técnico do Grupo Clavis Segurança da Informação
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Diretor técnico do Grupo Clavis Segurança da Informação

1,673
views

Published on

"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Diretor técnico do Grupo Clavis Segurança da Informação

"Atacando e Defendendo Aplicações Web" por Rafael Soares Ferreira, Sócio-Diretor técnico do Grupo Clavis Segurança da Informação

Published in: Technology, News & Politics

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,673
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
147
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Atacando (e protegendo) aplicações webRafael Soares FerreiraClavis Segurança da Informaçãorafael@clavis.com.br Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 2. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.• InjeçõesOWASP Top 10 2010 - A1OWASP Top 10 2007 - A2• Cross Site Scripting (XSS)OWASP Top 10 2010 - A2OWASP Top 10 2007 - A1 Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 3. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções• Dados não esperados• Strings interpretadas como comandos• SQL, Shell, LDAP, etc...• SQL é o caso mais comum Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 4. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - Exemplos Client-Side: <form method="post" action="http://SITE/login.php"> <input name="nome" type="text" id="nome"> <input name="senha" type="password" id="senha"> </form> Server-Side: SELECT id FROM usuarios    WHERE nome = $nome      AND senha = $senha ; Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 5. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - Exemplos Client-Side: O Exploit!  OR a=a Server-Side: SELECT id FROM usuarios    WHERE nome = $nome      AND senha =  OR a=a ; Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 6. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - ExemplosCódigo PHP:$query = "SELECT * FROM usuarios WHERE username =" . $_REQUEST[‘usr] . “’ AND passwd=‘“ . $_REQUEST[‘pwd’] . “’”;Exploração:login.php?usr=’+OR+‘1’=‘1’--&pwd=aquery <- SELECT * FROM usuarios WHERE username =‘’+OR+‘1’=‘1’--’ AND passwd=‘a’ Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 7. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - ExemplosCódigo Java:String query = "SELECT * FROM usuarios WHEREusername = " + req.getParameter("usr") + " andpasswd = " + req.getParameter("pwd") +"";Exploração:login.jsp?usr=admin’--&pwd=aquery <- SELECT * FROM usuarios WHERE username =‘admin’--’ AND passwd=‘a’ Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 8. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - Exemplos www.seginfo.com.br Tradução da Tirinha “Exploits of a mom” do xkcd Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 9. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - Exemplos• Injeção de Comandos• Exemplo:DNS lookup em domínios passados pelousuário Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 10. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - ExemplosCódigo:$dominio = param(‘dominio);$nslookup = "/usr/bin/nslookup";Exploit:clavis.com.br%20%3B%20/bin/ls%20-l Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 11. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - ExemplosResultado:/usr/bin/nslookup clavis.com.br ; /bin/ls -lAlém do resultado do nslookup, oatacante receberá a lista dos arquivosque estão no diretório da aplicação Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 12. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Injeções - Recomendações● Tratamento de entradas● Validação por whitelist● Minimize os privilégios●OWASP:SQL_Injection_Prevention_Cheat_Sheet Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 13. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS)• Enviados ao browser do usuário• Posts, URLs, javascript, etc...• Todo Browser é “vulnerável”:javascript:alert(document.cookie)• Redirecionamento e/ou roubo de dados Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 14. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS) Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 15. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS)Tipos:• Persistente• Não Persistente Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 16. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS)• PersistenteDados enviados sem tratamento parausuários Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 17. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS) Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 18. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS)• Não PersistenteDados enviados de volta sem tratamentoe executado no browser da vítima. Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 19. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS) Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 20. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS)• Código vulnerável<?phpecho “Hello ” . $_GET[‘name’] . ”.n”;?>• Requisiçãoindex.php?name=<script>alert(1)</script> Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 21. Principais Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.Cross-Site Scripting (XSS)● Validação de entrada● Validação de saída● Validação de elementos do DOM●OWASPXSS Prevention Cheat Sheet Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 22. Outras Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.● Quebra de Autenticação / Sessão• Referência direta à objetos• Cross-Site Request Forgery (CSRF)• Falhas de Configuração Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 23. Outras Ameaças Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.● Armazenamento Inseguro• Falha na Restrição de Acesso à URLs• Canal Inseguro• Redirecionamentos Não-Validados Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 24. Referências Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados.● OWASP Top 10https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project• OWASP Testing Guidehttps://www.owasp.org/index.php/Category:OWASP_Testing_Project Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 25. Dúvidas? Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados. Perguntas? Críticas? Sugestões? Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.
  • 26. Fim... Copyright © 2009 Clavis Segurança da Informação. Todos os direitos reservados. Muito Obrigado! Rafael Soares Ferreira rafael@clavis.com.br @rafaelsferreira Copyright © 2011 Clavis Segurança da Informação. Todos os direitos reservados.