Live data from Hacker News

Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

github.com

41–50 of 140 posts

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#41
post #19

Earlier quoted context omitted.

Can someone define what is considered a weak vs strong password now for WiFi? The only guides I found online are years old. Is 10 characters considered weak for mixed case letters, numbers, plus punctuation now?

If you consider your random keyspace with 26 * 2 chars + 10 numbers + 20ish special chars then to crack 10 letters you'll have to try an average of ((26 * 2 + 10 + 20) ^ 10) / 2 = 6.8724016e+18 keys. If you then assume around 3 million hashes per second it still takes around 72641 days to crack your password. Edit: As another comment said, just make sure it's not easy to guess based on rainbow tables and whatnot

Did you mean 72641 days or years?

(And could / should we include somehow that "hashes/second" increases by factor of ~2(?) each year?)

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#42

Earlier quoted context omitted.

I've had great luck with this wireless card. Works out of the box on any linux distro I've used it with. I bought it specifically for its aircrack compatibility (packet injection and monitor mode). https://www.amazon.com/Alfa-AWUSO36NH-Wireless-Long-Rang-Net... although some of the reviews seem to indicate there may have been a change in chipset/drivers. I wish you luck!

Not all Alfa products are OOB compatible, you definitely need to be careful. I have the AWUS036AC which requires compiling a DKMS module. It was a pain the get working on my Raspberry Pi, I had to try several different drivers and edit a Makefile to get it to compile. But I did eventually get it working as an AP, there's a script called create_ap which is very nice to painlessly run an AP on Linux.

Thanks I was looking for something that could work on Mac, Linux, Pi and Windows.

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#43
post #34

Earlier quoted context omitted.

For those that don't know, like me, how would PAKE etc protect cracking of weak passwords used during client authentication?

It doesn't give you a hash to crack. It reduces your speed of guessing passwords from "how quick can you hash X", which is millions of times per second, to "how many times can I attempt to get in before the access point blocks me". This major issue with WPA password cracking today is that it can be done "offline". You can pull the handshake out of the air and bang on it as long as you want. It's pretty much the same…

Thanks. I also hope that deauth frames are encrypted in the next version of WPA.

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#44
post #26

I'm not sure why this is amazing enough to make the first page but W/E it's HN :). Just so less informed are aware, this has been feasible for maybe 7 years (since GPU calculation became possible). Just so nobody freaks out, this is cracking weak passwords, not broken WPA. I have myself cracked countless WiFi passwords when security testing. It's easy if the passwords are bad, which is maybe 90% of the time for home…

Nowadays most routers I've seen come with a pre-shared key that's something like 20 chars long. It's been the case with Comcast + Verizon for a while now. Not sure about AT&T. Still might work 10% of the time though.

Some regional bias here.

Most of Asia (so most of the world) use digits only for their wifi password.

Lack of fluency with Latin characters was not a big concern in the original implementation. That should be fixed with WPA3

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#45
post #34

Earlier quoted context omitted.

For those that don't know, like me, how would PAKE etc protect cracking of weak passwords used during client authentication?

It doesn't give you a hash to crack. It reduces your speed of guessing passwords from "how quick can you hash X", which is millions of times per second, to "how many times can I attempt to get in before the access point blocks me". This major issue with WPA password cracking today is that it can be done "offline". You can pull the handshake out of the air and bang on it as long as you want. It's pretty much the same…

I'm not sure how PAKE works, but how would an AP block you? MAC address are forgeable. And any nonce an AP sends down as a one-time salt would be visible to you and you could still just brute force it offline.

EDIT: After reading up on SPAKE2, it's basically just a Diffe-Hellman exchange. You can still totally do a brute force because you know what the first encrypted payload should look like and you can listen in for that encrypted message and use that as your "test that you got it right"

I think that at the end of the day, no matter what key stretching techniques you use. A bad starting key results in a bad end key.

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#46

I attempted to do this once and it turned out to be monumentally difficult. I got as far as setting up a bootable kali thumb drive before getting stopped in my tracks by hardware incompatibilities and unexpected behaviors and errors. These articles make it sounds a LOT easier than it is. I was very disappointed because I was really excited about it.

I beg to differ. I was doing this at 15 or 16 years old in 2006 when it was still called backtrack. So long as you had a mainstream laptop, the most difficult part was buying a compatible wireless card.

To note, the extent of my technical abilities at that time wasn't much beyond being able to install a mainstream linux distribution or write a simple program in C.

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#47
I had the idea a long time ago to make a dd-wrt image which would automatically crack the vulnerable routers within distance, detect the model, and install a compatible version of itself in order to spread virally and create a mesh network. I'm not going to pursue it because it probably breaks a lot of laws, but I'm still curious if it would have been possible. Does anyone know if this is actually feasible? Maybe the radios can't handle that sort of thing?

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#48
post #45

Earlier quoted context omitted.

It doesn't give you a hash to crack. It reduces your speed of guessing passwords from "how quick can you hash X", which is millions of times per second, to "how many times can I attempt to get in before the access point blocks me". This major issue with WPA password cracking today is that it can be done "offline". You can pull the handshake out of the air and bang on it as long as you want. It's pretty much the same…

I'm not sure how PAKE works, but how would an AP block you? MAC address are forgeable. And any nonce an AP sends down as a one-time salt would be visible to you and you could still just brute force it offline. EDIT: After reading up on SPAKE2, it's basically just a Diffe-Hellman exchange. You can still totally do a brute force because you know what the first encrypted payload should look like and you can listen in fo…

Blocking isn't really necessary. How many attempts could an AP process per second? Not enough to try a large dictionary with variations.

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#49
post #34
post #16

Earlier quoted context omitted.

> Just so nobody freaks out, this is cracking weak passwords, not broken WPA. I beg to differ. The fact that WPA is subject to a passive attack at all is a defect. It should use a PAKE, which would entirely avoid this type of attack. There are simple balanced PAKE protocols that would do the trick. DH-EKE, SPAKE2, J-PAKE, and even the venerable SRP would all work. I believe that several are old enough that no patents…

For those that don't know, like me, how would PAKE etc protect cracking of weak passwords used during client authentication?

PAKE is awesome, yet not very well-known :-( In a nutshell a PAKE scheme guarantees that (1) a passive attacker has no way to brute force passwords at all, and (2) that an active attacker can at most test one candidate password per authentication attempt.

PAKE is used by Thread (IOT protocol built on top of IEEE 802.15.4: https://threadgroup.org/ and it's precisely its use of PAKE that makes it one of the most secure wireless protocols IMHO. Disclosure: I helped security-review it during its design.) Various PAKE schemes exist but a simple one based on Diffie-Hellman works like this (called DH-EKE):

1. Client selects random priv, pub key pair: a, g^a

2. Server selects random priv, pub key pair: b, g^b

3. Client sends its pub key encrypted with client's password: E(g^a, passwd)

4. Server sends its pub key encrypted with client's password: E(g^b, passwd)

5. Client and server each decrypts the packets (with the password that they both know) and get each other's pub keys: g^a, g^b

6. Client and server proceed with standard Diffie-Hellman: they compute g^ab use this value as an encryption key

7. Client and server do a message exchange encrypted with g^ab, to verify they both derived the same key.

Note: I demonstrate the scheme DH-EKE because it's simple. But please know this scheme is flawed when naively implemented. In theory it should be safe when used with an elliptic curve variant using Elligator https://elligator.cr.yp.to/ but I haven't seen much research and peer reviews of Elligator... Other PAKE schemes are considered perfectly secure (but their complexity makes them unsuitable to be explained in an HN comment, eg: J-PAKE.)

What can an "offline" attacker do? He can passively sniff the packets and get E(g^a, passwd) and E(g^b, passwd) but there is no way for him to bruteforce the password. He can try to decrypt the packet with candidate passwords, but he does not know when he guesses the right one, because a successful decryption will reveal g^a or g^b however these value are indistinguishable from random data (when using Elligator because that's exactly what it guarantees: that a pub key is indistinguishable from random data.) And even if he guessed right, he would obtain g^a and g^b, but would not be able to decrypt any further communications as the use of Diffie-Hellman makes it imposible to calculate the encryption key g^ab.

What can an "online" attacker do? If he actively MiTM the connection and pretends to be the legitimate server, he can send his own E(g^b, passwd) to the client using one guessed candidate password. If he guessed wrong, then the client will decrypt to an incorrect g^b, will not calculate the right g^ab, and step 7 will fail. Good. At least the client can detect a (failed) password guess attempt. And that's all the attacker can do. Each authentication attempt gives him only 1 chance to test 1 password. If, out of frustration, the client tries to retype the password and re-auth 3 times, then the attacker can at most try to guess 3 candidate passwords. He can't bruteforce many passwords.

An effort is ongoing to standardize one of the PAKE schemes, called J-PAKE, in TLS: https://www.ietf.org/archive/id/draft-cragie-tls-ecjpake-01.... TLS with J-PAKE is what Thread uses.

Re: Crack WPA/WPA2 Wi-Fi Routers with Aircrack-Ng and Hashcat

#50
post #45

Earlier quoted context omitted.

It doesn't give you a hash to crack. It reduces your speed of guessing passwords from "how quick can you hash X", which is millions of times per second, to "how many times can I attempt to get in before the access point blocks me". This major issue with WPA password cracking today is that it can be done "offline". You can pull the handshake out of the air and bang on it as long as you want. It's pretty much the same…

I'm not sure how PAKE works, but how would an AP block you? MAC address are forgeable. And any nonce an AP sends down as a one-time salt would be visible to you and you could still just brute force it offline. EDIT: After reading up on SPAKE2, it's basically just a Diffe-Hellman exchange. You can still totally do a brute force because you know what the first encrypted payload should look like and you can listen in fo…

You can't brute force a nonce offline when you don't know if you answer is right unless you ask the AP. Different protocols than sending hashes where you can tell if your hash is correct just by looking at it.

You are right that the AP couldn't block you without blocking everyone, but since you need to check your answer with the AP for each guess your attack becomes extremely visible. I guess you could still DDOS the AP by sending auth requests faster than it allows but that doesn't hurt the channel any more than barrage jamming which is un-blockable.

Post reply on HN