Il 21 Settembre 2010 Twitter ha vissuto delle ore di panico dovute ad un attacco Cross-Site-Scripting (XSS). Questo tipo di attacco consiste nell'inserire in un sito, sfruttando dei bachi, del codice Javascript capace di compiere delle azioni direttamente sul Browser del visitatore.
Nel caso di Twitter, questo tipo di attacco, comportava diverse modalità come il retweet dei post con solo righe nere oppure al passaggio del mouse reindirizzare l'utente in alcuni siti per Adulti. Nella sua semplicità questo tipo di insicurezza poteva comportare rischi maggiori per gli utenti perchè le pagine di destinazione dello script, invece di essere semplici siti per adulti, potevano essere delle pagine sviluppate ad-hoc per prelevare informazioni dal computer dell'utente.
L'attacco XSS interessava solamente il sito Web di Twitter e tutte le Web Application ad esso associate mentre le Twitter Apps per iPhone, iPad, Android, PC Desktop non risentivano di questa falla in quanto non sono delle applicazioni web.
Ma che cosa è successo?
Cercherò, mediante questi semplici esempi, di spiegare la causa di questo problema. Infatti, quanto accaduto è molto semplice... come si può vedere dall'immagine seguente, quando si usano le Twitter API si ottiene un file XML con i tweets come testo in chiaro i quali poi vengo elaborati e visualizzati nel nostro computer.
A questo punto ogni web application proverà ad individuare i link presenti nel file XML e convertirli in qualche cosa di cliccabile per l'utente.
Il problema,come nel caso di Twitter, si presenta quando non vengono gestiti correttamente gli URL lasciando la possibilità alle persone di aggiungere codice extra, come codice Javascript , per ottenere comportamenti anomali e fuori controllo. Come si vede dall'immagine seguente:
il problema è stato causato dalle " (ma poteva essere bene qualsiasi altro carattere) che permettevano l'aggiunta di codice Javascript per reindirizzare l'utente a siti per adulti, oppure creare retweet colorati e messaggi sullo schermo dell'utente.
Solitamente per evitare questo tipo di problemi si ricorre all'uso di espressioni regolari che indicano i tipi di caratteri "sicuri" da accettare negli URL.
Un esempio di espressione regolare può essere: (https?|ftp|file)://[a-zA-Z0-9;/?:@&=+$,-_.!~*()]+
Per chi non avesse ben compreso il tipo di problema avvenuto in Twitter può visionare il seguente video:
Poche ore dopo l'attacco XSS, lo staff di Twitter ha risolto il problema in un modo curioso; infatti, invece di utilizzare degli algoritmi di matching mediante espressioni regolari, come abbiamo visto in precedenza, ha pensato semplicemente di convertire le " nel corrispondente carattere speciale HTML "e... Si tratta sicuramente di una soluzione funzionante ma non la più elegante!
Oggi vi propongo un video, realizzato da Alessandra Farabegoli, che illustra in modo ironico le cose da non fare per realizzare una presentazione killer capace di spingere gli spettatori ad uscire dalla sala o a dedicarsi ad altre attività durante la vostra discussione.
Complimenti ad Alessandra per la bella realizzazione e consiglio a tutti di riflettere su queste sue parole!
Da qualche settimana è stata rilasciata la decima versione di iTunes che introduce alcune novità grafiche sull'interfaccia utente, per aiutare l'utente in una migliore fruizione dei contenuti musicali, podcast, TV show ecc. ed introduce Ping il primo Social Networktargato Apple per il mondo della musica!
In questo post analizzerò le performance, le novità grafiche di iTunes e le prime considerazioni su Ping.
Performance
iTunes 10 non è ancora stato completamente riscritto in Cocoa ma, in questa nuova versione, si notano dei miglioramenti di performance rispetto alla precedente versione.
La versione 9 di iTunes con una libreria di circa 6000 tracce per un totale di circa 25GB mostrava qualche rallentamento e un piccolo ritardo (soprattutto quando si utilizza coverflow) durante il cambio di canzone. Questo ritardo sembra essersi ridotto con la versione 10 che sembra più reattiva e fluida nel funzionamento. Come detto in precedenza iTunes10 non è stato riscritto in Cocoa quindi ho svolto una piccola indagine per individuare i motivi di questo aumento delle performance.
Dal confronto delle due versioni ho notato l'impiego, da parte di iTunes10, di un maggior numero di Thread che comportano un aumento delle performance del software sfruttando maggiormente la CPU, ci circa un 5% in più rispetto alla versione precedente. Ritengo che la scelta di utilizzare maggiormente la CPU per rendere il software più fluido sia un ottimo compromesso in attesa di una riscrittura totale di iTunes in Cocoa.
E' da poco finito l'Apple Event (1 settembre 2010) dedicato alla musica e, come tutti i keynote di Apple, le novità sono molte ed interessanti! Mi limiterò a riportare nel seguito del post un elenco delle novità introdotte in questo evendo, lasciando ai prossimi giorni delle recensioni dettagliate su alcuni dei prodotti (Spero iPod Nano e Apple TV):
iOS 4.2 per iPad (Entro fine anno)e iOS 4.1 per iPod, iPhone, iPad (entro fine settimana prossima). Le novità che riguardano questa versione del sistema operativo sono il supporto per la stampa wireless direttamente dal dispositivo con la quale sarà possibile selezionare una stampante tra quelle in rete, selezionare le pagine da inviare in stampa oltre a tutte le tipiche opzioni di stampa. Con questo nuovo servizio, nella barra del multitasking, sarà presente Print Center che mostrerà tutti i dettagli della fase di stampa. iOS 4.2 sarò possibile vedere contenuti in streaming quali musica, foto, filmati ecc. Questo servizio si chiamerà AirPlay.
Nuovi iPod Shuffle e iPod Nano: il più piccolo ed economico degli iPod (quello shuffle) sarà venduto a 49$ per il modello da 2GB e riproporrà i comandi nella parte frontale del dispositivo che tanto è mancata agli utenti... Per quanto riguarda gli iPod Nano, le novità sono maggiori infatti, è stata abbandonata la rotella magica che in questi anni ha caratterizzato i lettori multimediali di Apple. Ora, il nuovo iPod Nano, ha una forma quadrata e un piccoli display touch screen che permette di ruotare le immagini, il desktop e fornire controller audio touch screen oltre a dei tasti fisici per il volume. L'iPod Nano è dotato di un clip per posizionare il lettore nel punto adeguato al nostro tipo di attività. Il dispositivo sarà disponibile in due modelli quello da 8GB (149$) e quello da 16GB (179$).
Nuovo iPod Touch: descritto da Steve Jobs come la prima piattaforma di gioco mobile al mondo. L'iPod Touch avrà: un design più sottile, una fotocamera posteriore e frontale per consentire l'utilizzo di FaceTime, un processore Apple A4 per consentire un'esperienza di gioco più fluida ed in fine sarà dotato del Retina display per migliorare la qualità di visualizzazione dei giochi! L'iPod Touch sarà venduto in 3 versioni: 8GB (229$), 32GB (299$) e 64GB (399$)
iTunes10: Si tratta della decima versione del più noto dei player musicali in commercio... La prima delle novità di iTunes è la nuova icona che abbandona il CD, ormai un elemento superato nel mercato musicale, e porta con se solo alcune migliore a livello di interfaccia per consentire un accesso più rapido ai contenuti. La vera novità di iTunes 10 è introdotta da Ping, il primo Social Network dedicato alla musica! Stando alle parole di Steve Jobs, Ping è una sorta di Twitter per la musica, in cui cercare artisti nuovi da ascoltare e condividere i propri gusti musicali. Ping consente di seguire persone con gusti simili e scambiare opinioni sulla musica; in più, consente di seguire artisti famosi che possono pubblicare foto di concerti, eventi e stati d'animo che possono appagare la voglia di conoscere degli utenti.
AppleTV: nell'evento di oggi c'è spazio anche per gli hobby di Apple con la presentazione della nuova versione di Apple TV... il nuovo "box multimediale" di Apple è stato riprogettato anche nell'estetica con dimensioni ridotte, quasi 4 volte più piccolo della precedente Apple TV. La iTV, come molti preferiscono chiamarla, è una piccola scatola nera ed è dotata di connessione HDMI, ethernet e Wi-Fie consente di gestire film, serie TV, musica e contenuti HD (se disponibili) il tutto senza dover sincronizzare e gestire archivi che tanto complicavano la vita degli utenti. Gli Show televisivi costeranno 99 centesimi di dollaro mentre i film HD a 4,99$. Tutti i contenuti saranno affittati proprio per evitare la gestione degli archivi!La Apple TV non dispone di dischi di storage, non richiede sincronizzazioni ma funziona tutto completamente in Streaming.
Come avete potuto leggere le novità "multimediali" di Apple sono molte e tutte interessanti... non vedo l'ora di testare nell'ordine iTunes, iPod Nano e la nuovissima Apple TV... per quanto riguarda la iTV sarà disponibile in Italia entro fine anno (queste sono le voci degli ultimi minuti) ... proprio il fatto che sarà rilasciata anche in Italia crea in me qualche dubbio sulla disponibilità dei contenuti per un mercato,come quello italiano, ancora poco propenso allo Streaming.
Siete rimasti soddisfatti delle novità? Pensate di acquistare qualche cosa?
Mi chiamo Stefano Dindo e sono un appassionato di tecnologia e innovazione. Lavoro come System Engineer presso un'azienda di Padova, sono un innovatore e amo la rete internet e la sua filosofia! Per conoscermi meglio visita la pagina About Me.