L'idea mi è partita per via di un pc notebook che partiva solo se veniva inserita una chiave usb.. non esisteva altro modo per riuscire a visualizzare i dati all'interno e se ci sta un altro modo ho trovato più comodo craccare la chiave.. allora..
premetto una cosa.. io non sono un gran genio riguardo l'hardware per cui se trovate grezzo il mio hack ditelo chiaramente anzi ancora meglio scrivete voi un articoletto per spiegare come avreste fatto voi..
innanzitutto.. prendete la chiave usb.. sono fatte più o meno tutte uguali.. il guscio o è termosigillato o ha chiusura a pressione o ancora semplici vitarelle.. cmq per aprire quello termosigillato munitevi di un accendino o ancora meglio di un lume ad alcool.. date fuoco allo stoppino e aumentate la fiamma.. che nn sia tanto alta ma che rimanga bella viva.. avvicinate la chiave alla fiamma stando attenti che non sciolga il guscio.. basta poco.. fate in modo che si riscaldi appena e la colla all'interno allentera la sua presa.. appena riscaldata infilateci un taglierino ed apritela.. per quelle a pressione o a vite non vi spiego neanche come fare.. spero che ci arriviate da soli.. se non riuscite neanche in questo potete anche smettere di leggere..quando avete aperto la chiave noterete un microprocessore.. stranamente facendo una piccola ricerca su internet ho scoperto che la maggior parte delle chiavi usano il medesimo microprocessore..è a 8 bit miniaturizzato.. anche se la chiave è di diverse marche è sempre lo stesso.... mah.. leggi di mercato forse.. cmq non interessa ai fini specifici del nostro hack.. a questo viene associato un chip di memoria non volatile in grado di essere scritto e letto con un qualsiasi programmatore EEPROM di un certo livello.. in ogni caso va bene quello che usavate per telepiù.. ricordate?.. tiratelo fuori dal cassetto che torna utile hehehe..solitamente i produttori di chiavi usb riempiono di colla il microprocessore per ovviare al problema.. poveri idioti.. cercano di nascondere il modello e le connessioni..ma solitamente questi lavori non sono tanto accurati.. le chiavi che ho aperto io avevano in bella vista il logo del circuito integrato e a quel punto arrivare al modello è piuttosto semplice.. qui arriva in aiuto il nostro fedelissimo google.. che ci aiuterà a trovare il modello e le specifiche esatte.. in alcuni casi invece la EEPROM potrebbe risultare completamente coperta dalla colla ma.. solitamente il circuito stampato prevede una espansione di memoria con le piste bene in vista dietro il circuito stampato.. sulla faccia inferiore esattamente.. piste collegabili con molta semplicità all'analizzatore o al programmatore.. in ogni caso questo genere di progettazione si presta molto bene ad un hack molto semplice.. basta collegare un programmatore di circuiti alla memoria per riuscire a scaricare le informazioni private.. piuttosto semplice non trovate?..alcuni processori che solitamente vengono usati per le chiavi elettroniche consentono a questo punto di modificare il PIN del microchip.. decodificare i dati inserendo il PIN di default ed eseguire il dump della memoria non volatile.. non mi chiedete cosa è un pin perchè vi strappo le dita e le uso per pulirmi il naso.. cercatevelo su google cosa è un pin.. cmq ci consente inoltre di salvare il pin di amministrazione per garantirci di riuscire a ripristinare il tutto dopo il nostro hack senza che sia presente nessun segno del nostro attacco..vi faccio un semplicissimo esempio.. se prima del nostro attacco abbiamo il dump:
00000010 1234 ABCD 5678 EF01 - 1357 2468 ACE0 BDF1 (user PIN e admin PIN)
00000020 369C 48D2 1A2B 3C4D - FFFF FFFF FFFF FFFF (default pin)
per avere accesso ai dati basterà effettuare una semplice modifica..
00000020 369C 48D2 1A2B 3C4D - 1357 2468 ACE0 BDF1 (user PIN e admin PIN)
00000020 369C 48D2 1A2B 3C4D - FFFF FFFF FFFF FFFF (default pin)
avete capito no cosa ho fatto?.. ho inserito come admin il PIN di default cosi posso leggermi i dati in tutta tranquillità.. ma purtroppo non tutti i costruttori sono cosi immensamente "furbi".. ed alcuni usano cifrare il PIN.. il sistema di cifratura solitamente viene in genere attivato con la fornitura di una master key quando viene richiesta l'inizializzazione e la configurazione del sistema per accedere in poche parole ai dati.. proprio per evitare attacchi simili..ma siccome noi non siamo completamente idioti ed abbiamo studiato qualcosina sappiamo che una master key può contenere fino a 256 caratteri ASCII ma viene come al solito predefinita dalla fabbrica ghghghgh.. non posso dirvi con quale valore altrimenti l'articolo non potrebbe essere pubblicato.. vi do solo un aiuto.. si tratta di un nome astratto che ha a che fare con la pioggia e la pace.. cmq queste info le trovate sempre tramite google.. (imparate ad usarlo questo motore di ricerca) andiamo avanti.. su questa chiamata viene eseguito un digest di tipo MD% che verrà codificato poi con un algoritmo proprietario residente nella memoria esterna.. ma guardando bene l'analisi della EEPROM vediamo che solamente i primi 8 bYte dell'MD% sono codificati e conservati con questo sistema.. in questo caso il pc genera le hashed master key localmente prima di eseguire il login sulla chiave usb.. le API del sistema di protezione vogliono gli 8 byte della hashed master key e non la master key password che li ha creati.. in questo modo l'accesso ad amministratore sulla chiave puo essere conquistato.. abbiamo tutti i dati che ci servono.. o meglio possiamo ricavarli.. abbiamo 2 modi per farlo.. scoprendo la hashed master key dalla master key cifrata usando una nuova stringa come master key password e salvandola poi nella EEPROM o codificando una nuova master key cifrata e salvandola poi nella EEPROM.. in ogni caso ci tocca decodificare l'algoritmo generatore proprietario.. sembrera una cosa assolutamente impossibile a prima vista ma risultera molto piu semplice di quanto immaginiate.. proviamo inizialmente a definire un valore noto per la hashed master key e vediamo un po il risultato del passaggio attraverso l'algoritmo di codifica.. dopo qualche tentativo cominciamo a vederne la logica.. o come parlano i programmatori.. dopo qualche iterazione ci appare il pattern di cifratura.. non vi spaventate ragazzi.. nulla di difficile e/o complicato.. vediamo una serie di XOR e addizioni dirante i nostri tentativi che ci portano a scoprire come lavora l'algoritmo.. per sapere quali valori sono xorati o addizionati ad un valore da noi impostato.. ad esempio 0x0000000000000000 hehehehe semplice no?.. vi faccio un semplicissimo esempio..
X - master key = 0000 0000 0000 0000
Y - EEPROM master key = F1F3 F007 F110 F001
e questo ci fa vedere il pattern di codifica
Y1 = X1 XOR 0XF1
Y2 = X2 XOR (X1 + 0xF3)
Y3 = X3 XOR 0xF0
Y4 = X4 XOR (X3 + 0x07)
Y5 = X5 XOR 0xF1
Y6 = X6 XOR (X5 + 0x10)
Y7 = X7 XOR 0xF0
Y8 = X8 XOR (X7 + 0x01)
state cominciando a capire come funziona questo algoritmo?.. bene.. dopo che abbiamo definito la master key codificata o la hashed master key diventa piuttosto semplice eseguire un login come amministratore al sistema della sicurezza ed ottenere cosi l'accesso ai dati cifrati nella chiave usb.. considerate che un simile attacco può essere portato in circa 15 minuti.. ma non è l'unico tipo di attacco fattibile ad una usb.. esistono anche attacchi via software.. ma non mi sono cimentato anche perchè mi sarebbe piaciuto provare un analizzatore di protocollo usb e non è certamente alla mia portata comprarne uno.. cosi mi sono fermato a questo.. se qualcuno di voi che legge ha delle aggiunte da fare o delle correzioni sono ben accette.. considerate che non sono certo un genio dell'hardware per cui trattatemi bene ok?..
Per pubblicare i tuoi articoli contattaci!
L'articolo ha la finalità di insegnare a chiunque gestisca una rete le procedure di attacco utilizzate dagli hacker in maniera tale da poterle emulare per correggere errori di sicurezza, è assolutamente vietato utilizzare suddette tecniche in WLAN che non siano di vostra proprietà. Dissociamo da qualsiasi attività illegale!
Copyright © by Raulken.it All Right Reserved.