5 ms·
> That's not true and is horsecrap. You must be fun at parties. You do realise that a password of AAAAAAAAAAAAAAAA would be considered completely secure by yo
by iuguy 16y ago
> That's not true and is horsecrap.
You must be fun at parties.
You do realise that a password of AAAAAAAAAAAAAAAA would be considered completely secure by your system, right?
For your second point your dictionary checking algorithm is only as good as your dictionary. If your dictionary is too small then you're not going to do much. It won't do much good for multilingual users either.
<snip rant about changing passwords every now and again>
So are you proposing that people don't periodically change their passwords?
As for spoofing the IP, it depends on where you are and where the target is. If for example you're both on the same internal network, are NATted and your system's on the Internet then it won't distinguish between the two IP addresses. The same applies if both your and the spoofer are going through a proxy, or the spoofer is between you and them (although it is harder to do than just sitting behind the same NAT gateway it is doable).
- sukuriant 16y agoHow is AAAAAAAAAAAAAAAA not a secure password? Unless you're standing over the person's shoulder, how are you going to know that their 16 letter password is all one letter?
- iuguy 16y agoYou're not going to know anything about their password unless it's leaked in some way (e.g. maximum length on a password change screen, character set etc. or cryptographic leaks). However it's wrong to assume the approach an adversary will take when you know nothing about the adversary in question. If I exhaust a 16 character space with alphanumeric passwords and pull out aaaaa as one, am I going to add mixed alphanumeric to my list and start again or am I going to check variants on AaAaA up to a certain length? Personally I don't know which I'd choose, it'd be dependent on the situation (but I've done both on penetration tests).
- sukuriant 16y agoThat's reasonable; but, they probably aren't going to know the length of the password either, so they might go through a great many other tests before they reach A16. Of course, the person trying to discern a person's password may follow a DFS approach before a BFS approach, and that password would be quickly compromised, but I don't see that happening. Note: In the real world, I wouldn't encourage anyone to have that as a password. This is more of an academic curiosity.
- iuguy 16y agoUpvoted for recognition of the difference between academia and reality, and lack of spherical cow assumptions. It's entirely possible that someone might stop at 14 (for example with NTLM based on an incorrect assumption that as LM stops at 14 characters, so must LM for example). I guess the point is that security's more probabilistic than deterministic, which means that you can take some measures on a given topic up to a point, then beyond that the payoff decreases to the point where you're wearing a tin foil hat and worrying about the RF conductiveness of tin foil versus the alien ray beams it's supposed to be blocking. Still, thanks for the interesting conversation, it's one of those things that for me makes HN really worthwhile participating in.
- jtheory 16y agoAn important tweak to the "real world" aspect of cracking passwords -- the attacker is just as capable as the user of reading the advice you give to users when choosing passwords (and what rules you enforce). If you say "longer is better -- nothing else matters" or "think about using a passphrase -- the added length makes your password much more secure!", and you prevent them from using passwords < 10 characters, that's going to influence the attack.
- deleted 16y ago[deleted]
- Retric 16y agoThe short answer is dictionary's of existing passwords people used on actual systems exist. So "I think there fore I am." is about as bad as "AAAAAAAAAAAAAAAA" they will both probably show up within a the first billion tests of a good dictionary attack. Note: "I think, therefore I am" is the correct spelling but common misspellings don't really protect you from an actual password list. Other useful tests use all phrases in the Bible etc. Another approach is to look for patters asdfasdfasdf is a fairly common password for a reason.
- Splines 16y agoI'm guessing because a good dictionary would include common misspellings and stuff like this (e.g., "asdfasdf", "qwerty", etc.)?
- Groxx 16y agoThey do. Most decent password-dictionaries I'm aware of are based off actual password dumps from hacked sites, so they're loaded with low-mental-entropy stuff like that. They're "dictionary" attacks because they work from a pre-selected set of values, not because they read from Merriam-Webster, cromulent though it may be.
- qjz 16y agoExactly. Enigma was cracked because the Germans applied routine practices that limited the available entropy instead of making the code harder to guess, as they intended. It's important to avoid the classic xkcd "4, guaranteed random number" issue with overused passwords, but that doesn't necessarily mean that all equally simple (as in memorable) passwords are insecure.
- BerislavLopac 16y agoThe obligatory link: http://xkcd.com/221/ http://xkcd.com/221/
- buster 16y agoIt's probably not considered secure because it's all one class of characters. It's a lot faster to bruteforce with "uppercase characters only" vs "uppercase, lowercase, numbers, special characters". Now, if i would be trying to get as much userpasswords of a database as i can, i'd probably start with "lowercase only" and most likely will get the biggest amount of passwords. Afterwards try "lowercase + numbers", "case insensitive + numbers"..
- Peaker 16y agoThe Kolmogorov complexity of 16-letter A's is short. People tend to choose passwords that have less Kolmogorov complexity -- so a smart password attack would search those first.
- Groxx 16y ago>So are you proposing that people don't periodically change their passwords? This always gets me thinking. Why is it "good" to change your password periodically? The only reason I can come up with is that, if someone gets your password, you prevent them from being able to use it if they sit on it for X months until your routine change comes through. To which I say "What?! Why would they wait that long?". It's a ridiculous assumption. There's also that forcing changes (kind of) ensures system A doesn't use system B's password, so you don't lose everything if one account is compromised. But people get around that by having several that they cycle through, on all sites - mostly negating that argument. If they got in once, they can get in again, and (as below) each of those multiple passwords is more likely to be weaker. Meanwhile, on the flip-side, we have that more frequent changes create weaker passwords, as they all have to be remembered, or trivially-guessable changes. Which means every password is easier to guess, or if the attacker sits on it for a few months, they can probably guess the one of a few hundred likely changes you made, and it really makes no difference that you changed it. Or they wrote it down and stuck it up somewhere, which means it's wide open to social hacking if you have any coworkers. So the solution is to use a unique random value for each password, stored in a keychain somehow. At which point: why would changing it help? You would only lose the password if someone got your keychain, or hacked the system the password is used on and retrieved it. Either way, it's gone for good, immediately, and it wouldn't matter if you had changed it last week. And all you lost is that single account, which was lost the moment you lost the password anyway.
- iuguy 16y ago> Why is it "good" to change your password periodically? That depends on what it's being used for. Changing your password on systems you own (and monitor) might not be necessary if they're 'good enough', although if you can ditch passwords entirely that's much better (e.g. using One Time Pads, Public Key auth etc.) From a compliance perspective forcing people to periodically change passwords in theory means that while a certain amount of users will have insecure passwords, that over time this will change or rotate at least. In practice it doesn't generally work that way but COBIT tells us to do it anyway so we tick the box. If you don't own the system then you can't assume that the system hasn't been owned, so periodically changing passwords is seen to be a good thing(tm) as it stops people from having persistent access to your stuff. Again, real world deviates significantly on theory on this, but YMMV. The frequent changes don't necessarily create weaker passwords, they do disrupt password guessing slightly. For example, imagine organisation foo has a password policy requiring monthly changes. The default password is welcome1, so inevitably people change it to welcome2, welcome10 etc. Once I've got the hashes I see that I'm pulling off a lot of welcome1s, and welcome2 works as well. I do have to do some work to get the rest of the welcome<nn> and welcome<nnn> but on the whole it's fine, except for the guy that chooses a password that doesn't fit the common password ('that guy' with welcome1welcome2welcome as his password in this case). So it doesn't have a significantly measurable effect for all people, but may have for some. Yeah, it's still a load of rubbish though :) If the password is sufficiently complex then the keychain solution should work and changing it is unlikely to have any statistical effect unless someone's doing a very slow and long winded sequential brute force (in which case changing a password to earlier in the sequence may help, but that would require a priori knowledge of the sequence and position and is impractical). With the keychain solution the only measurable difference would be that the resulting password would be better, worse or the same in terms of complexity and length tradeoff, but that's down to the algorithm.