PassGAN: Password Cracking Using Machine Learning

Researchers demo how deep neural networks can be trained to generate passwords better than the best password-cracking tools.

Researchers at the Stevens Institute of Technology in New Jersey, and the New York Institute of Technology have devised what they claim is a highly effective way to guess passwords using a deep learning tool called Generative Adversarial Networks (GANs).

Tests of the 'PassGAN' technique, as the researchers are calling it, show the method to be an improvement over state-of-the-art, rules-based password guessing tools such as HashCat and John the Ripper, the researchers said in a recently published technical paper.

In their experiments the researchers were able to match nearly 47% — or some 2,774,269 out of 5,919,936 passwords — from a testing set comprised of real user passwords that were publicly leaked after a 2010 data breach at RockYou. Overall, the evaluations showed PassGAN outperforming John the Ripper by a factor of two, and being at least as competitive with passwords generated using the best rules from HashCat.

When the output from PassGAN was combined with HashCat output the researchers could match about 24% more passwords than generated by HashCat alone. That showed the new approach could generate a lot of new passwords that are beyond the reach of other tools, the researchers said.

"What we have seen from this tool is a very interesting proof of concept," with far reaching implications, says Paolo Gasti, one of the authors of the technical paper and a researcher at the New York Institute of Technology's Computer Science Department.

GANs are basically neural networks for independently creating data similar to, or nearly identical with, data that is fed into them. Researchers have used GANs to generate realistic images of people, animals and bedrooms, for instance, by feeding them massive datasets of real images and then letting the tool figure out the distinguishing characteristics of each dataset to build its own images.

A GAN consists of a so-called "discriminative" deep neural network and a "generative" deep neural network, which keep interacting with each other continuously.

Gasti uses the analogy of an eyewitness and a sketch artist to describe how the two networks work. A sketch artist might start with a basic sketch of a suspect and then keep continuously refining the image using feedback from the eyewitness, till finally the sketch is a close approximation of the suspect's real image.

In the same way, the discriminative network uses data that is fed into it — for example, a dataset containing millions of images of birds — to train the generative network to generate images that get closer to the real samples with each interaction, Gasti explains.

Gasti along with researchers Briland Hitaj, Giuseppe Ateniese, and Fernando Perez-Cruz from the Stevens Institute of Technology, decided to see if they could use a dataset of millions of leaked passwords to similarly get a GAN to generate passwords independently.

The goal with the PassGEN project was to see if a machine-learning tool could come up with its own rules for creating passwords by looking at and learning from the passwords real people use.

To test that, the researchers fed about 80% of the dataset of leaked RockYou passwords into PassGAN. They then verified the output against the remaining portion of the leaked dataset and found matches for 47%. In other words, 47% of the passwords that PassGAN generated would have actually worked against the RockYou accounts to which they once belonged.

The experiment shows PassGAN to be actually better at generating passwords than other password-guessing tools that use human generated rules, Gasti claims. Going forward it will be interesting to see how approaches like PassGAN can improve with larger datasets and better computing power, he adds.

It is quite possible that password-guessing approaches based on machine learning techniques could one day replace password-cracking tools based on human-generated rules. Such a development could pose new challenges for organizations that depend on passwords, and force the use of stronger authentication mechanisms, Gasti says. Such tools could also help law enforcement in investigative efforts — a prospect that Gasti says, has left him a bit conflicted.

"We figured this out, and there's no reason that someone else won't do it," either now or in the next few years Gasti says. "We can design systems knowing that these things exist."

Join Dark Reading LIVE for two days of practical cyber defense discussions. Learn from the industry’s most knowledgeable IT security experts. Check out the INsecurity agenda here.

Jai Vijayan is a seasoned technology reporter with over 20 years of experience in IT trade journalism. He was most recently a Senior Editor at Computerworld, where he covered information security and data privacy issues for the publication. Over the course of his 20-year ... View Full Bio

Most enterprises are using threat intel services, but many are still figuring out how to use the data they're collecting. In this Dark Reading survey we give you a look at what they're doing today - and where they hope to go.

Published: 2017-05-09NScript in mpengine in Microsoft Malware Protection Engine with Engine Version before 1.1.13704.0, as used in Windows Defender and other products, allows remote attackers to execute arbitrary code or cause a denial of service (type confusion and application crash) via crafted JavaScript code within ...

Published: 2017-05-08unixsocket.c in lxterminal through 0.3.0 insecurely uses /tmp for a socket file, allowing a local user to cause a denial of service (preventing terminal launch), or possibly have other impact (bypassing terminal access control).

Published: 2017-05-08Improper checks for unusual or exceptional conditions in Brocade NetIron 05.8.00 and later releases up to and including 06.1.00, when the Management Module is continuously scanned on port 22, may allow attackers to cause a denial of service (crash and reload) of the management module.

Published: 2017-05-08Nextcloud Server before 11.0.3 is vulnerable to an inadequate escaping leading to a XSS vulnerability in the search module. To be exploitable a user has to write or paste malicious content into the search dialogue.