Come fare a...
Web
Come fare a...

Analisi forense di un sistema Mac OS X

Le difficoltà a cui va incontro un analista forense

Pagine: 1 di 4 AvantiTop
Autore: Andrea Ghirardini e Gabriele Faggioli - Tratto: Computer forensics - Apogeo
Acquista il libro Dopo aver visto come analizzare un sistema Windows nello scorso articolo del nostro speciale sulla computer forensics, questa volta vedremo come viene analizzato un sistema Mac OS X e quali sono le difficoltà a cui va incontro un analista su questo tipo di sistema difficile da espugnare se configurato da un esperto.

Premessa

La piattaforma Apple Macintosh ha subito nel corso del tempo una notevole serie di modifiche, segnate da passaggi epocali: l’abbandono delle CPU 68xxx per i RISC PowerPC, il passaggio da Mac OS a Mac OS X, l’abbandono delle CPU PowerPC a favore delle nuove generazioni di processori Intel.
A ogni transizione il Mac ha guadagnato consensi fino ad arrivare a un ragguardevole 9% del mercato, raggiungendo nel solo 2008 la cifra di oltre 10 000 000 di Mac Intel venduti. I Mac attuali non hanno nulla da spartire con il parallelepipedo con monitor in bianco e nero uscito nella metà degli anni Ottanta. È cambiato anche il profilo medio dell’utilizzatore. Per rendersene conto basta recarsi in un qualunque raduno hacker in giro per l’Europa: il numero di Mac (specialmente portatili) presenti è notevole. Un risultato impensabile prima della transizione a Mac OS X.

L’idea di fondo

Il sistema operativo Mac OS X è formato da due strati distinti. Il sistema operativo vero e proprio è sviluppato principalmente da Apple ma è basato su una licenza Open Source, quindi raccoglie contributi da chiunque sia desideroso di condividere il proprio codice. È composto dal kernel ibrido XNU (un acronimo ricorsivo che sta per “XNU is Not Unix”). È definito ibrido perché è l’unione tra un kernel monolitico FreeBSD e il codice derivato dal microkernel Mach 3.0. Sopra a questo kernel è innestato un sistema di derivazione BSD (in particolare da FreeBSD), che riprende moltissimi concetti (dal layout del file system alla peculiare gestione dei file eseguibili, alla gestione delle configurazioni) da NeXTStep di NeXT. Tutto questo complesso prende il nome di Darwin.
Sopra a Darwin vi è lo strato commerciale, non Open Source. Esso include quanto segue.

  • Librerie grafiche e multimediali: Sono il fondamento della parte Closed Source del Mac. Forniscono tutto quello che è grafica e multimedia e sono usate da tutti i livelli superiori. Si tratta di Core Image (sistema per la visualizzazione 2D), Core Video (la libreria per la gestione di tutto quello che è video), Quicktime (per la gestione dei multimedia), Core Audio (libreria di gestione audio, sia esso wave o MIDI) e OpenGL (libreria grafica accelerata per il 3D).
  • Application Framework: Carbon, Cocoa, Classic e Java. Queste API corrispondono a una serie di librerie sulle quali possono essere basate le applicazioni sviluppate per Mac OS X (si ricorda che Mac OS X è la somma del sistema Open Source Darwin e della parte commerciale soprastante). Classic è l’ambiente di compatibilità con il vecchio sistema operativo Apple (non è più presente a partire da Mac OS X 10.5 e non funziona su alcun sistema Intel), Carbon è un insieme di API che permettono a un’applicazione Mac OS di girare entro Mac OS X beneficiando di una serie di caratteristiche tipiche del nuovo sistema, il tutto mantenendo la compatibilità con il vecchio ambiente. Cocoa è l’insieme delle nuove API per le applicazioni native di Mac OS X. Java è l’ambiente di compatibilità per le applicazioni Java. A questo livello, per i sistemi Mac basati su processore Intel vi è anche Rosetta, il sistema per rendere compatibili con Intel i vecchi binari PowerPC.
  • Livello utente: In questo livello si trovano l’interfaccia grafica Aqua, il sistema per la gestione degli widget (piccole applicazioni utili da avere a portata di mano), Dashboard, il sistema di indicizzazione per ricerche puntuali (Spotlight), e infine il sistema di compatibilità con X11.

L’insieme di queste due tecnologie (proprietaria sopra, Open Source sotto) ha avuto il curioso effetto di unire due diversi mondi. Molti dei software Open Source sviluppati per Linux e BSD sono stati portati sotto Mac OS X senza troppe difficoltà. Progetti come Darwinports e fink permettono di avere sotto Mac OS X un parco software Open Source pressoché infinito, senza essere costretti a installare un altro *BSD o Linux.

Darwinports e fink
Darwinports: implementa in Darwin (quindi in Mac OS X) il sistema dei ports molto noto agli utilizzatori di *BSD e di Gentoo Linux. fink: per gli amanti di Debian, è un progetto che implementa un repository Debian in piena regola (compresi i famosi comandi apt-*) sotto Mac OS X.

Dall’altra parte, la GUI “Closed Source” ha attirato la quasi totalità degli sviluppatori per la piattaforma Mac OS, che hanno velocemente convertito i propri programmi commerciali sotto Mac OS X. Si è così finalizzato il primo connubio assolutamente usabile tra Open Source e software commerciale, sotto un’unica egida.

Continua: 1 di 4 Avanti
Segnala questo articolo a un tuo amico

Apogeo

Vedi anche...

Sempre aggiornato

Abbonati alla newsletter di Come fare a... Sottoscrivi l'RSS di Come fare a... Usi Windows Live Messenger? Abbonati ai nostri Windows Live Alerts Unisciti al gruppo Come fare a... su Facebook Seguici su Twitter Scarica il Widget per Mac OS X