11.07.2015 Views

syssec_red_book

syssec_red_book

syssec_red_book

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

7.2. Who Is Going to Be Affected?social engineering) [153], or, as we have frequently observed recently, throughleaking the password database of services [26, 59]. Hardware advances haveovercome the irreversibility of hash functions.Moreover, users frequently reuse the same password at multiple web sites.In fact, Florencio et al. [181] studied the password habits of more than half amillion users, and found that on average a password is sha<strong>red</strong> with six othersites. Password reuse imposes a significant problem because it implies thatan attacker cracking a single password can gain access to multiple sites andservices for which the user holds an account. Password reuse also acts as acounterincentive for sites to use hash functions like bcrypt, as an attackercould target a less secure site—for instance one that saves passwords in plain—compromise its database, and use the obtained passwords in other services.7.2 Who Is Going to Be Affected?Users of all systems that implement text-based password authentication experiencerisks. If a system is compromised, then passwords may be leaked.We stress here that an attacker can expose a system’s passwords without fullycompromising it. For example, a successful SQL injection can reveal all passwordssto<strong>red</strong> in a web site’s database. Furthermore, users that recycle the samepassword in many different services potentially receive the security offe<strong>red</strong>by the service providing the least security guarantees. If a weak service iscompromised, then all the user information sto<strong>red</strong> in services where the victimhas registe<strong>red</strong> with the same password is at risk.7.3 What Is Expected to Happen?An attacker who somehow obtains hashed passwords from the database of aweb service has all the data needed to attempt to crack them. He holds thepassword hashes and knows the function as well as any salt used to generatethem.With this information in hand, an attacker can employ various methodologiesto crack the passwords in the obtained database [234]. The simplestapproach is by brute force. He can try every possible combination of validcharacters, generate a hash, and check it against the values in the database.Obviously, this approach requires abundant processing cycles and time. Alternatively,the attacker can also use a pre-constructed dictionary containingpotential passwords (offline dictionary attack). Using dictionaries can greatlyspeedup the cracking process, especially assuming that most users do not usestrong passwords [107].The parallelism of modern GPUs can greatly improve the speed of passwordcracking. The complexity of the hash function used greatly affects the amountof time requi<strong>red</strong> to crack a password hash. Recently, GPUs were able to crack53

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!