“Enorme” scoop di Repubblica di oggi su una vulnerabilita’ di Ebay. Ora io non sono certo un esperto ma mi sentirei tranquillamente di dire che

1) il cross-site scripting e’ un problema di sicurezza noto da anni.
2) Ebay non e’ certo l’unico sito che puo’ essere colpito da simili tecniche.

C’è un buco nel sistema di sicurezza di eBay. Un buco che si apre e che si chiude di continuo, come la porta automatica di un grande magazzino. E che permette a qualunque hacker minimamente capace di entrare in possesso delle informazioni personali riservate dei clienti. E di derubarli. Noi questo buco lo abbiamo individuato, lo abbiamo aperto e poi ci siamo entrati dentro (il video si può vedere sul sito di RepubblicaTv).

29 commenti a “ENTRATI NEL BUCO”

  1. PiDave dice:

    Usassero Firefox con NoScript. O almeno potrebbero consigliarlo.

  2. Larry dice:

    Basta digitare "ebay cross-site scripting" dentro a Google per ottenere una moltitudine di risultati molto informativi. Come sempre Repubblica

    1) Cade dalle nuvole;

    2) Tratta comunque male la cosa, usando toni sensazionalistici e non fornendo al lettore nessuna informazione utile, ma soltanto paure generiche e generalizzate.

  3. esaù dice:

    Larry, che vuol dire "Repubblica cade dalle nuvole"? Moltissima gente "normale", mediamente pratica nell'uso del computer, non sa nulla di questa "truffa". Repubblica ha fatto bene a denunciarlo.

    Per favore mettiamo da parte la spocchia del "si sapeva già ". La maggior parte degli utenti, ci scommetto, cade dalle nuvole.

    Casomai e' Ebay a far finta di cadere dalle nuovle: non dà  dati e, in anni che sono iscritto, non mi ha mai comunicato l'esistenza del problema.

    Quanto al tono sensazionalistico, secondo te come dovevano scriverla la notizia? Una breve? Un titolo morbido?

    Poi, certo, fornire qualche rimedio sarebbe stato un buon servizio. A questo punto, segnalateci voi, esperti del cross site scripting, come difenderci.

  4. Larry dice:

    Macché spocchia e spocchia. C'è modo e modo per dar conto di una notizia, e Repubblica ha scelto quello sbagliato: toni sensazionalistici che fanno credere al lettore inesperto che abbiano scoperto qualcosa finora ignoto al genere umano, nessun genere di informazione su come si manifesta il problema, nessuna indicazione su come proteggersi, nessun riferimento esterno. Niente di niente, a parte i soliti concentrati di paura e ignoranza.

    Riguardo a come reperire ulteriori informazioni, quello che devi scrivere su google l'ho già  riportato. Oppure anche Google è uno strumento troppo avanzato per "moltissima gente normale"?

  5. esaù dice:

    Larry, non ci siamo capiti, purtroppo. Spero che un giorno si arrivi alla giusta mediazione tra giornalisti "mainstream" e "tecnici" dell'informazione.

  6. spider dice:

    Scusa Mante, ma che significa che "il cross-site scripting è un problema di sicurezza noto da anni"? Intanto è noto a chi si occupa della cosa, la mì mamma che usa internet quotidianamente di certo non ne sa nulla. Inoltre, proprio perché è noto da anni si suppone che un sito così famoso come eBay faccia attenzione e non lo renda possibile.

    Perché è vero che l'XSS (cross-site scripting) attacca gli utenti, ma può farlo solo perché dal lato server ci sono falle di sicurezza nella programmazione dell'applicativo. Tutti i rimedi che potrebbero proporre a esaù, quindi, sono dei palliativi: la vera soluzione è dal lato server, dal lato client è solo una toppa. Proteggersi va bene, ma non spostiamo il problema: chi è in fallo non è l'utente.

    E dal lato server come ci si difende dal cross-site scripting? Programmando tenendo sempre ben presente la sicurezza. E siccome gli errori scappano comunque, ogni tanto (da una volta al mese a un paio di volte l'anno) far fare un survey[*] a chi ne è capace, e risolvere gli eventuali problemi riscontrati tempestivamente.

    C'è da dire che se un sito è vulnerabile ad attacchi di tipo XSS, non escluderei lo sia anche ad altri tipi di attacchi, ben più pericolosi: sql/command injection, per esempio. Più pericolosi perché si può andare dal defacement del sito (e chi se ne frega) al dump di larghe parti dei database (dove registrano tutti i dati: password, numeri di telefono, carte di credito…).

    [*] Per i non addetti: si tratta di assumere qualche cosiddetto ethical hacker (detti anche "white hat", sono quelli "buoni") e fargli fare al proprio sito (rete, host, applicazione) quello che gli farebbe un "black hat" (sono quelli "cattivi").

  7. ALG dice:

    Io invece mi occupo di sicurezza e posso dire che quel video è una cagata. Mi spiego meglio: il sistema è semplice, quando si fa l'offerta si viene inviati ad un sito esterno per rifare il login. La cosa dovrebbe insospettire subito un utente. Inoltre la pagina di login di ebay è su server HTTPS con certificato digitale valido, dubito che un server web fasullo abbia un certificato valido appartenente ad ebay…

    La vulnerabilità , come segnalato, è nota da tempo (http://www.kb.cert.org/vuls/id/808921) e se i simpaticoni di Repubblica invece di cercare lo scoop avessero spiegato i modi per difendersi (indicati nella pagina del cert di cui anche loro segnalano l'esistenza) potrebbero aiutare gli utenti meno smaliziati a non cadere nelle truffe (per inciso, i dati personali devono sempre essere inseriti in pagine su server sicuri [HTTPS] e il certificato deve essere valido e coincidere con la pagina [il lucchetto verde in FF o IE]).

    Inoltre la risposta di ebay, usare la loro toolbar, è sostanzialmente corretta. eBay potrebbe risolvere il problema solo impedendo lo scripting nelle pagine web delle aste, cosa che non fa perché è un servizio utile per i clienti migliori e con feedback alto; qualsiasi tecnica di sanitizing della pagina sarebbe o troppo restrittiva o facilmente aggirabile.

    P.s: lo stesso baco si può trovare in MySpace e in generale in ogni sito dove gli utenti possono personalizzare la loro pagina.

    Una constatazione finale: qualsiasi persona si occupi di sicurezza in modo professionale potrà  dirvi che il baco più pericoloso si trova tra la sedia e la tastiera; o gli utenti di internet iniziano ad imparare le basi della sicurezza (pochi semplici accorgimenti) oppure si adattino al fatto che possono essere truffati!

    Ciao

  8. esaù dice:

    Ecco, l'approccio di Spider mi sembra costruttivo, molto costruttivo per un utente normale/medio.

  9. ALG dice:

    @spider: Piuttosto che affidarsi ai White Hat per la revisione è usare approcci più scientifici quali dimostratori formali e theorem-checker, analisi delle catene di attacco etc etc… Detto questo non è vero che gli attacchi XSS discendono da problemi lato server. E' vero che per portarli a termine la pagina in questione deve essere modificata in modo opportuno ma è anche vero che molto spesso la modifica della pagina è una cosa ammessa (il baco in questione). Come ho già  accennato, qualsiasi difesa lato server o è troppo restrittiva (permettere solo alcuni tag all'interno delle pagine modificate, quelli non attivi) o è inefficiente (analisi della pagina modifica e sanitizing della stessa per impedire attacchi XSS). Il problema è quindi architetturale del servizio (e SQL injection e compagnia bella non centrano nulla).

  10. spider dice:

    ALG: facevo un discorso generale, non di eBay.

    Andando nel particolare, invece, lo so da me che bisogna trovare un compromesso tra funzionalità  e sicurezza, ma pendo più dalla parte sicurezza ;-)

    Quindi a mio modo di vedere non dovrebbe essere permesso all'utente l'utilizzo altro che di pochi tag (come avviene in queste form di commenti… un motivo ci sarà , no?).

    Le restrizioni ci possono essere permettendo agli utenti di scegliere da una libreria preconfezionata (e controllata!) di script. Se uno sceglie di fargli fare quello che vogliono, allora, come si diceva una volta "it's not a bug, it's a feature".

    SQL injection c'entra invece: se su questo sistema di commenti fosse possibile fare XSS (non ho provato, magari lo è), avrei dei grossi dubbi sul fatto che non fosse possibile fare pure altro, compreso SQL injection.

    Per spiegare anche a chi non mastica di queste cose, SQL injection e XSS sono due attacchi differenti che però passano dallo stesso buco, l'applicazione web. Il concetto, mi rendo conto, è quello del pensar male: se scoprissi che la cintura di sicurezza di un certo modello di automobile si stacca (sempre) quando tampono a più di 60 Km/h, mi fiderei dell'airbag?

  11. spider dice:

    Scusa mi sono scordato due cose. Per restare nel campo della metafora automobilistica: nonostante le procedure seguite per la progettazione di un'automobile, alla fine si fanno pure i crash-test su ogni modello.

    La progettazione è l'approccio scientifico, il crash-test è il security survey.

    La seconda cosa: XSS *è* un problema lato server. Alcune volte può sfruttare *anche* un problema del browser. Ma se sul server posso fare cose che non mi dovrebbe essere consentito fare, non vedo come potrei dar la colpa al client. Restando nel campo delle automobili ché mi garba parecchio: se la cintura di sicurezza si stacca tamponando a 60Km/h se peso più di 100 Kg, mi posso difendere guidando con il casco, ma difficilmente potrei sostenere che non è colpa dell'auto.

    Poi, ribadisco, se la politica del server è "fate quello che vi pare" il discorso cambia.

  12. ALG dice:

    @spider: Il problema grosso della sicurezza è che non esiste un unico livello di sicurezza. Non puoi assolutamente confondere un problema di sicurezza di progettazione da uno di implementazione: stando nella tua metafora, se la cintura si stacca perché i bulloni che la fissano sono difettosi è un conto, se si stacca perché è attaccata, magari per motivi estetici, ad una parte della macchina che non regge la sollecitazione è un altro. Quindi non mi sta bene che tu accomuni un errore di progettazione (XSS) con uno di implementazione (SQL injection) perché son cose diverse fatte probabilmente da persone diverse (una macchina può fare schifo esteticamente ma avere un motore eccellente!).

    Capisco benissimo il tuo discorso sulle restrizioni, ma eBay ha fatto una scelta diversa, sicuramente criticabile a livello architetturale ma non a livello pratico. Considera anche che devi avere un account da molto tempo con feedback alti per personalizzare le tue pagine.

    Tra l'altro son d'accordo con te che tra funzionalità  e sicurezza meglio sicurezza ma molto spesso nel trade-off si valuta anche la difendibilità  degli utenti. Il cross site scripting è, in questo caso, possibile solo con una ridirizione ad un sito fasullo (non sono ammessi script che leggono i campi di Login) e quindi un utente mediamente capace dovrebbe capire la truffa.

    Capisco che non sia facile far capire a mio padre che il login va fatto su pagine che iniziano con https e deve esserci un lucchetto verde per dire che è sicuro (livello minimo) ma non è stato nemmeno facile fargli capire che no, quelle mail che dicono di essere della banca in realtà  non lo sono! La sicurezza è imprescindibile dall'educazione dagli utenti

  13. vb dice:

    Fanno comunque bene a parlarne, anche perché troppe aziende vivono la sicurezza come "un costo superfluo" o pensano direttamente che sia più conveniente ripagare qualche cliente truffato (quei pochi in grado di capire cosa sia successo e le responsabilità  del gestore del sito) che allungare i tempi di sviluppo per fare un prodotto sicuro.

  14. Danny Darko dice:

    Tra l'altro in noto esperto di sicurezza Matteo Flora li ha spu***nati per bene in un post di oggi…

    ASSOLUTAMTENTE da non perdere, secondo me, ed assolutamente esilarante… Ho appena aggiunto LastKnight ai miei feed!

    http://www.lastknight.com/2008/03/18/rei-falsi-scoop-di-repubblica/

  15. Danny Darko dice:

    Ah, e NO è un problema di XSS, ma di utilizzo delle API di E-Bay.

  16. antonio dice:

    Al di la' del fatto che e' una cosa conosciuta, che la sicurezza e blah blah blah, e' VERGOGNOSO che ebay ancora non ripulisca il proprio output html per togliere queste cose.

    Repubblica fa bene a fare lo scoop, casomai prendetevela con quella multinazionale quotata in borsa che si chiama ebay; la falla c'e' e si vede, il fatto che sia vecchia di anni non la chiude automaticamente.

  17. giancarlo dice:

    Per restare alla metafora automobilistica: se viene riscontrato un difetto di solito si corre ai ripari, di sicuro lo si elimina dai nuovi modelli e a volte se è grave si fanno rientrare anche le automobili in circolazione. Il fatto che ebay (non un sitarello amatoriale, bensi un posto dove circolano un bel po di soldi) abbia delle vulnerabilità  e non le risolva addebitando il problema al presunto utente cretino, equivale al fatto che la mercedes ai tempi della classe A che non superava il test dell'alce avesse detto: Ok, ora lo sanno tutti che la macchina in certe condizioni capotta, se dovesse capitare a qualcuno vuol dire che è un cretino, affari suoi. Lo so anche io che in campo computer quello che vale nella vita reale viene vissuto come una costrizione, ma i soldi eventualmente frodati sono soldi veri.

  18. Massimo Morelli dice:

    Concordo con ALG.

  19. ALG dice:

    Va beh, ma mi sembra che si stia un po' esagerando la vulnerabilità . Va bene che Rep fa i drammi planetari ma se si fa una Risk Assesment Analysis si nota subito che la cosa è meno grave di quanto sembri.Stiamo parlando di un baco sfruttabile solo da utenti con rating alto che se sorpresi a barare vengono cacciati; devono cioè spendere molto tempo per creare un account truffaldino bruciato in relativamente poco tempo. Inoltre si introduce un comportamento anomalo in eBay (la necessità  di riloggarsi). Inoltre non ho provato ma credo che sia FF che IE correttamente settati possano rilevare il tentativo di truffa.

    Capisco che eBay non si stia comportando benissimo non mettendoci una pezza (ma, pur non conoscendo i dettagli non mi sembra facilissimo) ma nemmeno fare tutta questa polemica.

    Giusto per chiarire: parlando del baco di eBay qui in laboratorio i miei colleghi han fatto spallucce e ci occupiamo tutti di sicurezza (e non lavoriamo per eBay).

    Insomma, eBay non sta garantendo totalmente gli utenti ma si sta sovrastimando il rischio. E' vero che è un baco segnalato anche sul sito del CERT (il computer emergency readiness team degli USA) ma la metrica che ne valuta la gravità  è 9.8/180.

  20. giancarlo dice:

    Il livello di gravità  non dice nulla. Su un sito poco frequentato vulnerabilità  anche gravi non necessariamente producono un rischio grave. Una vulnerabilità  anche piccolissima, ad esempio nei sistemi del pentagono, comporta un rischio enorme. Valutate un po voi cosa significa su un sito come Ebay, che volutamente si rivolge a un pubblico enorme, non fatto solo di geek, ma soprattutto di gente normale che magari naviga senza neache sapere cosa sia un IP. Se internet deve essere di tutti, non si può pretendere che chi la usa abbia la certificazione Cisco, ma si deve fare in modo che la rete diventi "intrinsecamete sicura", altrimenti non potrà  che essere un giochino per addetti ai lavori.

  21. spider dice:

    Sì, sulla gravità  ha perfettamente ragione ALG. Se uno deve falsificare un account per poter sfruttare quel genere di vulnerabilità , allo stesso costo (ovvero la fatica di falsificare account) gli merita fare truffe: certamente più redditizie.

  22. antonio dice:

    Mi sorprende il fatto che voi vedete il discorso solo dal punto di vista tecnico, della vulnerabilita' e del fatto che non si puo' ottenere molto.

    Riepiloghiamo:

    1) il 9 Aprile 2006 viene scoperta una vulnerabilita' di cross-site scripting (due anni fa, MIO DIO)

    2) EBay non fixa, il 18 marzo 2008 repubblica online fa uno "scoop" e mostra che tramite questa vuln e' possibile prendersi i dati degli utenti

    3) lo scoop viene probabilmente replicato pure sul cartaceo

    Avendo lavorato per un'altra compagnia che vende roba online vi posso assicurare che non esiste la cosa piu' IMPORTANTE per un sito che vende roba online e' la fiducia dell'utente, cioe' il "customer trust", cioe' la fiducia dell'utente.

    L'utente compra, o in questo caso partecipa ad aste, solo se sa che i suoi dati sono tutelati.

    Voi mi dite che ci vuole cultura informatica, io vi dico che la vuln e' banale, la cultura informatica la dovrebbero avere avuta gli exp di sicurezza di ebay, che invece hanno deciso di non fixare per due anni; quando repubblica fa lo scoop la replica e' "usate la toolbar, noi intanto ci stiamo lavorando"; in compagnie simili, Google o Amazon per intenderci 1) il baco sarebbe stato risolto entro 24hr 2) l'ufficio di relazioni esterne avrebbe trattato meglio la vicenda 3) sarebbe saltata qualche testa.

    Io vedo cattiva prevenzione e cattiva gestione della vicenda da parte di ebay italia.

    Saluti

  23. Leonaltro dice:

    Io invece vorrei far notare questa perla dell'articolo

    > Dati ufficiali non ce ne sono (si sa che in Italia nel 2007 gli hacker in generale hanno causato danni per 5.432.548 euro con le truffe online).

    alla faccia dell'assenza di dati ufficiali! Precisi al centesimo…. "gli hacker in generale"…. ma vah!

  24. ALG dice:

    Aggiungo qualche considerazione:

    – Non richiedo che una persona che naviga in Internet abbia una certificazione Cisco. Chiedo solo il minimo di conoscenza necessaria per usare uno strumento. Se avviate il rasaerba con la mano vicino alla lama "potreste" farvi male: nessuno direbbe che è un baco del rasaerba ma che voi siete cretini e non sapete come funziona. Ammetto, tuttavia, di non conoscere un decalogo di sicurezza nell'uso di Internet semplice come sarebbe richiesto.

    – Il valore metrics dichiarato dal Cert considera anche i danni che derivano dalla falla (una falla nei sistemi del pentagono fa 180 di sicuro!)

    – La comunicazione è importantissima; ciò nonostante, e questo lo ripeterò fino allo sfinimento, non è una falla implementativa ma architetturale, ovvero è intrinsecamente correlata al servizio offerto. Se mi dite che le comunicazioni di eBay hanno fallito ci sto, se mi dite che i responsabili della security hanno sbagliato, discutiamone.

    Se vogliamo parlare di qualità  delle comunicazioni di eBay, della correttezza delle azioni da questa intraprese o degli scoop sulla sicurezza di Repubblica liberissimi; se ci sono altre teorie sulla sicurezza, sulla classificazione o la valutazione dei bachi vi consiglio invece di scrivere un Paper e sottometterlo ad una di queste conferenze a scelta: USENIX, ACSAC, ACM CCS, Crypto etc etc… Se verrà  accettato sarò felice di venirvi a sentire (P.s: scegliete ACSAC che di solito si fa in posti fighissimi…)

  25. Alessio dice:

    Il confronto con il rasaerba non regge, anzitutto perchè ai due strumenti ci si accosta in maniera ben diversa, e poi perchè chi compra e utilizza un rasaerba viene avvertito di tutti i possibili pericoli.

    Ebay non ha un libretto di istruzioni con le avvertenze e i rischi che si corrono. Anzi chi entra in Ebay viene introdotto in un mondo fantastico e irreale (e questo vale per qualsiasi sito dove si vende e spesso si truffa il consumatore) dove tutto è facile e sicuro, dove si può giocare tranquilli e far giocare i propri figli perchè il pericolo non esiste.

    Ebay ci ha messo una vita prima di lanciare avvertimenti sull'uso delle ricaricabili, quando nel forum se ne parlava già  da una vita. E intanto migliai di persone sono state truffate prima che si rendessero conto che la ricarica non è un sistema di pagamento accettabile. E questo è solo uno dei tanti esempi.

    Insomma se accosti le dita alla lama del rasaerba puoi essere considerato cretino, ma compri un laptop e ti ritrovi con un pacco con dentro cartone e basta (caso reale) non sei cretino, sei solo vittima di un reato che nessuno ha voluto e o potuto prevenire.

    Basta farsi un giro su Ebayabuse, che è stato osteggiato in mille modi perchè racconta la pura verità , per farvi un'idea dell'enorme giro di affari delle truffe che si possono fare con le aste nell'impunità  più assoluta. Questa falla nella sicurezza si inquadra in una politica generale di zero rispetto per gli utenti e di assoluta dichiarata estraneità  per tutto quello che succede di illegale all'ombra delle aste on line.

  26. giancarlo dice:

    @ALG – due considerazioni rispetto al tuo ultimo commento.

    Sul fatto che Repubblica e l'informazione mainstream in genere riguardo la tecnologia facciano pena, non ci piove, ma a parte lo stile enfatico la notizia è vera. Infatti le due considerazioni di Mantellini non la smentiscono, anzi da addetto ai lavori conferma le notizia, che è nota da anni e si consola con il fatto che Ebay non è l'unico sito con tale vulnerabilità .

    Sul fatto che chi faccia notare i problemi venga zittito con la richiesta di sottoporre un paper a enti ai più sconosciuti (saranno tutti enti validissimi, non li sto mettendo in discussione) è un argomento miserabile e non ti sto a spiegare il perchè che se ci pensi un secondo lo capisci da solo.

    Intendiamoci io non ce l'ho con Ebay, la mia riflessione è che, a mio avviso, se internet vuole diventare un posto dove si possa commerciare seriamente, questi problemi se li deve porre *PRIMA* che repubblica faccia gli articoli folcloristici, se invece il modello di commercio elettronico che si vuole è il suk, va bene cosi come è ora.

  27. ALG dice:

    Calma. Leggete attentamente. Primo, non metto in dubbio che la comunicazione di eBay non sia il massimo o che non sia sicura come vogliono farci credere. Ho anche detto che manca un decalogo semplice per essere relativamente sicuri (la sicurezza assoluta non esiste) in Internet. Non nego esista un problema ma dico che, in base ad analisi di sicurezza scientifiche (perché sulla sicurezza c'è gente, io tra questi, che ci studia e pubblica articoli che devono passare una peer-review) il problema è relativamente poco grave. E questo è il punto del post di Mante…

    Inoltre il problema, come facevo notare, è architetturale e non implementativo, quindi eliminarlo non è semplice se non cambiando il funzionamento di eBay.

    Secondo punto, io non sto zittendo chi dice che c'è un problema, io dico che la sicurezza è una cosa scientifica. Non dico che ci sia consenso su tutto. Dico solo che non è questo il luogo deputato alla discussione sugli approcci scientifici alla sicurezza ma una serie di conferenze in giro per il mondo e quindi se volete contestare questi metodi è meglio che presentiate le vostre contestazioni a queste conferenze. Se il vostro scopo è invece solo capire, esistono parecchi libri che affrontano questi temi.

    Ciao

  28. antonio dice:

    Scusa ALG ma continua a sfuggirmi il problema 'architetturale'. Puoi iniettare codice HTML, QUALSIASI, quindi anche script per fare XSS, tramite le API di ebay. Bisogna aggiungere una funzione che filtra gli script o form verso altri siti con username e password. Ti sembra un problema architetturale e non implementativo. Com'e' che questa che tu chiami "funzionalita'" (e che invece e' un bug) non viene permessa nelle review dei libri di amazon, per esempio? Com'e' che una cosa del genere non viene permessa neanche nei forum?

    E' una vulnerabilita', e pure grave perche' mette a rischio dati personali degli utenti, non sottovalutiamo queste cose.

  29. ALG dice:

    Risposta semplice: si è deciso di permettere agli utenti "affidabili" di personalizzare le loro pagine delle aste. E' una scelta architetturale non implementativa.Si è deciso di non dare solo un sub-set limitante (come i commenti in questo blog) ma l'intero HTML per dare possibilità  di personalizzazione elevata. Altra scelta architetturale.

    A questo punto mi spieghi come filtri il codice potenzialmente malevolo? Ti do un indizio, secondo i miei colleghi che si occupano di metodi formali, si tratta di un problema indecidibile. In sostanza, a meno di limitarsi ad un html molto ridotto (già  i link e le immagini possono essere sfruttate per ingannare l'utente, diciamo solo formattazione semplice ed al massimo qualche tabella) non esiste un metodo sicuro per fare quello che chiedi. O meglio, esiste ma l'algoritmo potrebbe non terminare mai (problema dell'alt). Ovviamente puoi usare dei metodi di analisi statici o statici/dinamici per filtrare gli attacchi più banali ma è comunque possibile oltrepassarli se il proprietario può inserire il codice a piacere.