\\ Home Page : Articolo : Stampa
IPhone recupero file...un gioco di squadra!
Di Admin (del 19/10/2010 @ 16:04:33, in Computer Forensics, linkato 17430 volte)

Un giorno l' amico Armando Buzzanca mi chiama perchè deve recuperare una nota vocale (un file audio) di un suo amico, che l'ha cancellato per errore dal proprio IPhone.

La vedo difficile, anche perchè col mondo della Mela non ho molto a che fare, quindi si procede per tentativi, non essendo un'attivita forense ma di semplice recupero dati.

Noto subito che l'IPhone non dà accesso a tutti i dati per questo motivo ha bisogno di essere Jailbrekkato, ossia una specie di sblocco che permetterà anche l'istallazione di un'APP chiamata Cydia tramite la quale si potranno scaricare diverse altre applicazioni utili per eseguire l'immagine di tutto l'IPhone su file.

Inizia il gioco di squadra:

Telefono all'amico Nicola Troccoli, che mi suggerisce di collegarmi col Safari dell'IPhone al sito: http://www.jailbreakme.com , ma questo jailbreak non funziona sul firmware 4.01, quindi apro Facebook e chiedo aiuto, tra commenti e chat becco Antonio Di Giorgio che mi suggerisce Limera1n un altro Jailbreak, che questa volta funziona (mi suggeriscono anche GreenPois0n)! Intanto, fioccano i commenti ed i consigli di altri amici.

Riavviato l'IPhone, appare Cydia, dopo aver smanettato un pò, riesco a scaricare ed istallare Mobile Terminal e OpenSSH, a questo punto entra in ballo Linux!

Colleghiamo l'IPhone alla rete WIFi e poi loggandoci nel router vediamo quale indirizzo IP ha preso l'IPhone:

192.168.1.154

Lanciamo CAINE Live su una macchina ed istalliamo il server SSH

sudo apt-get install ssh

poi

sudo /etc/init.d/ssh start per avviare il server SSH. (per approfondimento il libro di Denis)

A questo punto da Caine, montiamo un disco NTFS in scrittura e lanciamo la Terminal Window poi digitiamo:

sudo ssh 192.168.1.154

ci appare il prompt del terminale dell'IPhone, inseriamo le credenziali:

user: root

password: alpine

(sono quelle di default dell'IPhone)

poi digitiamo

dd if=/dev/disk0 | ssh caine@192.168.1.233 dd of=/media/sda1/iphone/iphone.dd

dove 192.168.1.233 è l'IP di Caine collegato anch'esso in rete WiFi.

Adesso il sistema chiederà la password di Caine (dato che deve collegarsi al server SSH di Caine) e quindi digitiamo "caine".

Il dd parte e comincia a scrivere i 16Gb del file immagine nella directory scelta.

ANALISI

Adesso dobbiamo trovare il file della nota vocale, chiamo di nuovo Nicola e mi faccio spedire una nota vocale, il file è prova.m4a

Apro prova.m4a con l'editor esadecimale e tiro fuori l'header:

00 00 00 1C 66 74  ed il footer 00 00 2C

Creo il file foremost.conf

m4a y 8000000 \x00\x00\x00\x1C\x66\x74 \x00\x00\x2C

lancio da Caine:

foremost -c foremost.conf -i iphone.dd -o ./carv

parte il data carving...ed alla fine...non ricaviamo un ragno dal buco!

Adesso non so se è a causa del tipo di file particolare oppure per altri motivi, però provando a cercare JPG, AIFF, MOV il carving è andato a buon fine....quindi il tutto funziona, indagherò ulteriormente per capire come estrarre o montare quel tipo di file immagine.

Il tutto è stato fatto con strumenti gratuiti e manualmente, certamente se avessimo usato un UFED, magari avremmo avuto meno problemi ;)

 Il gioco di squadra è stato fondamentale la RETE di aiuti e competenze che si attivano ed io son partito da zero....la stessa  sensazione di quando sviluppavo Caine, chat, email, telefono, sembra di essere in un mega team ....REMOTO e tutto si velocizza e si impara.

In fondo, quelli che hanno inventato il calcolo distribuito l'avevano vista giusta...meglio tanti cervelli al lavoro su un problema in parallelo...e  senza bisogno di essere nella stessa stanza...!

Non so se questa mia soddisfazione sia giusta o sbagliata, so solo che oggi ho imparato tanto e forse da solo ci avrei messo di più o mi sarei annoiato nel farlo!

Continuiamo a confrontarci ed a scambiarci le conoscenze...si cresce! 

Anzi confido nei commenti a questo articolo per continuare a suggerire come agire e migliorare alcuni passaggi di questa procedura ;)

Adesso un pò di note:

http://www.ispazio.net/guide-jailbreak-iphone-3g (vari JailBreak)

The whole shebang:
ssh user@iphone-ip dd if=/dev/rdisk0 bs=1M | dd of=iphone-dump.img

Just the system partition:
ssh user@iphone-ip dd if=/dev/rdisk0s1 bs=1M | dd of=iphone-root.img

Just the user data partition:
ssh user@iphone-ip dd if=/dev/rdisk0s2s1 bs=1M | dd of=iphone-user.img

 Se avessimo voluto usare MS Windows al posto di Caine:

PuTTY come client SSH

freeSSHd come server SSH - (create un utente Windows per usarlo come user non loggato in freeSSHd)

by Nanni Bassetti