Smau Bari 2013 Massimo Chirivì

30
LA SICUREZZA DELLE WEB APPLICATION Massimo Chirivì LA SICUREZZA DELLE WEB APPLICATION

description

 

Transcript of Smau Bari 2013 Massimo Chirivì

  • 1. LA SICUREZZA DELLE WEB APPLICATION Massimo ChirivLA SICUREZZA DELLE WEB APPLICATION

2. Sommario Presentazione Ethical Hacking Information Gathering Fingerprinting Web Server Subdomain Enumeration Virtual Hosting Fingerprinting Frameworks and Application Resource EnumerationLA SICUREZZA DELLE WEB APPLICATION 3. Chi sono Dal 1988 con la passione dellinformatica Dal 1996 al servizio delle aziende per lavoro Dal 1998 al servizio della P.A. per il bene di tutti Dal 2010 in una delle pi grandi aziende ICT dItalia. Di cosa mi occupo - Information Security - System Administrator - Ethical HackingCondividere un dovere etico La condivisione conoscenza.LA SICUREZZA DELLE WEB APPLICATION 4. AIPSI Associazione Italiana Professionisti SicurezzaInformatica AIPSIAssociazione Capitolodi singoliItaliano diprofessionisti ISSA Oltre 10.000esperti in 200 soci intutto il ItaliamondoLA SICUREZZA DELLE WEB APPLICATION 5. AIPSI Associazione Italiana Professionisti SicurezzaInformatica Obiettivi: Organizzazione di forum educativi Redazione di documenti e pubblicazioni specializzate Interscambio di esperienze fra i professionisti delsettore (nazionali e internazionali) Riferimento per la ricerca di professionisti di sicurezzaIT Interazione con altre organizzazioni professionali Rilascio di attestati e certificazioni specificheLA SICUREZZA DELLE WEB APPLICATION 6. Ethical Hacking Ethical hacking, spesso eseguita da esperti informatici qualificati, luso dicompetenze specifiche per determinare le vulnerabilit dei sistemi informatici.Lhacker etico valuta e suggerisce modifiche ai sistemi che li rendono menoprobabili di essere penetrati. Molte aziende utilizzano i servizi di hacking etico a tempo pieno permantenere i loro sistemi e informazioni al sicuro. Il lavoro di hacking etico da molti ancora considerato pirateria perch utilizzala conoscenza dei sistemi informatici nel tentativo di penetrare o crashare. Alcontrario, questo lavoro etico perch viene eseguito per aumentare lasicurezza dei sistemi informatici. Lobiettivo di ethical hacking quello di determinare il modo di violare iprogrammi presenti in esecuzione, ma solo su richiesta della societ chepossiede il sistema ed in particolare per impedire ad altri di attaccarlo.LA SICUREZZA DELLE WEB APPLICATION 7. Information Gathering- Rappresenta la fase della raccolta di informazioni.Quante pi ne abbiamo meglio valuteremo la sicurezza dellapplicazione web.Quindi bisogna organizzare le informazioni in modo corretto.- E la fase pi importante del penetration test.- Durante le fasi successive potrebbe servire qualsiasi particolare. NON CI SONO INFORMAZIONI NON NECESSARIE!LA SICUREZZA DELLE WEB APPLICATION 8. Fingerprinting Web Server Dobbiamo analizzare linfrastruttura, cio tutto quello che c sul serverper permettere il corretto funzionamento dellapplicazione web Server Web (Apache, IIS, Tomcat) Sistema operativo (Windows, Linux) DB ( Sql server, Mysql, Oracle, PG) Moduli rewrite (Rewrite x Apache Isapi o Ionic Elicon x IIS) Modulo security Linguaggi utilizzati (PHP, Javascript, ASP, ASP.NET, Java) Librerie e script utilizzati (Jquery Mootools) FlashLA SICUREZZA DELLE WEB APPLICATION 9. Subdomain EnumerationBisogna trovare tutti i sottodomini situati allinterno di un dominio?1) Ampliare la superficie di attacco2) Rilevare pannelli di gestione backend3) Applicazione web situato sul 3 livelloCome? Netcraft Subdomainer.py Google o Bing (metodo pi utilizzato) Crawling o Brute Force (Burp Suite) Zone Transfers (utility DIG o Nslookup)LA SICUREZZA DELLE WEB APPLICATION 10. Subdomain EnumerationC:nslookup Server [nameserver] Ls d domain.comOppure con bing.comLA SICUREZZA DELLE WEB APPLICATION 11. Virtual HostingLHosting virtuale un metodo usato sui server web per ospitare il sito webper pi di un nome di dominio sullo stesso server, oppure ospitare diversi sitiweb, talvolta sullo stesso indirizzo IP.Vi sono diverse tecniche di virtual hosting, con diverse limitazioni.Attenzione!Il server configurato con un solo indirizzo IP, a cui sono associati i nomi DNSdi tutti i siti ospitati. Quando il server riceve una richiesta HTTP, leggelhostname richiesto e decide di conseguenza quale dominio servire.Questo permette di utilizzare un solo indirizzo IP per molti siti utilizzandoporte TCP standard e URL senza la specifica della porta.Questa tecnica comunemente usata da providers di spazio web per sitiinternet.Hostmap il tool pi utilizzatoLA SICUREZZA DELLE WEB APPLICATION 12. Fingerprinting Frameworks and ApplicationDistinguiamo innanzitutto le applicazioni COTS dalle CUSTOMSoffermiamoci sulle COTS:1)Gran parte del web realizzato con questo tipo di applicazioni (Joomla, Wordpress, Magento,Virtuemart, Alfresco, Liferay, ecc.ecc.)2)Pu essere sia commerciale che open source3)Il codice sorgente disponibile a tutti, anche ai malitenzionati!4)Gli add-on o componenti aggiuntivi sono scritti non sempre in maniera corretta e contengono moltevulnerabilit5)La ricerca su internet delle vulnerabilit e degli exploit alcune volte banale.Come?JoomScan http://sourceforge.net/projects/joomscan/Secunia Database x verificare la vulnerabilitBurpSuite x crawling del sito webOsservare HTML con attenzioneOsservare banner, footer, headerLive http Headers for Firefox BrowserOsservare gli URL: index.php?option=%component_name%&task=%xxx%&task=%value%LA SICUREZZA DELLE WEB APPLICATION 13. Fingerprinting Frameworks and ApplicationDistinguiamo innanzitutto le applicazioni COTS dalle CUSTOM Soffermiamoci sulle CUSTOM Primo passo Studiare la logica dellapplicazione!1. A cosa serve?2. Consente la registrazione degli utenti?3. Ha un pannello di amministrazione?4. Accetta input dallutente?5. Che tipo di input accetta?6. Accetta upload di file?7. Usa Javascript, flash, ecc.ecc.8. Ci sono applicazioni cablate nellapplicazione custom?LA SICUREZZA DELLE WEB APPLICATION 14. Fingerprinting Frameworks and Application Analizziamo la superficie di attacco Convalida lato client oppure lato server Sql injection Logica dellapplicazione errata Cross Site Scripting Interazione con il database Sql injection Upload di file Che tipo di files posso caricare Visualizzazione dei dati Cross Site Scripting Reindirizzamenti HTTP response splitting Pagine di Login Bypassare il login (Sessions e cookies non gestiti correttamente) Bruteforce Messaggi di errore Informazioni importanti sulla struttura dellapplicazione o del DB.LA SICUREZZA DELLE WEB APPLICATION 15. Resource Enumeration Crawling/Spider del sito web (ad esempio: BURPSUITE) DirBusterDifferenze tra uno Spider e DirBuster?- Il crawling del sito web si effettu con gli spider e quindi basato sui link esui form.- DirBuster progetto Owasp con lo scopo di andare a scoprire tutti quei file equelle cartelle presenti in un sito web, che volutamente si vogliononascondere da occhi indiscreti. Questo approccio conosciuto come securityby obscurity ed uno degli approcci pi sbagliati e pi controproducenti cheun web developer possa seguire.LA SICUREZZA DELLE WEB APPLICATION 16. Resource Enumeration Attenzione ai file rinominati lasciati dallo sviluppatore sul server, adesempio il file configuration.php di Joomla che si potrebbe trovare comeconfiguration.bak o .old Attenzione ad altri files importanti rinominati per errore e quindiinterpretati come file di testo e non dal server Se il motore IIS con ASP quasi sicuramente ci saranno file .inc chevenivano utilizzati per essere inclusi in file ASP Directory listing Opzioni HTTP (PUT permesso) put /images/attacco.php http/1.1 content-lenght:xxx[invio] Content html [invio] [invio] Il file creato pu essere richiamato da browserLA SICUREZZA DELLE WEB APPLICATION 17. Resource Enumeration Google Hacking http://johnny.ihackstuff.com/ghdb/ http://www.googleguide.com/advanced_operators.html Ad esempioFiletype=bak Filetype=incE aggiungendo: site:www.target.comGli operatori presenti sulla guida avanzata di Google sono centinaia!LA SICUREZZA DELLE WEB APPLICATION 18. Iniziamo con un po di pratica.Quali sono le informazioni che cerchiamo?1) Dati dellorganizzazione2) IP, domini e sottodomini3) Infrastruttura (Server, CMS, Framework, Database)4) Logica dellapplicazione5) Host virtuali sul server6) La struttura dellapplicazione7) File nascosti nellapplicazione8) Username & PasswordLA SICUREZZA DELLE WEB APPLICATION 19. LA SICUREZZA DELLE WEB APPLICATION 20. LA SICUREZZA DELLE WEB APPLICATION 21. LA SICUREZZA DELLE WEB APPLICATION 22. LA SICUREZZA DELLE WEB APPLICATION 23. LA SICUREZZA DELLE WEB APPLICATION 24. I primi risultati:LA SICUREZZA DELLE WEB APPLICATION 25. Approfondiamo il netblock sul db RIPELA SICUREZZA DELLE WEB APPLICATION 26. Approfondiamo i record DNS con nslookupC:Usersmassimo.chirivi>nslookupDNS request timed out. > sviluppoeconomico.gov.ittimeout was 2 seconds. Server: [151.99.125.2]Server predefinito: UnKnownAddress: 151.99.125.2Address: fe80::88f0:f3d6:3c8b:26eb Risposta da un server non autorevole: Nome: sviluppoeconomico.gov.it> sviluppoeconomico.gov.it Address: 88.49.250.35Server: UnKnownAddress: fe80::88f0:f3d6:3c8b:26eb > server ns1.sviluppoeconomico.gov.it Server predefinito: ns1.sviluppoeconomico.gov.itDNS request timed out. Address: 88.49.250.35timeout was 2 seconds. > sviluppoeconomico.gov.itDNS request timed out. Server: ns1.sviluppoeconomico.gov.ittimeout was 2 seconds. Address: 88.49.250.35DNS request timed out.timeout was 2 seconds. Nome: sviluppoeconomico.gov.it Address: 88.49.250.35DNS request timed out.timeout was 2 seconds.*** Tempo scaduto per la richiesta aUnKnown> server 151.99.125.2DNS request timed out.timeout was 2 seconds.Server predefinito: [151.99.125.2]Address: 151.99.125.2LA SICUREZZA DELLE WEB APPLICATION 27. LA SICUREZZA DELLE WEB APPLICATION 28. Una sorpresa dopo 1 ora di lavoro Se digitiamo sul browser: http:// vcse.sviluppoeconomico.gov.itRicercare vulnerabilit sul webUser & Password di defaultBrute Force sul formLA SICUREZZA DELLE WEB APPLICATION 29. LA SICUREZZA DELLE WEB APPLICATION 30. Grazie per lattenzione www.massimochirivi.net [email protected] FacebookSkype: mchiriviLinkedinSito smau www.smau.itSito AIPSI -- www.aipsi.org Studia, prova, amplia, ricerca, analizza, migliora condividi con gli altri anche tu sempre con il cappello biancoLA SICUREZZA DELLE WEB APPLICATION