Cerca nel blog

2004/10/05

Toh guarda, immagini assassine anche per Mac

Le immagini assassine mordono anche la mela.


L'aggiornamento di sicurezza arrivato oggi sul mio iBook contiene una patch che corregge una vulnerabilità per certi versi simile a quella della JPEG assassina che sta funestando il mondo Windows.

Infatti la patch di oggi, stando alla descrizione Apple, corregge (fra le altre cose) una falla di Quicktime, etichettata CAN-2004-0926, che consente a un'immagine in formato BMP di sovrascrivere la memoria heap, aprendo quindi la strada a eventuale codice ostile annidato nell'immagine.

Traduzione: anche il Mac può essere danneggiato attraverso le immagini. Non sembra un problema così vasto come quello delle JPEG di Windows, perché per esempio Quicktime non viene invocato dal browser per visualizzare le immagini e quindi non dovrebbe essere possibile infettarsi visualizzando un'immagine online. Né, che io sappia, ci sono in giro "virus" o altri tipi di exploit che sfruttino questa falla. Comunque sia, non è piacevole.

4 commenti:

Anonimo ha detto...

Non solo QT non viene invocato dal browser per le immagini (nè, in generale, dal sistema, che di regola utilizza Preview); va detto anche che bmp - oltre ad essere un formato poco comune sul Mac, che usa piuttosto il tiff - essendo non compresso (e quindi "pesando" molto) non è nella pratica comune adoperato in Rete.
Inoltre, al contrario del problema delle jpeg su windows, qui il problema viene definito "potenziale". Non s'è arrivato a trovare un metodo reale per usare la falla, quando per il jpeg s'è pure pubblicato il codice d'esempio.
La falla insomma c'è, è vero, ma in un certo senso è come se non ci fosse.

Alessio

Anonimo ha detto...

Aggiungerei che bisognerebbe, ormai, parlare al passato visto l'aggiornamento di sicurezza già diffuso.
Insomma semmai tutti questi pericoli sono rivolti a chi non ha installato l'ultimo aggiornamento sicurezza.
Problema già risolto.

Offme
Happy iMacLCD & Powerbook 15 user.

Anonimo ha detto...
Questo commento è stato eliminato da un amministratore del blog.
Anonimo ha detto...

Apparso su it.comp.macintosh.
postato da Wonderboy il 7/10/2004 a proposito di questa storia dei BMP.
Riporto con la sua autorizzazione:

Visto che purtroppo c'è parecchia disinformazione, riposto il mio msg in
risposta ad un topic di ieri:

Nel Security Update si legge:

> Description: Flaws in decoding the BMP image type could overwrite heap
> memory and potentially allow the execution of arbitrary code hidden in
> an image.

Beh, quel "potentially" è davvero mooolto improbabile: affinchè del
codice inserito in una immagine possa essere eseguito, la "porzione" del
codice dell'immagine che ha ecceduto il suo spazio di indirizzamento
dovrebbe finire nello STACK (e non nell'heap) di un altro processo,
diversamente, nell'heap ci sono veriabili, valori di funzioni, ecc...non
potrebbe eseguire alcuna istruzione.
Se pure tale codice finisse nello stack, dovrebbe essere coerente con le
informazioni di controllo del processo che ha invaso (ad esempio,
sostituire con una riga di codice esattamente una riga di codice)
altrimenti il programma sovrascritto andrebbe semplicemente in crash.
Diciamo che è più facile vincere al superenalotto che trovarsi in una
condizione simile ;)

Sulla questione BMP pericolose per Mac come JPEG per Windows - NON
C'ENTRA NIENTE, SONO DUE COSE DIVERSE, infatti:

In windows non si tratta di un problema di overflow bensì del fatto che
il parser di una immagine JPEG va in esecuzione in modalità utente ma
può eseguire operazioni di ogni genere (come qualunque programma in
ambiente windows), pertanto, se qualcuno attacca un bel virus tra le
istruzioni di crc di una immagine, lo scheduler di windows esegue
l'istruzione di controllo (ad esempio sulla dimensione dell'immagine) ed
il codice virus senza battere ciglio.

Su Mac, invece, una situazione simile NON E' POSSIBILE in quanto una
istruzione potenzialmente pericolosa NON E' ESEGUIBILE il modalità
utente bensì in modalità supervisore. Come insegnano alla seconda
lezione del corso di Sistemi Operativi, un programma (quale, ad esempio,
Anteprima di OS-X) per eseguire del codice pericoloso può solo passare
da user -> superuser con una istruzione di controllo (ad esempio una
fork(), vabbè ma meglio non dilungarsi :) ), circostanza in cui OS-X
chiederebbe di immettere la password amministratore per consentire al
programma di eseguire una porzione del codice.
Questo è il motivo per cui su Mac non esistono virus, perchè se
volessero fare danni dovrebbero chiederlo all'utente :)

...spero di essere stato chiaro.

WonderBoy ;)


Offme