HDD password on dead computer

random1781

Honorable
Jul 20, 2012
2
0
10,510
My VAIO VPCS111FM died on me recently. Thinking I would easily recover my data, I slipped the drive into a dock but nothing happened....I quickly realized that this is because I use a password that is set via the BIOS.

I'm not asking how to bypass or reset the password because I know what it is, I'm just trying to find out some more info on how these things work so I don't potentially lose data and time. I've tried searching but to no avail, and I also endured a call to Sony's tech support where I had to explain more to them than they could to me. I'm wondering if anyone knows whether there is a standard for these firmware passwords or whether they're unique...is it a method set by the BIOS or by the drive itself? I tried booting from the old drive via my new Dell, but I can't type more the 8 characters for the password, and the password I set was longer. This makes me think that the BIOS may hash the password for the drive to store, and if that's the case it may be a BIOS-specific algorithm.

So....any thoughts?
 

te100

Distinguished
if its the hdd password its in the firmware of the drive. that way it follows the drive.
if its the bios password thats that can be reset by clearing cmos.

passwords/drivelocks cannot be removed from hard drives on fairly recent laptops (generally those less than ten years old), even by the experts. You must know the password, and the hard drive must be in the computer the password was installed on, or in one of a small model family made by the same maker that use the exact same method/software to lock the drive access. The password info is also stored on a chip on the more recent mboards that cannot be erased by removing a battery - you must know the password to remove a password - you could go to the expense of having that chip replaced so that the computer could be used otherwise, but the hard drive that has a password/drive lock will still have the password/drive lock.
 


The disk password can exist in two locations. It can be part of the hard disk controller, or it can be part of the hard disk itself. If it is part of the controller or system firmware then the implementation is controller specific, most do not do this. If it is part of the hard disk itself then it is specified by the ATA standard. You will need some ATA control software but it is theoretically possible to unlock it provided that you know the password

http://en.wikipedia.org/wiki/Parallel_ATA#HDD_passwords_and_security
 
Run HD Sentinel against the drive. This will confirm whether security is enabled.

http://www.hdsentinel.com/

As for the password, an ATA password is 32 bytes long (padded with trailing zeros) and is usually (always?) stored in the hidden System Area on the drive's platters. It will be encoded in ASCII if it was generated from application software. Otherwise, if it was generated via BIOS, such as in a laptop, then it will be encoded as keyboard scan codes.

Here are the keyboard scan codes for my MS wireless keyboard:
http://www.users.on.net/~fzabkar/MSKeyLog.TXT

The "make" codes are used when encoding your password bytes.

This simple DOS utility will echo the make and break scan codes of each keypress:
http://www.users.on.net/~fzabkar/SCAN.COM

Have you ever thought why the BIOS setup menu is restricted to Fn keys and cursor control keys, eg PgUp, PgDown, Home, End, Del, arrow keys, Space, Enter, Alt, Esc, Ctrl? I believe it's because BIOS has no way of knowing which international keyboard layout is in use, so it needs to use those keys which are universal. These universal keys have consistent scan codes.

Similarly, when you set a HDD password via BIOS, the scan codes of each key are used rather than their ASCII values. I think of scan codes as key numbers. For example, a particular key on a 101-key US keyboard may be key #30 with an ASCII value of 65 (an "A"), whereas the same key on a Japanese keyboard would have a different ASCII value, although its scan code would still be the same. To think of it in another way, imagine how you would identify a particular key if all the key tops were blank.

Note that if you have set the password via BIOS in a laptop, say, and you then attach the drive to a different machine, eg a Windows desktop, you will then need to send the password bytes via a file. If you try sending the password as ASCII codes, then the password challenge will fail.

A possible Windows solution would be an application such as Victoria for Windows. A DOS solution would be MHDD.