Analytics

9/25/2017
09:00 AM
Connect Directly
Twitter
LinkedIn
RSS
E-Mail
100%
0%

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."

Related content:

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

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
martin.george
50%
50%
martin.george,
User Rank: Apprentice
9/25/2017 | 10:57:29 AM
Great
Ohhh I like it very much) 
'Hidden Tunnels' Help Hackers Launch Financial Services Attacks
Kelly Sheridan, Staff Editor, Dark Reading,  6/20/2018
Inside a SamSam Ransomware Attack
Ajit Sancheti, CEO and Co-Founder, Preempt,  6/20/2018
Tesla Employee Steals, Sabotages Company Data
Jai Vijayan, Freelance writer,  6/19/2018
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2018-12697
PUBLISHED: 2018-06-23
A NULL pointer dereference (aka SEGV on unknown address 0x000000000000) was discovered in work_stuff_copy_to_from in cplus-dem.c in GNU libiberty, as distributed in GNU Binutils 2.30. This can occur during execution of objdump.
CVE-2018-12698
PUBLISHED: 2018-06-23
demangle_template in cplus-dem.c in GNU libiberty, as distributed in GNU Binutils 2.30, allows attackers to trigger excessive memory consumption (aka OOM) during the "Create an array for saving the template argument values" XNEWVEC call. This can occur during execution of objdump.
CVE-2018-12699
PUBLISHED: 2018-06-23
finish_stab in stabs.c in GNU Binutils 2.30 allows attackers to cause a denial of service (heap-based buffer overflow) or possibly have unspecified other impact, as demonstrated by an out-of-bounds write of 8 bytes. This can occur during execution of objdump.
CVE-2018-12700
PUBLISHED: 2018-06-23
A Stack Exhaustion issue was discovered in debug_write_type in debug.c in GNU Binutils 2.30 because of DEBUG_KIND_INDIRECT infinite recursion.
CVE-2018-11560
PUBLISHED: 2018-06-23
The webService binary on Insteon HD IP Camera White 2864-222 devices has a stack-based Buffer Overflow leading to Control-Flow Hijacking via a crafted usr key, as demonstrated by a long remoteIp parameter to cgi-bin/CGIProxy.fcgi on port 34100.