giovedì 10 febbraio 2011

Estrarre le password ATA da un Hard Disk

Dopo un lungo letargo ecco una nuova guida che potrà aiutare tutti quelli che, for fun or profit, vogliono recuperare le user/master password ATA che, una volta attivate, proteggono(ma non troppo) l'accesso al disco.

Non vi tedierò con una paginata di disclaimer. Ma non venitemi a cercare se sentite puzza di bruciato o le preziose foto del vostro matrimonio sono state rimpiazzate da paginate di zeri.

CREDITS:
Questa guida è stata realizzata grazie alle informazioni trovate su questo thread trovato sul forum HDDGURU

Requisiti:


Hardware
  • Un computer con disk drive da 3.5"(la cosa più difficile da trovare)
  • Un floppy disk su cui installare il software
  • l'hard disk da sbloccare.
Software
  • MHDD v. 4.5 in versione immagine floppy self extract reperibile qui
  • il file MHDD.zip modificato con gli script per i dischi WD preso dal forum hddguru: Mhdd.zip
  • Il software Victoria, reperibile su Hiren's Boot CD
Questa procedura è specifica per un HD Western Digital Scorpio da 120Gb e dovrebbe funzionare su altri modelli prodotti da Western Digital.

Secondo le specifiche ATA, pubblicate da t13.org la cui ultima revisone è disponibile in formato pdf qui, le password sono memorizzate nella HPA (Host Protected Area). Questa parte del disco contiene parte(o tutto, dipende dai produttori) del firmware del disco ed è protetta dall'accesso. Il sistema operativo non è in grado di vedere quest'area perchè il BIOS, che media l'accesso al disco, la protegge.

Ma il punto esatto dove reperire le password all'interno dell'HPA dipende dal produttore. La procedura che segue va a recuperare le informazioni necessarie per il già citato WD Scorpio e molto probabilmente per vari modelli Western Digital. Altri produttori scrivono le password in aree diverse e gli script usati contengono gli offset dei dischi WD.

Procediamo con l'operazione di sblocco...

Partiamo col preparare un floppy disk con MHDD 4.5. Cliccando due volte sull'eseguibile, che dovreste aver già scaricato(ehi, era nei requisiti!) verrà creato un floppy avviabile col software.
Viene usata la versione 4.5 perchè la 4.6 non ha l'ATA Terminal che consente di eseguire gli script.

Creato il floppy si sostituisce il fle Mhdd.zip con quello che SICURAMENTE avrete scaricato. Tale file contiene gli script e altri file necessari a leggere l'area protetta.

Si collega ora l'hard disk protetto DIRETTAMENTE ad una porta P-ATA/S-ATA della vostra scheda madre. Non è possibile usare adattatori USB, write blocker o altre interfacce. MHDD bypassa il BIOS e va a leggere e scrivere direttamente sul controller. Il software funziona anche se il disco non viene visto da BIOS!
Dalla documentazione di MHDD:
Just look at this. This is a typical diagram how generic DOS program talks to the drive.
PROGRAM<--->MSDOS<--->BIOS<--->IDE/SATA controller<--->Hard disk
And now how MHDD works:
MHDD<--->IDE/SATA controller<--->Hard disk
Si fa quindi partire il computer col floppy preparato. Se date un'occhiata all'autoexec noterete che viene creato un RAMDRIVE in cui c'è l'eseguibile MHDD e tutti i file di configurazione. E' una cosa da tenere a mente, perchè il dump verrà scritto sul Ramdrive ed andrà in seguito copiato sul device fisico A:
Non mi dilungo troppo nei comandi DOS. Sappiate comunque che il mouse con questo software è utile solo come fermacarte. BISOGNA USARE LA TASTIERA ed interagire con MS-DOS. Una guida al DOS esula dagli scopi di questo documento. Non mi chiedete come si copia un file. Vi tratterei malissimo.



Schermata d'avvio di MHDD(chiedo venia, ma gli screenshot in DOS non sapevo come altro farli)

Con il comando [SHIFT+F3] il software esegue la scansione del controller alla ricerca dei dischi



Il disco che ci interessa è il numero 12.

Il comando EID restituisce le informazioni estese sul disco


L'hard disk risulta bloccato da password ATA ed il livello di sicurezza è impostato su HIGH

eseguo lo script DUMP con il comando .dump(attenzione al punto!)


Non ho ben chiaro il significato dei valori esadecimali presenti alle righe REGS, sono comunque specifici per i dischi Western Digital e credo siano legati agli offset necessari a leggere la porzione di HPA in cui è conservata la password. Sicuramente troverete le informazioni sui registri scartabellando le 409 pagine del documento sulle specifiche ATA...

lo script genera due file: 21.bin e 22.bin.

con il comando EXIT usciamo dal programma. Il file ora è su C:\MHDD. Lo copiamo sul dischetto e lo importiamo in un editor esadecimale.


Il file 22.bin importato in UltraEdit:


Gli offset potrebbero essere diversi, ma la sequenza dei byte all'interno del file è simile.
All'offset 0x137 il valore 07 indica il livello di sicurezza ATA(in questo caso HIGH). Le password sono i due campi da 32 byte evidenziati. In rosso è evidenziata la user password. In verde la master password.

Seleziono le due password e da UltraEdit File-->Salva selezione con nome mi salvo su chiavetta USB le due preziose password.

Finalmente potete tornare ad usare il mouse!!!
Nella postazione in cui abbiamo l'hard disk da sbloccare avviamo Hiren's BootCD in modalità Mini widnows XP(io ho usato la versione 13) ed inseriamo la chiavetta USB con i file delle password.

Montiamo la chiave USB con Mount Removable Devices presente sul desktop di Hiren's.
Se non la monta cliccheremo sull'icona subito sopra(Install all Hardware)

Dal menu di Hiren's lanciamo HBCD-->Hard Disk/Storage-->Victoria


Evidenziamo il disco che ci interessa e il software ci dice che è(ancora) bloccato.

La sezione Security manager non è però utilizzabile.
Victoria funziona in due modalità: API e PIO. I comandi ATA(come quelli di lock/unlock) devono essere inviati direttamente al controller, senza mediazione di BIOS o API. Passiamo quindi in PIO mode ed clicchiamo su PCI SCAN


Ed appaiono le porte PATA/SATA del computer.
A quale porta è collegato il nostro disco target?
Se clicchiamo su ognuna di quelle porte, in basso si accendono/spengono i registri PIO. Il nostro disco è sicuramente tra quelli che hanno il flag DRDY(Drive Ready) acceso.
Cliccando due volte sulle righe a sinistra appareil disco collegato a quella porta.
Nel mio caso il disco è collegato alla porta identificata dall'indirizzo 0960.


Riappaiono le informazioni sul disco MA stavolta la sezione Security manager è attiva.

Finalmente ci siamo. Il disco sta per essere sbloccato...


clicchiamo su F, selezioniamo il file con la nostra user password(nel mio caso fw1), verifichiamo che i radio button siano impostati su User e High, clicchiamo su Unlock ed in basso il log del file ci segnalerà il buon esito dell'operazione!

Se ora torniamo in API mode il software continuerà a segnalare il disco come locked. A disco acceso la modalità API non aggiorna lo stato del disco. Basterà spegnere il computer ed al riavvio successivo il disco risulterà sbloccato.

Spero di essere stato d'aiuto a tutti gli smanettoni, curiosoni, periti forensi, ecc ecc

La mia soluzione non è la migliore, nè quella che mi sento di consigliare ai deboli di cuore. I programmi usati sono ESTREMAMENTE pericolosi se non usati con attenzione, potreste trovarvi con un disco vuoto o addirittura inutilizzabile. Mi raccomando.

Esistono altre soluzioni, come hardware dedicati o siti che effettuano l'operazione di sblocco da remoto. Google is your friend.

Alla prossima.
F.

9 commenti:

Emilio ha detto...

Davvero un bel lavoro, complimenti

Anonimo ha detto...

Complimenti, ottima guida

Unknown ha detto...

interesante davvero

nispa ha detto...

Good Job!

Anonimo ha detto...

Interessante davvero ma...
Peccato che queste guide,e mi riferisco anche a hddguru,si riferiscano sempre e solo a dischi WD!Io ad esempo ho un fujitsu bloccato e....non so propio da che parte cominciare! :(
Grazie cmq dell'ottima spiegazione!
(sopratutto in ITALIANO! :)

Kadla ha detto...

You are god. Thank you very much.

Anonimo ha detto...

Thanks.

Very useful.

Anonimo ha detto...
Questo commento è stato eliminato da un amministratore del blog.
Anonimo ha detto...

Greetіngs from California! I'm bored ɑt ѡork so I decided tο browse yоur website on my
iphone during lunch break. I enjoy tһe infоrmation you
ρresent hеre and can't wait to take а ⅼook wһen I get һome.
I'm shocked аt how fast your blkg loaded on my phone ..
І'm not even using WIFI, јust 3G .. Αnyhow, awesome blog!