PHP Sob Ataque - Técnicas de Programação Defensiva - FISL 12 - Rafael Jaques

15.849 visualizações

Publicada em

Palestra apresentada por Rafael Jaques no FISL 12 [Porto Alegre] em 01/07/2011.

A apresentação visa mostrar ao desenvolvedor que o foco dos crackers não é mais a aplicação e sim os usuários da mesma.

Fornece um bom panorama, fala um pouco sobre engenharia social e técnicas para evitar o caos.

Publicada em: Tecnologia
0 comentários
7 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
15.849
No SlideShare
0
A partir de incorporações
0
Número de incorporações
11.538
Ações
Compartilhamentos
0
Downloads
125
Comentários
0
Gostaram
7
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

PHP Sob Ataque - Técnicas de Programação Defensiva - FISL 12 - Rafael Jaques

  1. 1. PHP Sob Ataque: Técnicas de Programação Defensiva Rafael Jaques FISL 12 – Porto Alegre – 01/07/11“Mas, a todos quantos o receberam, deu-lhes o poder de serem feitos filhos de Deus, aos que crêem no seu nome” (João 1.12)
  2. 2. Antes de começar, vou falar sobre o Tchelinux...
  3. 3. Data dos eventos em 2011 Bagé 28/05 Bento Gonçalves 13/08 Rio Grande 27/08 Caxias do Sul 24/09 Porto Alegre A definirSantana do Livramento A definir Alegrete A definir Pelotas A definir
  4. 4. Essa palestra é uma continuação da realizada no ano passado...http://www.slideshare.net/rafajaques
  5. 5. Então vamos lá!
  6. 6. Objetivo● Ao final dessa palestra, é possível que você saiba alguma dessas coisas: ● Técnicas para evitar o caos ● Técnicas para proteger o seu valoroso usuário ● Uma base sobre engenharia social ● Os riscos que estamos correndo na web ● O porquê de o caos se instalar tão facilmente PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre
  7. 7. PautaI. ConceitoII. Comofas/III. Engenharia socialIV. Inteligência coletiva x AplicaçãoV. Protegendo o usuárioVI. Onde pedir ajudaVII. Considerações finaisVIII. Dúvidas, críticas, sugestões... PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre
  8. 8. CAPÍTULO I Conceito
  9. 9. O que é Programação Defensiva,manolo? Conjunto de técnicas de projeto e programaçãoobjetivando a estabilidade e a segurança de um software independentemente do imprevisível.O objetivo é reduzir ou eliminar a influência exercida pelas Leis de Murphy sobre a sua aplicação. Essas técnicas começaram a ser desenvolvidas quando sistemas de software passaram a possibilitar efeitos catastróficos. Adaptado da Wikipedia (http://pt.wikipedia.org/wiki/Programa %C3%A7%C3%A3o_defensiva) PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre
  10. 10. Como saber se estou programando defensivamente?
  11. 11. Se uma pessoa (que não você)consegue entender o código que foi criado, já é um bom começo.
  12. 12. Se em algum momento você “supor” algo, já é um problema. Nunca subestime o usuário.
  13. 13. Lembre-se que o seu código é inseguro.● Por natureza, seu código será inseguro● Ao publicá-lo, lembre-se que ele será inseguro● Ao melhorá-lo, lembre-se que ele é inseguro● Depois que testá-lo e certificar-se de que ele é seguro, ainda assim será inseguro
  14. 14. CAPÍTULO II Comofas/
  15. 15. Código mais simples é melhor!
  16. 16. Código complexo é o berço dos bugs!
  17. 17. Evite colocar arquivos na raiz.
  18. 18. Um erro de cálculo e seus dados estarão expostos!
  19. 19. Refatore e reutilize. Um códigoescrito do zero é muito arriscado!
  20. 20. Revise e audite seu código.Mas nomeie outra pessoa pra isso!
  21. 21. Trabalho em equipe ajuda a reduzir problemas no código final.
  22. 22. Estude sobre Canonicalization.
  23. 23. Omita as tags de fechamento.
  24. 24. Esteja preparado para o pior.
  25. 25. Tenha um plano de contingência para o caso de um apocalipse.
  26. 26. Backup!
  27. 27. ● Evite usar para proteger informações vitais do sistema ● Prefira o Google Webmaster Tools para desindexar algorobots.txt – muito cuidado ao usar!
  28. 28. Cuidado com o Havij !
  29. 29. Fatores que potencializam a criação de código inseguro
  30. 30. ● Clientes chatos● Falta de vontade● Término do estoque de café● Aproximação do final de tarde● Véspera de feriado / fim de semana● Área comercial vendendo produtos imaginários● Falta de tempo / Prazos Jack Bauer Fonte: Desciclopédia
  31. 31. CAPÍTULO III Engenharia Social e aArte de Invadir Pessoas
  32. 32. Não adianta proteger pelo lado de fora se o ataque vem de dentro.
  33. 33. Seres humanos tendem a serbonzinhos com o semelhante.
  34. 34. Engenheiros sociais se aproveitam da ingenuidade das pessoas.
  35. 35. Treine seu usuário! Assim ele não compartilha informações.
  36. 36. CAPÍTULO IVInteligência Coletiva, Semi-celebridades e Ameaças Reais
  37. 37. É mais ou menos o que eu falei no ano passado sobre o fato de dizer que a sua aplicação é 100% segura...
  38. 38. Ataque de Negação de Serviço!
  39. 39. Desafio aceito: derrubar um sitedurante o Fórum de Segurança Web!
  40. 40. Cases de Ataque ao Usuário
  41. 41. Phishing!
  42. 42. Scam!
  43. 43. CAPÍTULO VProtegendo o Precioso Anel do Seu Usuário
  44. 44. Monitore o IP e o Referer do seu usuário. IP $_SERVER[REMOTE_ADDR] Referer $_SERVER[HTTP_REFERER]
  45. 45. Alerte-o sobre os tais Phishing e Scam!
  46. 46. Utilize timeouts
  47. 47. HTTPS na veia!
  48. 48. Mantenha seu usuário seguro emostre que tudo é para o seu bem!
  49. 49. CAPÍTULO VIOMG! TODOS SÃO INIMIGOS? ONDE VOU ME PROTEGER?
  50. 50. Nem todos são inimigos...Conheça alguns amiguinhos que vão ajudar no caminho.
  51. 51. Tá... Respira um pouco...
  52. 52. CAPÍTULO VIIConsiderações finais
  53. 53. PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre
  54. 54. Obrigado Rafael Jaques phpit.com.br rafa@php.net @rafajaques PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre
  55. 55. Fontes Consultadas● http://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_defe● http://www.slideshare.net/gscheibel/programao-defensiva● http://jmmwrite.wordpress.com/tag/programacao-defensiva/● http://www.ibm.com/developerworks/br/library/os-php-5goodh● http://www.wellho.net/mouth/1694_Defensive-coding-techniq● http://en.wikipedia.org/wiki/Defensive_programming● http://www.phpclasses.org/blog/post/65-8-defensive-programm● http://www.phpclasses.org/blog/post/66-More-defensive-prog● http://www.slideshare.net/ergalvao/php-e-segurana-uma-unio-● http://www.slideshare.net/ergalvao/implementando-segurana- PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre
  56. 56. Imagens Utilizadas● http://www.franklinparishlibrary.org/MPj04276860000%5B1%5D.jpg● http://3.bp.blogspot.com/-NaQ_9mCf3iY/TZJ0TmC7T3I/AAAAAAAAPBk/4Lw2Nm5OMwE/s1600/justice_league.jpg● http://i.zdnet.com/blogs/SysCallApache.jpg● http://www.cubefx.com/smart/4smarts.jpg● http://i82.photobucket.com/albums/j279/shagg187/2783768632_beeb811d33_b.jpg● http://www.ghsadvisors.com/defense.jpg● http://usarmy.vo.llnwd.net/e2/-images/2008/01/17/12167/army.mil-2008-01-17-100832.jpg● http://0.tqn.com/d/architecture/1/0/b/p/Building7.jpg● http://lp1.pinkbike.org/p4pb6276309/p4pb6276309.jpg● http://www.softsia.com/screenshots/Matrix-Mania_w42z.jpg● http://www.flash-screen.com/free-wallpaper/uploads/201103/imgs/1300345654_1500x1147_atomic-bomb-blast-picture.jpg● http://i239.photobucket.com/albums/ff58/fefferVT/P1000189.jpg● http://vidadesuporte.com.br/wp-content/uploads/2011/06/Suporte_223.jpg● http://api.ning.com/files/TNumCAL*-NlKkCiEYKnhdWLjtJUGLoc5s2gJ9fSLSVKWaLqjm56vsJK5Hof76WuEYlSYa1NxH4OLDA6zW232qpuZ*tkDHa- Z/IMG_1557.JPG● http://www.keepeanesinformed.com/j0408985%5B1%5D.jpg● http://blog.garagepunknyc.com/wp-content/uploads/2011/05/the-four-horsemen-of-the-apocalypse2.jpg● http://uhaweb.hartford.edu/CASS/Marvin.jpg● http://s47.radikal.ru/i118/1103/59/4e5b69cc8253.jpg● http://paulsonmanagementgroup.com/media/pmg/hansel%20and%20gretel[rz].jpg● http://crazy-frankenstein.com/free-wallpapers-files/tropical-wallpapers-files/tropical-wallpapers-beautiful-coast-palm.jpg● http://crazy-frankenstein.com/free-wallpapers-files/tropical-wallpapers-files/tropical-wallpapers-beautiful-see-and-island.jpg● http://www.deshow.net/d/file/travel/2009-06/us-landscape-579-2.jpg● http://xemanhdep.com/gallery/beautiful-landscape/beautiful-landscape17.jpg● http://images2.wikia.nocookie.net/__cb20100821003145/nonsensopedia/images/6/61/%C5%81%C4%85ka.jpg PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre
  57. 57. Imagens Utilizadas● http://3.bp.blogspot.com/_V6QzDsYDdYE/TK6EMYCLE5I/AAAAAAAAO_E/9B5YAhyAU4E/s1600/vader.jpg● http://www.vecernji.ba/data/slika/39/191271.jpg● http://aharonideas.files.wordpress.com/2009/05/team-work.jpg● http://img.vivaolinux.com.br/imagens/artigos/comunidade/backup-plan.jpg● http://www.portalnerd.com.br/wp-content/uploads/2010/03/godzilla-grande.jpg● http://games.holyfile.com/upload/screenshot175-5.jpg● http://4.bp.blogspot.com/-sbtYCenbSyU/Td3J9YXptGI/AAAAAAAAAAg/C29k4W4u8ZQ/s640/cute+babies+hugging-+photoforu.blogspot.com.jpg● http://images.inmagine.com/img/inspirestock/ispi003/isp0803261.jpg● http://kimartialartsusa.com/Susan%27s%20best%20kick%20pic%205-9-09.JPG● http://96.9.22.103/wp-content/uploads/2011/02/iStock_000006411427Medium.jpg● http://www.bbc.co.uk/kent/content/images/2008/05/11/queue_470x355.jpg● http://groundmart.net/wp-content/uploads/2010/07/ased.jpg● http://blogs.shave.com/azor/bigstockphoto_man_shouting_through_megaphone_2233138.jpg● http://contigo.abril.com.br/blog/passione-novela/files/2010/06/passione-berilo-5501.jpg● http://www.psdgraphics.com/file/https.jpg● http://hope.lightgivesheat.org/uploads/blog/.thumbs/thumbs_up_large_a41147.jpg● http://ianimal.ru/wp-content/uploads/2011/01/skzh-1301.jpg● http://store.picbg.net/pubpic/A7/30/673a359a020ca730.jpg● http://farm3.static.flickr.com/2787/4195840875_d73a99a9c5.jpg● http://phpsec.org/images/phpsc-logo.gif● http://www.pegadasnaareia.com/wp-content/uploads/2010/01/pope-sunday.jpg● http://cdn2.knowyourmeme.com/i/000/100/756/original/Challenge%20Accepted.png● http://www.turkcebilgi.com/uploads/media/resim/largada_stock125_foto_claudio_reis.jpg● http://ibloggr.com/wp-content/uploads/2011/04/questions-answer-sites-like-yahoo-answer.jpg PHP Sob Ataque: Técnicas de Programação Defensiva – Rafael Jaques – FISL 12 Porto Alegre

×