domenica 21 ottobre 2012

no Virus per Apple


Apple ha avuto una crescita così esponenziale che anche i Mac si sono ormai diffusi capillarmente, per non parlare poi dei dispositivi mobili. Ma allora come si spiega tanta sicurezza in un sistema operativo che non ha bisogno neppure di un anti-virus?
Il motivo risiede proprio nel sistema operativo stesso, in questo articolo parleremo di iOS focalizzandoci proprio sulla quasi impenetrabilità del firmware per dispositivi mobili. La difesa di un iPhone è data da una serie di livelli di sicurezza, accedere alla root di un iDevice è quindi davvero molto difficile (ecco perché il Jailbreak ci mette così tanto tempo per uscire).
 
 
iOS tuttavia si è evoluto molto nel corso degli anni, la sicurezza di iOS 5/6 per esempio non è paragonabile a quella del primo iPhone (iOS 1.0). Sotto questo profilo possiamo dire che la piú grande differenza hardware si trova fra iPhone 3GS e iPad 2: da una parte con il 3GS sono state introdotte differenti sequenze di codice, dall'altra l'iPad 2 invece possedeva un processore Dual-Core. Con i multi-processori è molto piú difficile sfruttare gli exploit (si intende per exploit un programma in grado di sfruttare un bug al fine di ottenere i massimi privilegi).
 
 
Un altro componente che rende ancora piú difficile degli attacchi è poi la cosiddetta Sandbox, con essa introdurre codice malevolo in un'applicazione sarebbe quasi inutile. Da una parte c'è la stessa Apple che controlla e revisiona tutte le app, dall'altra ogni app scaricata viene automaticamente firmata da Apple per poi essere installata nella Sandbox con privilegi limitati. Se l'applicazione non venisse firmata da Apple non potrebbe essere installata, se inoltre dovesse contenere un virus esso farebbe dei danni limitati in quanto non potrebbe raggiungere la root rimanendo solo nel livello riservato alle applicazioni.
 
 
 Ecco perché i prodotti Apple non prendono virus   Approfondimento
 
 

Una cosa molto importante inoltre da tenere conto se si vuole attaccare iOS o Mac OSX è la superficie d'attacco disponibile. I due sistemi operativi sono molto simili ma Mac OSX possiede una superficie d'attacco maggiore rispetto ad iOS (programmi come iChat per esempio non sono inclusi in iOS e Mobile Safari ha alcune differenze rispetto a Safari). La superficie di attacco è quella porzione del sistema operativo accessibile dall'esterno.
 
 
Oltre a ridurre il codice accessibile Apple ha poi ridotto ulteriormente la possibilità di attaccare iOS rimuovendo la shell (terminale). Al contrario di Mac OSX non è presente nessuna shell quindi eseguire codice arbitrario da là è impossibile. Il discorso poi dei privilegi e della firma del codice è molto importante. Tutti i processi dell'iPhone vengono eseguiti con dei precisi permessi, le applicazioni come Safari e Mail sono per esempio gestite dall'user “mobile” mentre quelli fondamentali del sistema dall'user “root“. Ogni singola riga di codice eseguibile viene infine firmata dalla stessa Apple, è quindi molto difficile eseguire codice arbitrario.
 
 
Le ultime misure di sicurezza si trovano infine nel cosiddetto ASLR (Address Space Layout Randomization). L'ASLR si occupa di gestire l'accessibilità di ogni singolo file di sistema, come i file binari e le librerie, randomizzando il percorso in cui sono localizzati. La difficoltà aumenta quindi sempre di piú per l'attaccante che si ritroverà a dover “inseguire” continuamente il percorso di un file.
Potete capire adesso quanto sia protetto un dispositivo Apple, al contrario di Windows nessuno possiede privilegi di root, accedere ad essa è inoltre difficilissimo a causa dei livelli di sicurezza adottati, scrivere un malware efficace è diventato quindi quasi un'impresa.

Nessun commento:

Posta un commento