Posts Tagged ‘bug’

Hanno rotto Google, perchè? Una spiegazione tecnica.

Saturday, January 31st, 2009

google

Si è rotto Google. Oggi pomeriggio il riultato di qualsiasi ricerca veniva segnalato come pericoloso per la sicurezza dei computer degli utenti, perfino i siti i Google stessa, come è visibile dall’immagine sopra.

Cosa è successso? I fatti sono spiegati nel blog di Google, e si capisce subito che l’errore è di natura umana. Google riceve periodicamente da StopBadware.org, un’organizzazione non-profit, una lista di siti internet che contengono virus e malware e utilizzandola segnala i risultati delle ricerche che potrebbero esser pericolosi per gli utenti.

A causa, sembra, di un errore umano in tale lista vi è entrato il carattere / che il software di segnalazione dei siti pericolosi ha interpretato come “tutti i siti sono pericolosi” e per questo tutti i risultati delle ricerche, siti di Google compresi, risultavano segnalati come potenzialmente pericolosi.

Individuata la causa, il problema è stato facilmente risolto ripistinando una vecchia lista che non contenva il carattere /.

Ma perchè un errore così banale ha avuto risultati così disastrosi? Poteva essere prevenuto questo disastro?

Un errore del genere è dovuto al fatto che chi ha scritto il software per la lettura delle lista dei siti “malvagi” non ha tenuto conto che questa potrebbe contenere degli errori infatti una delle prime regole di programmazione sicura è di non fidarsi mai dei dati in input, perchè questi potrebbero esser malformati, come è successo con il carattere /, portando il software in condizioni inspettate. E direi che segnalare tutti i siti come pericolosi è una condizione inaspettata.

Questo errore di programmazine poteva essere prevenuto e rilevato utilizzando quello che viene chiamato unit testing, che è un processo di testing che serve per vedere come i software reagiscono alle condizioni inaspettate.

Di certo Google, che utilizza tecnologie di sviluppo all’avanguardia, questo lo sa benissimo, probabilmente i tecnici si sono dimenticati di valutare il caso del famigerato carattere /.

Questo caso inoltre mi ha ricordato il defacement di SecurityFocus.

SecurityFocus è un sito di sicurezza informatica, che è stato violato, precisamente defacciato una volta sola. Ed è stato violato in un modo molto semplice, siccome la sua sicurezza era troppo alta per essere attaccata, è stato più facile violare che i server della società (terza parte) che fornisce i banner pubblicitari, e che compaiono nelle pagine di SecurityFocus. Cosi il sito è stato violato senza aver attaccato i suoi server.

Una cosa analoga è successa oggi, dove Google si è fidata di una terza parte che le forniva la lista degli URL “malvagi”, e tale terza parte ha causato un problema grave.

Questo ci insegna che non bisogna mai fidarci di noi, ma ancora meno fidarci degli altri.

OsX il piu` vulnerabile

Sunday, March 30th, 2008

Mac OSX e` stato il primo a cedere.

Il PWN2OWN organizzato all’interno del CanSecWest consisteva in tre laptop con installati MacOSX, Ubuntu Gutsy e Windows Vista in configurazione client e full patched, ovvero completamente aggiornati alle ultime patch, quindi in teoria senza vulnerabilita` pubblicamente conosciute. La sfida consisteva nel riuscire a violare la sicurezza di uno dei tre laptop.

Il team di Charlie Miller ha vinto violando la sicurezza di un MacBook Air su cui era installato OSX sfruttando una vulnerabilita` non conosciuta in Safari. La scrittura dell’exploit ha richiesto un bel po’ di lavoro di un tream di tre persone, molto probabilmente e` funzionante anche nella versione per Windows di Safari. Spulciandosi i commit del trac di webkit sembra che la vulnerabilta` utilizzata sia stata patchata da questo commit.

Ovviamente un evento del genere non dice molto sulla robustezza dei sistemi operativi presi in esame, ma puo` mostrare su cosa i bug hunter puntino di piu` negli ultimi tempi.

Bug dei processori Intel Core 2

Wednesday, July 4th, 2007

Da un po’ di tempo si vedono aggiornamenti di sistemi operativi proprietari e di BIOS che recano la dicitura “A microcode reliability update is available that improves the reliability of systems that use Intel processors” come questo di Microsoft.
La complessita` crescente delle CPU moderne e del microcodice in esse contenuto potrebbe a lungo termine portare le stesse problematiche di sicurezza dei programmi software nel mercato delle CPU?
Ad esempio “Si dice [1]” che la serie di processori Intel Core 2 abbia qualche problema di bugs, il che mi sembra normale, perche` contenendo software sotto forma di microcodice di certo questo non potra` essere perfetto.
Sappiamo anche che di tutti i bug scoperti non tutti possono essere utilizzati per violazioni di sicurezza o negazioni di servizio, ma probabilmente alcuni possono esserlo, e ancora peggio possono esserlo direttamente dall’userspace.
Quindi potenzialmente abbiamo la disponibilita` di sfruttare vulnerabilita` che forse non possono nemmeno essere tappate, se non con un aggiornamento hardware.
Direi un campo molto interessante, su cui si deve appena iniziare a fare ricerca e dove credo si troveranno molte cose eclatanti.
Il problema secondo me non e` ci sono o ci saranno in futuro problematiche del genere. Ci saranno sicuramente, se gia` non ci sono e ancora nessuno lo sa, la domanda e` come reagiremo? Quali saranno le politiche da adottare? Quali saranno i nuovi thread?
Di sicuro i produttori dovranno rivedere la politica di aggiornamento dei BIOS, al momento secondo me totalmente inadeguata ad affrontare delle problematiche di sicurezza.

Riferimenti: