How crackers ransack passwords like “qeadzcwrsfxv1331”

lxskllr

No Lifer
Nov 30, 2004
59,162
9,608
126
In March, readers followed along as Nate Anderson, Ars deputy editor and a self-admitted newbie to password cracking, downloaded a list of more than 16,000 cryptographically hashed passcodes. Within a few hours, he deciphered almost half of them. The moral of the story: if a reporter with zero training in the ancient art of password cracking can achieve such results, imagine what more seasoned attackers can do.
http://arstechnica.com/security/2013/05/how-crackers-make-minced-meat-out-of-your-passwords/
 

bononos

Diamond Member
Aug 21, 2011
3,924
184
106
qeadzcwrsfxv is a pattern on keyboard which now looks like it cracks easily.
 

blankslate

Diamond Member
Jun 16, 2008
8,761
543
126
My question is how will it do against passwords that keypass generates for you when the site allows reasonably long passwords with more than letters and numbers.
 

SecurityTheatre

Senior member
Aug 14, 2011
672
0
0
If it is a truly random string, the only attack is a brute force attack, trying to test all of the keyspace of letters+numbers, etc.

That's difficult.

However, with MD5, there are precomputed hashes to get all of those up to about 10 characters, that can make things very quick if it's an unsalted hash.

Longer than 10 characters with true random distribution, that's even more difficult and would be challenging to do.
 

blankslate

Diamond Member
Jun 16, 2008
8,761
543
126
that's good then I use at least 20 characters and have keypass include upper/lower case letters spaces special characters and brackets whenever possible. It seems like the Keypass file itself is more secure as long as you use a truly good main password since it uses SHA-256 for hashing the passwords it generates.
 

PrincessFrosty

Platinum Member
Feb 13, 2008
2,300
68
91
www.frostyhacks.blogspot.com
As was pointed out the seemingly "random" password in the title is actually a pattern on the keyboard.

The funny thing about security is the human element, when you force people to do something uncomfortable such as pick a long and complex password they often "cheat" and resort to writing down the password, keyboard walking, password doubling, patterns, iterations and alike.

What makes these passwords "guessable" when they're too long to brute force is that bad security practices on the part of service providers lead to database leaks of plain text passwords, these are passwords real people have picked for real services. Hackers can put together massive dictionaries of these passwords and snag a very large percentage of passwords.

Now with GPGPU and cheap cloud services, we can brute force small keyspaces (upto length 8 or 9, using full US95 charset) in usually just a few hours, on good hardware or with rainbow tables.

If you want a decent secure password you'll want to aim for at least 10 characters, randomly generated from a big character set, preferably upper+lower+numeric+special. In certain extreme circumstances where you suspect your attackers might have extended access to super computers make that 12+ characters.
 

Mushkins

Golden Member
Feb 11, 2013
1,631
0
0
If you want a decent secure password you'll want to aim for at least 10 characters, randomly generated from a big character set, preferably upper+lower+numeric+special. In certain extreme circumstances where you suspect your attackers might have extended access to super computers make that 12+ characters.

Don't forget leasing compute time on a massive botnet. Not your average brute force technique for your DIY hacker, but very viable for the serious ones.

The real moral of the story here is that your password is only as secure as how much effort someone is willing to put in to break it, period. It's time for two-factor authentication to be taken more seriously in the mainstream, a World of Warcraft account should not be more secure than my bank account.
 

PrincessFrosty

Platinum Member
Feb 13, 2008
2,300
68
91
www.frostyhacks.blogspot.com
Yep, it's a good point, cloud cracking via something like Amazon Web Services (AWS) is viable for anyone with a credit card, and large botnets can dedicate time to cracking as well.

The main problem with these 2 approaches is that most of the computers involved have no discreet GPU or a weak one, most of the speed from modern day brute force attempts comes from GPGPU, CPUs are pretty slower brute force crackers by comparison even if you have thousands of them.

usually it works out cheaper to build your own cracking rig by buying a bunch of high end AMD GPUs rather than rent time on AWS or a botnet, and then you have that hardware for future use as well.
 

blankslate

Diamond Member
Jun 16, 2008
8,761
543
126
https://www.grc.com/haystack.htm

Every password you use can be thought of as a needle hiding in a haystack. After all searches of common passwords and dictionaries have failed, an attacker must resort to a “brute force” search – ultimately trying every possible combination of letters, numbers and then symbols until the combination you chose, is discovered.

If every possible password is tried, sooner or later yours will be found.
The question is: Will that be too soon . . . or enough later?

the gist of the above list is that a person can think of a good core of a password then have a pattern like +_+ or wXs that you add the front middle end or all three to "pad" the password.


I suggest reading the entire page, the author seems to touch on all the concerns about passwords that I think most people can think of off the top of their heads.

I have a password management passphrase that looks something like this

e(q$;Rt6Kc=12wz

without being that (mine is longer).


One thing I do; is to use information about acquaintances I knew years ago but have no contact with now to "pad" my password..

It's easy to gather information about someone but when you have to gather information about other people they may have known in the past to help guess that someone's password hopefully the task has become even more difficult.

now if someone obtained the file with the masterkey e(q$;Rt6Kc=12wz and took a run at it with an array of GPUs it should take a while to crack (although this one might get added to a list) according to the search space calculator on the link and actual password strength meters.


I think the Gibson Research page on password "haystacking" can help with securing your passwords as much as possible (or at least more so than most other password users) when used with other tools (like a password manager), as long as you take note of the cautionary advice on the page.

Please let me know of any other resources that I can use to make sure my passwords are more secure.
 

Mushkins

Golden Member
Feb 11, 2013
1,631
0
0
https://www.grc.com/haystack.htm



the gist of the above list is that a person can think of a good core of a password then have a pattern like +_+ or wXs that you add the front middle end or all three to "pad" the password.


I suggest reading the entire page, the author seems to touch on all the concerns about passwords that I think most people can think of off the top of their heads.

I have a password management passphrase that looks something like this

e(q$;Rt6Kc=12wz

without being that (mine is longer).


One thing I do; is to use information about acquaintances I knew years ago but have no contact with now to "pad" my password..

It's easy to gather information about someone but when you have to gather information about other people they may have known in the past to help guess that someone's password hopefully the task has become even more difficult.

now if someone obtained the file with the masterkey e(q$;Rt6Kc=12wz and took a run at it with an array of GPUs it should take a while to crack (although this one might get added to a list) according to the search space calculator on the link and actual password strength meters.


I think the Gibson Research page on password "haystacking" can help with securing your passwords as much as possible (or at least more so than most other password users) when used with other tools (like a password manager), as long as you take note of the cautionary advice on the page.

Please let me know of any other resources that I can use to make sure my passwords are more secure.

The point is that if someones got access to the hashed password, it doesnt matter what crazy symbols you put in it. That rainbow table is going to chop it up in somewhere between seconds and hours depending on length.
 

sourceninja

Diamond Member
Mar 8, 2005
8,805
65
91
If someone can brute force your password then the service that password is trying to protect is flawed.


Try more than 4 or 5 passwords, lock that account down for a good long while. If they can do a rainbow attack, again the flaw is on the service for letting those hashes and salt's leak.
 

blankslate

Diamond Member
Jun 16, 2008
8,761
543
126
The point is that if someones got access to the hashed password, it doesnt matter what crazy symbols you put in it. That rainbow table is going to chop it up in somewhere between seconds and hours depending on length.

Are you sure? From what I have read rainbow tables are very effective against MD5 and SHA-1 hash methods for obfuscating the plain text passwords.

http://www.codinghorror.com/blog/2012/04/speed-hashing.html

What about rainbow tables?

Rainbow tables are huge pre-computed lists of hashes, trading off table lookups to massive amounts of disk space (and potentially memory) for raw calculation speed. They are now utterly and completely obsolete. Nobody who knows what they're doing would bother. They'd be wasting their time. I'll let Coda Hale explain:
Rainbow tables, despite their recent popularity as a subject of blog posts, have not aged gracefully. Implementations of password crackers can leverage the massive amount of parallelism available in GPUs, peaking at billions of candidate passwords a second. You can literally test all lowercase, alphabetic passwords which are ≤7 characters in less than 2 seconds. And you can now rent the hardware which makes this possible to the tune of less than $3/hour. For about $300/hour, you could crack around 500,000,000,000 candidate passwords a second.
Given this massive shift in the economics of cryptographic attacks, it simply doesn’t make sense for anyone to waste terabytes of disk space in the hope that their victim didn’t use a salt. It’s a lot easier to just crack the passwords. Even a “good” hashing scheme of SHA256(salt + password) is still completely vulnerable to these cheap and effective attacks.​
However, against newer and more secure hash methods the shift is from away rainbow tables to an array of GPUs to brute force the password... when you do that you are trying every possible password and GPUs let you do that very quickly.

A reply to the article in the OP made this point

The number of people who read this article and completely missed the key points of it is astounding.

The three subjects in the article only used pure brute force attacks where it made sense - i.e. where they could be done quickly. Beyond that they used attacks based on human tendencies and pattern analysis that essentially targeted the attacks where they were likely to produce the best results.

They subjects in the article weren't trying to get my, truly random, 16 character LastPass vault password. They were going for the low hanging fruit, so to speak.

The same thing that makes the majority of passwords weak - human behavior - will also make most pass phrases weak.

The pass phrases typical users create:
- will contain usage patterns that can be detected and exploited.
- won't use the entire name space, The pool of words used will likely be less than 10,000 instead of greater than 100,000. Let's face it, most people know the word 'onomatopoeia' but no one is putting it in a pass phrase. They are going to use basic, working vocabulary words like house, cove, Audi, sunset, etc...
- will be used for login at multiple sites, making dictionary attack possible.
As the Gibson website proposed a way people can pad their password in such a way so as to increase the chance their password won't be a typical weak password.



As long as people don't use a truly good password they can remember on as a login but use it as a password to access a Last Pass vault or other password manager then they can be very sure that they aren't using the same login password for different sites.

Obviously that provides protection for a person if one of their accounts is compromised because every account should at least have different passwords when using a password manager.

Of course the above means even though you can't control what the sites were you have accounts do to store your account info you can choose one or two good passwords that aren't as vulnerable to rainbow tables if you take the time and then you can use a good password manager to generate good passwords that you don't even have to memorize for the site you use.

or as was put in clear way.

1. You can't use ANY rule to create passwords. Your passwords MUST BE RANDOM.

No rules, no "clever" tweaks, nothing. Random. Anything one human can think of, another can. We're pretty dumb that way. Passwords must be random.

2. You must be ready and able to change any or all passwords at any time. Therefore, coming up with new passwords (random, remember) must be something you can do quickly and correctly even (especially!) when feeling stressed or exhausted.

How do you achieve these things?

First, let go. Realise that professional cryptographers know more about this stuff than you do, so if you disagree with their advice, you're wrong. Then, stop trying to do something that computers are better at than you are, and realise you need to work to your strengths as a human. Then, realise that you can use a computer to do this for you.

(I'm fairly reclusive by modern standards, and I have upwards of 50 passwords. I only remember two of them, though. Most of them I've never even seen.)

Lots of commenters have given you a hint: "use a password manager". Bruce Schneier's Password Safe, KeePass2, KeePassX, 1Password, LastPass, others... there are several to choose from. You can wait for Ars's next article on passwords, or you can go ahead now. I chose KeePassX and compatible Android and iOS apps, all using device-local copies of the same password register, helpfully synchronised by DropBox. I'm unlikely to lose all four of my computers at the same time. Even if I do, I can download the list onto replacements.

Get a password manager, and set aside a couple of hours to change your passwords. There's one tiny task to go through first.

Having chosen your password manager, you need to protect access to it. Do what cryptographers do: use a passphrase. That's working to your strengths. Phrases are made of words, and humans are evolved to remember words. Peter Bright pointed out in a comment on the piece about Nathan's password cracking adventures that Randall Munroe's four-word phrase is not strong enough. But Peter didn't allow for a trivial adjustment. With five words instead of four, Peter's argument is blown out of the water. Five words are, for humans, a LOT easier to remember than 12 random keyboard characters.

But why stop at five? Five is only just good enough, and words are what people are good at: they're your strength. Go large: use seven words.

Passphrases with seven RANDOMLY chosen words (from a large-enough list) should be infeasible to decrypt for the foreseeable future, allowing for double the current rate of growth in hardware and software capabilities. Not my opinion, that of the professionals.

Seven words are easy to remember. I can remember two sets of seven words, my wife at least one, possibly three or more. If you want some help: having come up with your set of words, recite it to yourself a few times, and write it down a few times. (Shred or burn the paper afterwards.) You won't forget it -- in fact, the odds are good you'll remember a seven-word phrase the next day, even if you just read it once after generating it.

How do you generate a RANDOM sequence of five words. Here's the cryptic hint dropped by other commenters: diceware.

Diceware?? They mean, "go to diceware.com, and follow the instructions there for generating a passphrase." Diceware's method is as valid now as it was in 1996. (If you're a coder, you can cobble up something that uses a large word list and the computer's cryptographically safe source of randomness -- in python, random.SystemRandom() -- but why not take the chance to get away from the keyboard for a while?)

Those takeaways again: for passwords, clever is stupid. The only thing that works is random. Humans can't do random, but computers can. Use a computer, a secure password manager, to manage your passwords. Use a cryptographer-approved method of generating the one passphrase that you need to remember -- a method that works to your strengths as a human.
I'm pretty sure that none of the password managers in the quote above use a hashing scheme that is vulnerable to rainbow tables by themselves.

http://crackstation.net/hashing-security.htm
What hash algorithm should I use?

DO use:

DO NOT use:
  • Outdated hash functions like MD5 or SHA1.
  • Insecure versions of crypt ($1$, $2$, $2a$, $2x$, $3$).
  • Any algorithm that you designed yourself. Only use technology that is in the public domain and has been well-tested by experienced cryptographers.
Remember the OP article described attacks used against a file using an older hash algorism but didn't seem to mention how effective those same attacks would be with a newer hashing system. Hopefully those attacks against the newer hashing methods would be harder.


Even if you cannot come up with a truly random password then even "padding" the password is better than nothing if the cracker is forced to use a brute force method.

Like it or not crazy characters do force the cracker add in another set of characters to their brute for attack (if and when they are forced to engage in one) and that does increase the time it takes to crack the password.
Perhaps enough time that the cracker gives up on your file and moves on to "low hanging fruit"
 
Last edited:

Nintendesert

Diamond Member
Mar 28, 2010
7,761
5
0
If you want a decent secure password you'll want to aim for at least 10 characters, randomly generated from a big character set, preferably upper+lower+numeric+special. In certain extreme circumstances where you suspect your attackers might have extended access to super computers make that 12+ characters.



Password length is much more important than character set. 10 characters is too short for any reasonably important password.
 

PrincessFrosty

Platinum Member
Feb 13, 2008
2,300
68
91
www.frostyhacks.blogspot.com
Password length is much more important than character set. 10 characters is too short for any reasonably important password.

It's more important numerically, sure. Overall it depends on the password scheme used, but even if it's one of the faster ones to break it will still take supercomputers to break a length 10 using full 95 Character set in any reasonable time frame, do the math on it. That's why I said if you think your attackers might have extended access to super computers you might want to go with length 12 or longer, that's safe for short term.

As for rainbow tables, the article saying they're obsolete couldn't be more wrong.

Salted passwords with random salts defeat rainbow table attacks, although bad salt systems may not, some use salts based on the username so building rainbow tables for the account "administrator" or "admin" is still viable.

Let's put it this way, I have a full set of NTLM rainbow tables up to length 8 which are designed for use with GPU cracking, using a single GTX580 I can check the entire character space of standard US95 character set across lengths 1-8, and I can do that a bit under 3 hours, or probably faster now I have SLI 580's.

Using a 580 alone to hash every one of the 6,704,780,954,517,120 combinations would take a long time, too long to be of any use, I think they hash at approx 320 Million/sec so that would be 20,952,440 seconds or about 242 days!

The tables are about 1.5Tb though, so there's the trade off.