palestra - confraria 0day 2015 - fatos e mitos sobre desenvolvimento seguro

18
Fatos e mitos sobre desenvolvimento seguro O que a internet diz...

Upload: as-zone

Post on 16-Aug-2015

23 views

Category:

Technology


0 download

TRANSCRIPT

  1. 1. Fatos e mitos sobre desenvolvimento seguro O que a internet diz...
  2. 2. Quem sou... Desenvolvedor Web Pesquisador e Entusiasta da Segurana da Informao Aszone Amazonense... Da terra da Mangaba =)
  3. 3. Introduo Quando temos dvida, onde recorremos ? Antes enciclopdia, hoje temos Google/Bing/Yandex/Baidu. Qual a principal diferena? Agora as referncias tambm tm equivocos e erros.
  4. 4. Mitos
  5. 5. Mitos "Nem tudo que reluz ouro" Nem todo site relevante tem verdade plena "A pressa inimiga da perfeio" Rapidez pode ser o seu pior inimigo, com crt+c | crt+v "As aparncias enganam" Teste nunca demais, ataque seu cdigo
  6. 6. Falhas
  7. 7. Sql Injection Insero de uma srie de instrues SQL dentro de uma consulta (query) para retorno de qualquer tipo de dados que no era para ser retornado.
  8. 8. Sql Injection Resultado da pesquisa "Anti sql injection":
  9. 9. Sql Injection Resultado da pesquisa "Anti sql injection": http://www.scriptbrasil.com.br/forum/topic/168609-funcao-anti-sql-injection/ http://forum.imasters.com.br/topic/125349-anti-sql-injection/ http://forum.imasters.com.br/topic/276729-seguranca-em-php/ http://phpbrasil.com/artigo/v5Ejt4VOld2r/anti-sql-injection--solucao-global http://eniomarcelobuza.blogspot.com.br/2012/08/php-funcao-anti-sql- injection.html http://www.vivaolinux.com.br/script/Funcao-Anti-MySQL-Injection-Proteja-sua- aplicacao https://discussion.dreamhost.com/thread-134658.html
  10. 10. Sql Injection Usando SqlMap SqlMap uma ferramenta que automatiza o processo de detectar e explorar as falhas de injeo SQL.
  11. 11. Sql Injection Vamos aos testes ?
  12. 12. Sql Injection Free Hand Agora fazendo tratamento nas querys manualmente, para dar bypass nas solues propostas.
  13. 13. Sql Injection Segredo do Bypass: *_replace => Age na identificao de algum item setado e altera por outro parametro que desejar. Exemplo: Select login,senha from tabela_x => login,senha tabela_x Bypass: Sele*ct login,senha frofromm tabela_x => Select login,senha from tabela_x
  14. 14. Fatos
  15. 15. Fatos Resultado: Soluo do Sql Injection: Se for um id: valide com is_numeric, ou is_bool se for boleano; Se o request for uma string: mysql_real_escape_string();
  16. 16. Sql Injetcion Resultado: Para id: Para string:
  17. 17. Fatos Utilizao de frameworks ou cms Utilizao de padres de projetos ( DAO ) Camada de proteo de erros (50*) Aplicao de pentest / code review Implementao de logs e notificaes Filtros nas entradas e sadas de dados Metodologia de desenvolvimento seguro
  18. 18. Fim [email protected] @lenonleite www.lenonleite.com.br em breve: www.aszone.com.br