Take the 2-minute tour ×
Information Security Stack Exchange is a question and answer site for Information security professionals. It's 100% free, no registration required.

By default most software seems to have rather low "burst" settings, like 3 to 5 login attempts before a temporary autoban for a couple minutes. Especially banks have a very low limit before access is denied.

I find this to be very annoying and if I can I'll always set it to allow 10 or even 20 login attempts. My password are non-dictionary and bruteforcing in under 20 attempts is out of the question. If you have a number of passwords that are possible, for example from looking over my shoulder, you'll figure it out eventually anyway, autobanning or not. Sometimes software automatically attempts a number of logins, making you trigger the autoban already because of that. Lots of ways for legitimate users to trigger the ban.

So I'd set it to a higher value, but then after the 10 or 20 failed login attempts, I configure services to autoban for a rather long period (24 hours instead of a few minutes). Surely that's no legitimate user, or they really did forget their password.

Why don't more websites and software do this by default? By now I have a pretty long (mental) list of passwords that I use. After not using a service for a while it might be any of at least 3 different passwords, each having 2 or 3 variations, and each variation needs to be typed twice to be sure you typed it correctly. Especially those services that allow only 3 attempts are also the ones that enforce ridiculous passwords (8 character uppercase, lowercase, digit, special character, no spaces, no longer than 12 characters... try remembering what permutation you used there to make this work).

Same goes for delaying login attempts, FritzBox routers are really good at this. One failed attempt is 8 seconds delay, the next 16, the next 32... really great, except my fat fingers might end up getting me a delay of 16 seconds while I only had two failed attempts. I'd rather like that it limits me to two attempts per second and jumps to 300 seconds delay after 10 attempts.

Basically my question is: Why does lots of software default to few logins and short bans instead of a higher number of logins and a long ban? The latter seems much more practical to me. Is there any valid security reason behind this, or is it just another of those common practices that are there because they made sense at some point in history?

share|improve this question
add comment

4 Answers

up vote 4 down vote accepted
  1. A lot of people have very short very weak passwords - 40% of all users share the same 100 passwords, 14% share the same 10 passwords (see article). So even a 10 or 20 passwords may suffice for an attacker trawling multiple user accounts. Hence the low cutoff bar.

  2. If the user is legit and has simply mistyped their password several times, they have probably forgotten it. Some organizations like to be directly contacted for password reset, despite the possible support overhead.

  3. While I personally like exponential time-locks; unless an organization has 24/7 tech support, timelocks will turn into normal user lockouts on a weekend. Additionally a distributed attack across multiple users at once may rearrange the exponential delays sufficiently that, on a bell curve, some user account will be cracked well before the exponential delay for a single user would imply.

  4. The organisation may assume that a denial of service is either sufficiently resolvable or unlikely enough that a DDoS lock out of all users is a low concern.

  5. An organization may feel that the user's access to their service is a privilege and the user or service's information is more valuable than the user's ability to access it. Hence a priority toward operational security instead of user convenience. Afterall the actual users are rarely invited as direct stakeholders in the software design workshops.

  6. Initial solutions for Points 1 - 5 were made on early computer systems and then often copied as "good enough" for computer systems made decades later. The original systems involving remote login were military and university projects; where the user was a supplicant not a customer.

share|improve this answer
    
Thanks for restating my answer in list format :-) –  Eric G Sep 8 '13 at 6:47
    
@eric-g :-O yes, reading your answer more carefully, maybe 70% of my answer is redundant. But I'm not sure if answers need to be complete and stand alone despite redundancy. –  LateralFractal Sep 8 '13 at 12:07
    
"Point 6" is probably the most powerful reason. It is the explanation for so many things which are done with computers nowadays. –  Thomas Pornin Sep 9 '13 at 15:52
add comment

I would not generalize your password picking abilities to the general public. Users will often reuse weak passwords and maybe they could be guessed.

There is also the support consideration. Let's say you lock someone out after 5 bad attempts for 20 minutes. Maybe after the attack get's locked out it moved onto another account, that means after 20 minutes the account is now open to the real user. That is a realtively short interval, but within a 24 hour period, the legitimate user would still be blocked. They now have to call support to have their account unlocked and they may also panic. From a user support standpoint, perhaps they would rather reduce manual unlock call volume.

Or more likely, they are just doing what "everyone else" is doing or what they think is common knowledge. It's also possible "some auditor" told them to do it. An exponential backoff may be a good technique to a point, but that sounds like a few more lines of code to manage[sarcastic, but in a large org there may be a real dollar cost associated with even such a small change]; unlikely, but possible storing/processing a time and count during a bot based attack for the exponential backoff could have a negative effect on performance at scale.

share|improve this answer
add comment

One short answer for your question is to mitigate the risk of DoS to actual users by not disabling the account for a long period. By sites differ in their C.I.A. requirements and what works for one may not be applicable for another.

share|improve this answer
add comment

As to your basic question, you have to consider the ramifications of each scheme. The exact timings have more to do with paranoia and tech-support call volume than formal security analysis.

In terms of brute forcing, you have to try LOTS of attempts. Offline brute forcing attempts are able to recover 90%+ of passwords because they are running at hundreds of thousands or millions of passwords per second. Users may share passwords, but even a 5 minute ban effectively throttles the brute force attempts down to 1 password/minute. On top of that, attackers generally don't have access to all of the user names. Throw-in IP blacklists of known spam-bots and it's a really impractical attack. Hackers would have a much easier time just sniffing network traffic and logging keystrokes using a virus.

A five-ten minute ban is shorter than the time required for a customer to contact tech support. If the user can't figure it out after (for example) 3 bans, then the user is likely to contact customer support or reset their password as they have probably forgotten it anyway. So what's the point of banning them for 24/hours using a complex scheme? That's just going to frustrate an already frustrated user.

More complex schemes might make sense for Wordpress and other frameworks which don't have dedicated teams filtering out the spam bots. However, most of these types of frameworks send their passwords over plain text and would be better off just outsourcing user identification to Google/Yahoo/Mozilla anyway.

For banks and other high-value targets, such complex schemes are enforced because the attackers are motivated to perform similarly sophisticated attacks. The frustrating instances occur when the lone-IT-admin for an organization has both paranoia and the lack of giving-a-shit about the end user. To them, they figure that if they capable of memorizing complex passwords or using password management software, why can't the end user?

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.