Firefox stores the passwords as MD5 Hashes. No longer the most secure, as certain strings of letters can result in the same MD5 hash (hence hashlists becoming more and more prevalent.
Hashing and encryption are 2 different stuffs. And password hashing with MD5 up to date is considered very secure, why wouldn't it be secure? The chances of MD5 string collision is like very low, it's like one in a billionssssss chance of having string collision. Password hashing with MD5 is not really vulnerable to the crypto collision attack. Unless your password is a dictionary word, else cracking the MD5 hash is almost impossible as it takes years to bruteforce it. And it's not possible to use MD5 hashing method to save the 'saved password' plaintext. Because it would be almost impossible for Mozilla to reverse it, unless they keep a reference of the plaintext to the hash key somewhere, which is pointless in this way since then they cannot really 'remember' the password, but just returning the hash of the plaintext which would be invalid password lol. Therefore they are using some encryption method to ENCRYPT the password, so that it can be reversible if only they have the 'key' to decrypt it.
Anyway, Firefox doesn't hash the saved password with MD5. It only encrypts/decrypts the password using the key3.db file. key3.db is the file that holds the key to encrypt and decrypt the password in plaintext. However the decryption process can be done easily under the Security tab options easily in Firefox.
Back to topic, I don't think there is any remote attack on stealing key3.db and signons.sqlite file which stores your username password. Unless you are infected with some backdoor virus or someone did a remote buffer overflow attack on you to plant backdoor, which I don't think it worth the time to do it. Most probably what you should concern about that is just local security issues instead of remotely.
Edited by hello123, 05 January 2011 - 08:03 AM.