Is displaying remaining password retry count a security risk?
Some websites display a remaining password retry count when I input wrong passwords more than twice. For example, displaying that there are 3 retries remaining until locking out my account. Is this dangerous from security perspective ?
authentication password-policy account-security
|
show 1 more comment
Some websites display a remaining password retry count when I input wrong passwords more than twice. For example, displaying that there are 3 retries remaining until locking out my account. Is this dangerous from security perspective ?
authentication password-policy account-security
29
One consideration is that this can easily reveal whether a username exists on the site. This may be undesirable if user names are emails and the site is something personal like foot-fetish.com You can avoid this by returning a fake number for non-existent accounts
– paj28
yesterday
5
Would it be so implausibly difficult for a hacker to count the number of failed attempts before receiving the locked account message? By this logic you should be asking whether displaying the "Account locked" message is a security risk.
– MonkeyZeus
yesterday
2
@MonkeyZeus But with a number displayed the hacker knows when to stop before the account gets blocked and the failed attempt gets noticed. They then can wait some time until the owner logged in and resets the counter.
– BlackJack
yesterday
@BlackJack Not necessarily. If the user made 2 attempts right before the hacker made their first attempt then I would really hope that they don't think that a single failure results in a locked account. At any rate no threat model was mentioned by OP so open-ended conjecture like this really does nothing...
– MonkeyZeus
yesterday
1
Why has nobody considered that the retry count could be based on ip or device recognition?
– Nightwolf
13 hours ago
|
show 1 more comment
Some websites display a remaining password retry count when I input wrong passwords more than twice. For example, displaying that there are 3 retries remaining until locking out my account. Is this dangerous from security perspective ?
authentication password-policy account-security
Some websites display a remaining password retry count when I input wrong passwords more than twice. For example, displaying that there are 3 retries remaining until locking out my account. Is this dangerous from security perspective ?
authentication password-policy account-security
authentication password-policy account-security
edited yesterday
Snappie
297126
297126
asked yesterday
Ahmet ArslanAhmet Arslan
31225
31225
29
One consideration is that this can easily reveal whether a username exists on the site. This may be undesirable if user names are emails and the site is something personal like foot-fetish.com You can avoid this by returning a fake number for non-existent accounts
– paj28
yesterday
5
Would it be so implausibly difficult for a hacker to count the number of failed attempts before receiving the locked account message? By this logic you should be asking whether displaying the "Account locked" message is a security risk.
– MonkeyZeus
yesterday
2
@MonkeyZeus But with a number displayed the hacker knows when to stop before the account gets blocked and the failed attempt gets noticed. They then can wait some time until the owner logged in and resets the counter.
– BlackJack
yesterday
@BlackJack Not necessarily. If the user made 2 attempts right before the hacker made their first attempt then I would really hope that they don't think that a single failure results in a locked account. At any rate no threat model was mentioned by OP so open-ended conjecture like this really does nothing...
– MonkeyZeus
yesterday
1
Why has nobody considered that the retry count could be based on ip or device recognition?
– Nightwolf
13 hours ago
|
show 1 more comment
29
One consideration is that this can easily reveal whether a username exists on the site. This may be undesirable if user names are emails and the site is something personal like foot-fetish.com You can avoid this by returning a fake number for non-existent accounts
– paj28
yesterday
5
Would it be so implausibly difficult for a hacker to count the number of failed attempts before receiving the locked account message? By this logic you should be asking whether displaying the "Account locked" message is a security risk.
– MonkeyZeus
yesterday
2
@MonkeyZeus But with a number displayed the hacker knows when to stop before the account gets blocked and the failed attempt gets noticed. They then can wait some time until the owner logged in and resets the counter.
– BlackJack
yesterday
@BlackJack Not necessarily. If the user made 2 attempts right before the hacker made their first attempt then I would really hope that they don't think that a single failure results in a locked account. At any rate no threat model was mentioned by OP so open-ended conjecture like this really does nothing...
– MonkeyZeus
yesterday
1
Why has nobody considered that the retry count could be based on ip or device recognition?
– Nightwolf
13 hours ago
29
29
One consideration is that this can easily reveal whether a username exists on the site. This may be undesirable if user names are emails and the site is something personal like foot-fetish.com You can avoid this by returning a fake number for non-existent accounts
– paj28
yesterday
One consideration is that this can easily reveal whether a username exists on the site. This may be undesirable if user names are emails and the site is something personal like foot-fetish.com You can avoid this by returning a fake number for non-existent accounts
– paj28
yesterday
5
5
Would it be so implausibly difficult for a hacker to count the number of failed attempts before receiving the locked account message? By this logic you should be asking whether displaying the "Account locked" message is a security risk.
– MonkeyZeus
yesterday
Would it be so implausibly difficult for a hacker to count the number of failed attempts before receiving the locked account message? By this logic you should be asking whether displaying the "Account locked" message is a security risk.
– MonkeyZeus
yesterday
2
2
@MonkeyZeus But with a number displayed the hacker knows when to stop before the account gets blocked and the failed attempt gets noticed. They then can wait some time until the owner logged in and resets the counter.
– BlackJack
yesterday
@MonkeyZeus But with a number displayed the hacker knows when to stop before the account gets blocked and the failed attempt gets noticed. They then can wait some time until the owner logged in and resets the counter.
– BlackJack
yesterday
@BlackJack Not necessarily. If the user made 2 attempts right before the hacker made their first attempt then I would really hope that they don't think that a single failure results in a locked account. At any rate no threat model was mentioned by OP so open-ended conjecture like this really does nothing...
– MonkeyZeus
yesterday
@BlackJack Not necessarily. If the user made 2 attempts right before the hacker made their first attempt then I would really hope that they don't think that a single failure results in a locked account. At any rate no threat model was mentioned by OP so open-ended conjecture like this really does nothing...
– MonkeyZeus
yesterday
1
1
Why has nobody considered that the retry count could be based on ip or device recognition?
– Nightwolf
13 hours ago
Why has nobody considered that the retry count could be based on ip or device recognition?
– Nightwolf
13 hours ago
|
show 1 more comment
7 Answers
7
active
oldest
votes
Locking accounts is a bad idea in the first place. It might seem like you're making your organization more secure by keeping out "bad people" who are "guessing" at passwords using brute force attacks, but what have you really solved? Even with this policy and a perfect userbase who never makes security mistakes, an attacker can perform a denial-of-service attack on your organization by repeatedly using the password "aaa" to lock out the accounts of critical users. Consider what happens if your attacker gets a copy of the list of usernames for your entire IT department: Suddenly, IT itself — the organization that would otherwise be able to unlock other users — is itself completely shut down.
Always consider what the threat model is before implementing a policy. A "bad guy" determined to hurt your organization will find alternative attack vectors. Your lockout policy won't even faze a nation-state actor (like Russia or China or the NSA); a determined hacker will just find other ways around it (like social engineering); and it will only hurt legitimate users of your service, no matter how low or high you set the lockout counter.
Moral of the story: Don't lock out accounts. Instead, do what Apple does with the iPhone: Each login try doubles the login delay, so that after a dozen failures or so, you have to wait one hour between each successive attempt. That's long enough to prevent "bad guys" from performing brute-force attacks, but still short enough that a legitimate user can spend that hour figuring out what their password was and typing it in properly after lunch — or contacting IT and apologetically asking for help. (Similarly, "flooding" policies can often be implemented at the IP-address level in your firewall, not just at the user-account level in your software, if you're concerned about a dedicated attacker trying to brute-force many different accounts.)
And if you don't lock out accounts, you don't need to have a counter — or display it.
[see also: this excellent answer on a similar question]
New contributor
23
Solid advice. Although I still call this locking accounts, it's just with a short timeout
– paj28
yesterday
3
I agree with this for lock-and-forget implementations, but short-duration locks (automatically unlock again after a few minutes) can be useful for rate-limiting brute force attacks.
– Joel Coehoorn
yesterday
6
But should you have a display that informs the user of how long the login delay will be for the next attempt?
– Yozarian22
23 hours ago
1
I would have a captcha show up for a user who has many failed login attempts. Should stop most abuse.
– Qwertie
20 hours ago
3
That 'aaa' DoS attack is interestingly specific. You don't happen to have an actual history of an attack like that, do you? Perhaps a reference pointer for me to look up? I would love to read about it.
– Michael Eric Oberlin
17 hours ago
|
show 10 more comments
It depends on your lockout mechanism. If invalid logins get reset after some time AND a locked account does not get unlocked, showing a counter can help an attacker not to lock out an account. But a skilled attacker will have determined the lockout policy up front and will take this into account when guessing the password. So the impact is limited.
Also, relying on this to protect your login mechanism is missing the point. You should have a decent password policy and a lockout policy to match. If the password policy is strong, an attacker will have to guess a large number of times before getting it right. If you lock an account after 20 attempts, you have little chance of getting compromised.
You must ask yourself: what is the benefit of showing this information to a genuine user? Often, this problems with lockout occurs because the number of tries is set too low. 3 or 5 are common choices. NIST (Currently unavailable due to government shutdown so no direct reference yet) suggests less than 100 attempts.
NIST has a point: think of a password which no attacker will guess in 3 attempts, but which they will guess in 100 attempts. All attackers use different dictionaries and approaches. If a password is unsafe to withstand 100 guesses it can also be breached using fewer attempts - although that is less likely. Therefore a good password policy is a must.
I will add the NIST references when the site comes back up. Troy hunt has some good blog posts which summarize password and login mechanisms. He is a fan of the NIST guidelines as well.
3
You're looking for NIST Special Publication 800-63 which can normally be seen here (hotlinked to the relevant section): pages.nist.gov/800-63-3/sp800-63b.html#throttle Of course, because they took the special effort to put that server into maintenance mode instead of just walking away (grumble) then you'll have to use the Wayback Machine to see it right now: web.archive.org/web/20181223021935/https://pages.nist.gov/…
– Ruscal
yesterday
1
What I like is to remember at least the last failed password (Hashes). And if the same one is used do not increase the fail counter. This greatly helps with misremembered or scripted clients to not regularly lock out the offender.
– eckes
21 hours ago
If an attacker only has to guess 1000s of times to get your password than it is not a strong password.
– Qwertie
20 hours ago
@Qwertie, I will change it to a more vague description ;)
– Silver
11 hours ago
add a comment |
Only two scenario is possible with it but rather showing account lockout time policy risk is more over lockout time.
E.g.
once can configure the hydra or some other tool to brute force the login and wait after 3 attempts. if you don't have sufficient locking time it can cause an account compromise.
if you have 30 mins or so locking time then its though we can configure the tool for brute force and wait after three attempts it will take years to crack the password.
to conclude this their no risk involve in displaying account lockout attempt.
add a comment |
I lean in general towards the less information you give to an attacker the better. As @security-beast mentioned a tool can be configured to wait the appropriate amount of time. Giving them the information for that configuration is not necessarily ideal.
However, you have to balance this with the needs of your users. Do you find that the system admins spend an inordinate amount of time unlocking accounts because your users keep locking them? If that's the case then your analysis may indicate that you get more benefit from displaying the number of retries to your users so they know when they need to wait before locking their accounts. In other cases the opposite will be true, but either way the answer should be the result of an objective analysis of the trade-offs for the particular system.
Hope this helps.
I hadn't seen Silver's comment when I posted, but I would second the NIST guidelines as a good base to start with.
– jfran3
yesterday
add a comment |
To give another perspective on this: it doesn't matter for a skilled attacker.
How are online accounts compromised today typically1? There are two variations of one technique that are commonly used.
Databases with password hashes (or passwords in plaintext) get stolen and are cracked offline by attackers. After successfully cracking a hash the correct password is served to the login mechanism on the first try, so this control is ineffective.
This can either be the database of the service in question or the database of another service. Unfortunately people tend to reuse their passwords with several services so chances are high, that once a password is matched to an e-mail adress, it can be used on another site. An attacker might have two or three passwords to choose from, but probably not 20. Again, this control is ineffective.
So what level of security does this control establish? The level that is necessary to protect from inexperienced script kiddies, malicious ex-partners and nosy parents that want to take a look at your personal account and try five passwords at random. No more, but no less.
1 Then there are of course other techniques that are more "advanced" like keylogging, (spear)-phishing, MitM etc. which are as well not mitigated by this control.
add a comment |
Based on the information provided we can't really answer this question. The frontend can display whatever developers want you to see and it has nothing to do with the security. How would you for a fact know that your account is locked on the backend? What does lock mean in this scope? There is an infinite number of possible configurations on the backend. If you design a system with this feature as an absolute must, then I'm sure there is a safe way of implementing it.
add a comment |
Security Risk is subjective it will depend on what you are trying to protect the objective of the security control and any other security control in place that mitigate or compensate the risk.
Based on this different companies / business will have different acceptance to same risk.
If in a generic way providing how many attempts your still have might not impose a risk (e.g.: PIN in your smart card to make phone calls)
In other situations it might be a risk (e.g.: trying to brute force mobile phone access) where you can stop before the last attempt and wait some time so the user resets the counter with a valid access...
You should check on the objective of the security control, what you are trying to protect and what security controls you have in place that will compensate or at least monitor abnormal situations.
Based on all this then you can decide if it is an acceptable risk or not for your specifics.
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "162"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsecurity.stackexchange.com%2fquestions%2f201566%2fis-displaying-remaining-password-retry-count-a-security-risk%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
7 Answers
7
active
oldest
votes
7 Answers
7
active
oldest
votes
active
oldest
votes
active
oldest
votes
Locking accounts is a bad idea in the first place. It might seem like you're making your organization more secure by keeping out "bad people" who are "guessing" at passwords using brute force attacks, but what have you really solved? Even with this policy and a perfect userbase who never makes security mistakes, an attacker can perform a denial-of-service attack on your organization by repeatedly using the password "aaa" to lock out the accounts of critical users. Consider what happens if your attacker gets a copy of the list of usernames for your entire IT department: Suddenly, IT itself — the organization that would otherwise be able to unlock other users — is itself completely shut down.
Always consider what the threat model is before implementing a policy. A "bad guy" determined to hurt your organization will find alternative attack vectors. Your lockout policy won't even faze a nation-state actor (like Russia or China or the NSA); a determined hacker will just find other ways around it (like social engineering); and it will only hurt legitimate users of your service, no matter how low or high you set the lockout counter.
Moral of the story: Don't lock out accounts. Instead, do what Apple does with the iPhone: Each login try doubles the login delay, so that after a dozen failures or so, you have to wait one hour between each successive attempt. That's long enough to prevent "bad guys" from performing brute-force attacks, but still short enough that a legitimate user can spend that hour figuring out what their password was and typing it in properly after lunch — or contacting IT and apologetically asking for help. (Similarly, "flooding" policies can often be implemented at the IP-address level in your firewall, not just at the user-account level in your software, if you're concerned about a dedicated attacker trying to brute-force many different accounts.)
And if you don't lock out accounts, you don't need to have a counter — or display it.
[see also: this excellent answer on a similar question]
New contributor
23
Solid advice. Although I still call this locking accounts, it's just with a short timeout
– paj28
yesterday
3
I agree with this for lock-and-forget implementations, but short-duration locks (automatically unlock again after a few minutes) can be useful for rate-limiting brute force attacks.
– Joel Coehoorn
yesterday
6
But should you have a display that informs the user of how long the login delay will be for the next attempt?
– Yozarian22
23 hours ago
1
I would have a captcha show up for a user who has many failed login attempts. Should stop most abuse.
– Qwertie
20 hours ago
3
That 'aaa' DoS attack is interestingly specific. You don't happen to have an actual history of an attack like that, do you? Perhaps a reference pointer for me to look up? I would love to read about it.
– Michael Eric Oberlin
17 hours ago
|
show 10 more comments
Locking accounts is a bad idea in the first place. It might seem like you're making your organization more secure by keeping out "bad people" who are "guessing" at passwords using brute force attacks, but what have you really solved? Even with this policy and a perfect userbase who never makes security mistakes, an attacker can perform a denial-of-service attack on your organization by repeatedly using the password "aaa" to lock out the accounts of critical users. Consider what happens if your attacker gets a copy of the list of usernames for your entire IT department: Suddenly, IT itself — the organization that would otherwise be able to unlock other users — is itself completely shut down.
Always consider what the threat model is before implementing a policy. A "bad guy" determined to hurt your organization will find alternative attack vectors. Your lockout policy won't even faze a nation-state actor (like Russia or China or the NSA); a determined hacker will just find other ways around it (like social engineering); and it will only hurt legitimate users of your service, no matter how low or high you set the lockout counter.
Moral of the story: Don't lock out accounts. Instead, do what Apple does with the iPhone: Each login try doubles the login delay, so that after a dozen failures or so, you have to wait one hour between each successive attempt. That's long enough to prevent "bad guys" from performing brute-force attacks, but still short enough that a legitimate user can spend that hour figuring out what their password was and typing it in properly after lunch — or contacting IT and apologetically asking for help. (Similarly, "flooding" policies can often be implemented at the IP-address level in your firewall, not just at the user-account level in your software, if you're concerned about a dedicated attacker trying to brute-force many different accounts.)
And if you don't lock out accounts, you don't need to have a counter — or display it.
[see also: this excellent answer on a similar question]
New contributor
23
Solid advice. Although I still call this locking accounts, it's just with a short timeout
– paj28
yesterday
3
I agree with this for lock-and-forget implementations, but short-duration locks (automatically unlock again after a few minutes) can be useful for rate-limiting brute force attacks.
– Joel Coehoorn
yesterday
6
But should you have a display that informs the user of how long the login delay will be for the next attempt?
– Yozarian22
23 hours ago
1
I would have a captcha show up for a user who has many failed login attempts. Should stop most abuse.
– Qwertie
20 hours ago
3
That 'aaa' DoS attack is interestingly specific. You don't happen to have an actual history of an attack like that, do you? Perhaps a reference pointer for me to look up? I would love to read about it.
– Michael Eric Oberlin
17 hours ago
|
show 10 more comments
Locking accounts is a bad idea in the first place. It might seem like you're making your organization more secure by keeping out "bad people" who are "guessing" at passwords using brute force attacks, but what have you really solved? Even with this policy and a perfect userbase who never makes security mistakes, an attacker can perform a denial-of-service attack on your organization by repeatedly using the password "aaa" to lock out the accounts of critical users. Consider what happens if your attacker gets a copy of the list of usernames for your entire IT department: Suddenly, IT itself — the organization that would otherwise be able to unlock other users — is itself completely shut down.
Always consider what the threat model is before implementing a policy. A "bad guy" determined to hurt your organization will find alternative attack vectors. Your lockout policy won't even faze a nation-state actor (like Russia or China or the NSA); a determined hacker will just find other ways around it (like social engineering); and it will only hurt legitimate users of your service, no matter how low or high you set the lockout counter.
Moral of the story: Don't lock out accounts. Instead, do what Apple does with the iPhone: Each login try doubles the login delay, so that after a dozen failures or so, you have to wait one hour between each successive attempt. That's long enough to prevent "bad guys" from performing brute-force attacks, but still short enough that a legitimate user can spend that hour figuring out what their password was and typing it in properly after lunch — or contacting IT and apologetically asking for help. (Similarly, "flooding" policies can often be implemented at the IP-address level in your firewall, not just at the user-account level in your software, if you're concerned about a dedicated attacker trying to brute-force many different accounts.)
And if you don't lock out accounts, you don't need to have a counter — or display it.
[see also: this excellent answer on a similar question]
New contributor
Locking accounts is a bad idea in the first place. It might seem like you're making your organization more secure by keeping out "bad people" who are "guessing" at passwords using brute force attacks, but what have you really solved? Even with this policy and a perfect userbase who never makes security mistakes, an attacker can perform a denial-of-service attack on your organization by repeatedly using the password "aaa" to lock out the accounts of critical users. Consider what happens if your attacker gets a copy of the list of usernames for your entire IT department: Suddenly, IT itself — the organization that would otherwise be able to unlock other users — is itself completely shut down.
Always consider what the threat model is before implementing a policy. A "bad guy" determined to hurt your organization will find alternative attack vectors. Your lockout policy won't even faze a nation-state actor (like Russia or China or the NSA); a determined hacker will just find other ways around it (like social engineering); and it will only hurt legitimate users of your service, no matter how low or high you set the lockout counter.
Moral of the story: Don't lock out accounts. Instead, do what Apple does with the iPhone: Each login try doubles the login delay, so that after a dozen failures or so, you have to wait one hour between each successive attempt. That's long enough to prevent "bad guys" from performing brute-force attacks, but still short enough that a legitimate user can spend that hour figuring out what their password was and typing it in properly after lunch — or contacting IT and apologetically asking for help. (Similarly, "flooding" policies can often be implemented at the IP-address level in your firewall, not just at the user-account level in your software, if you're concerned about a dedicated attacker trying to brute-force many different accounts.)
And if you don't lock out accounts, you don't need to have a counter — or display it.
[see also: this excellent answer on a similar question]
New contributor
New contributor
answered yesterday
Sean WerkemaSean Werkema
1,716139
1,716139
New contributor
New contributor
23
Solid advice. Although I still call this locking accounts, it's just with a short timeout
– paj28
yesterday
3
I agree with this for lock-and-forget implementations, but short-duration locks (automatically unlock again after a few minutes) can be useful for rate-limiting brute force attacks.
– Joel Coehoorn
yesterday
6
But should you have a display that informs the user of how long the login delay will be for the next attempt?
– Yozarian22
23 hours ago
1
I would have a captcha show up for a user who has many failed login attempts. Should stop most abuse.
– Qwertie
20 hours ago
3
That 'aaa' DoS attack is interestingly specific. You don't happen to have an actual history of an attack like that, do you? Perhaps a reference pointer for me to look up? I would love to read about it.
– Michael Eric Oberlin
17 hours ago
|
show 10 more comments
23
Solid advice. Although I still call this locking accounts, it's just with a short timeout
– paj28
yesterday
3
I agree with this for lock-and-forget implementations, but short-duration locks (automatically unlock again after a few minutes) can be useful for rate-limiting brute force attacks.
– Joel Coehoorn
yesterday
6
But should you have a display that informs the user of how long the login delay will be for the next attempt?
– Yozarian22
23 hours ago
1
I would have a captcha show up for a user who has many failed login attempts. Should stop most abuse.
– Qwertie
20 hours ago
3
That 'aaa' DoS attack is interestingly specific. You don't happen to have an actual history of an attack like that, do you? Perhaps a reference pointer for me to look up? I would love to read about it.
– Michael Eric Oberlin
17 hours ago
23
23
Solid advice. Although I still call this locking accounts, it's just with a short timeout
– paj28
yesterday
Solid advice. Although I still call this locking accounts, it's just with a short timeout
– paj28
yesterday
3
3
I agree with this for lock-and-forget implementations, but short-duration locks (automatically unlock again after a few minutes) can be useful for rate-limiting brute force attacks.
– Joel Coehoorn
yesterday
I agree with this for lock-and-forget implementations, but short-duration locks (automatically unlock again after a few minutes) can be useful for rate-limiting brute force attacks.
– Joel Coehoorn
yesterday
6
6
But should you have a display that informs the user of how long the login delay will be for the next attempt?
– Yozarian22
23 hours ago
But should you have a display that informs the user of how long the login delay will be for the next attempt?
– Yozarian22
23 hours ago
1
1
I would have a captcha show up for a user who has many failed login attempts. Should stop most abuse.
– Qwertie
20 hours ago
I would have a captcha show up for a user who has many failed login attempts. Should stop most abuse.
– Qwertie
20 hours ago
3
3
That 'aaa' DoS attack is interestingly specific. You don't happen to have an actual history of an attack like that, do you? Perhaps a reference pointer for me to look up? I would love to read about it.
– Michael Eric Oberlin
17 hours ago
That 'aaa' DoS attack is interestingly specific. You don't happen to have an actual history of an attack like that, do you? Perhaps a reference pointer for me to look up? I would love to read about it.
– Michael Eric Oberlin
17 hours ago
|
show 10 more comments
It depends on your lockout mechanism. If invalid logins get reset after some time AND a locked account does not get unlocked, showing a counter can help an attacker not to lock out an account. But a skilled attacker will have determined the lockout policy up front and will take this into account when guessing the password. So the impact is limited.
Also, relying on this to protect your login mechanism is missing the point. You should have a decent password policy and a lockout policy to match. If the password policy is strong, an attacker will have to guess a large number of times before getting it right. If you lock an account after 20 attempts, you have little chance of getting compromised.
You must ask yourself: what is the benefit of showing this information to a genuine user? Often, this problems with lockout occurs because the number of tries is set too low. 3 or 5 are common choices. NIST (Currently unavailable due to government shutdown so no direct reference yet) suggests less than 100 attempts.
NIST has a point: think of a password which no attacker will guess in 3 attempts, but which they will guess in 100 attempts. All attackers use different dictionaries and approaches. If a password is unsafe to withstand 100 guesses it can also be breached using fewer attempts - although that is less likely. Therefore a good password policy is a must.
I will add the NIST references when the site comes back up. Troy hunt has some good blog posts which summarize password and login mechanisms. He is a fan of the NIST guidelines as well.
3
You're looking for NIST Special Publication 800-63 which can normally be seen here (hotlinked to the relevant section): pages.nist.gov/800-63-3/sp800-63b.html#throttle Of course, because they took the special effort to put that server into maintenance mode instead of just walking away (grumble) then you'll have to use the Wayback Machine to see it right now: web.archive.org/web/20181223021935/https://pages.nist.gov/…
– Ruscal
yesterday
1
What I like is to remember at least the last failed password (Hashes). And if the same one is used do not increase the fail counter. This greatly helps with misremembered or scripted clients to not regularly lock out the offender.
– eckes
21 hours ago
If an attacker only has to guess 1000s of times to get your password than it is not a strong password.
– Qwertie
20 hours ago
@Qwertie, I will change it to a more vague description ;)
– Silver
11 hours ago
add a comment |
It depends on your lockout mechanism. If invalid logins get reset after some time AND a locked account does not get unlocked, showing a counter can help an attacker not to lock out an account. But a skilled attacker will have determined the lockout policy up front and will take this into account when guessing the password. So the impact is limited.
Also, relying on this to protect your login mechanism is missing the point. You should have a decent password policy and a lockout policy to match. If the password policy is strong, an attacker will have to guess a large number of times before getting it right. If you lock an account after 20 attempts, you have little chance of getting compromised.
You must ask yourself: what is the benefit of showing this information to a genuine user? Often, this problems with lockout occurs because the number of tries is set too low. 3 or 5 are common choices. NIST (Currently unavailable due to government shutdown so no direct reference yet) suggests less than 100 attempts.
NIST has a point: think of a password which no attacker will guess in 3 attempts, but which they will guess in 100 attempts. All attackers use different dictionaries and approaches. If a password is unsafe to withstand 100 guesses it can also be breached using fewer attempts - although that is less likely. Therefore a good password policy is a must.
I will add the NIST references when the site comes back up. Troy hunt has some good blog posts which summarize password and login mechanisms. He is a fan of the NIST guidelines as well.
3
You're looking for NIST Special Publication 800-63 which can normally be seen here (hotlinked to the relevant section): pages.nist.gov/800-63-3/sp800-63b.html#throttle Of course, because they took the special effort to put that server into maintenance mode instead of just walking away (grumble) then you'll have to use the Wayback Machine to see it right now: web.archive.org/web/20181223021935/https://pages.nist.gov/…
– Ruscal
yesterday
1
What I like is to remember at least the last failed password (Hashes). And if the same one is used do not increase the fail counter. This greatly helps with misremembered or scripted clients to not regularly lock out the offender.
– eckes
21 hours ago
If an attacker only has to guess 1000s of times to get your password than it is not a strong password.
– Qwertie
20 hours ago
@Qwertie, I will change it to a more vague description ;)
– Silver
11 hours ago
add a comment |
It depends on your lockout mechanism. If invalid logins get reset after some time AND a locked account does not get unlocked, showing a counter can help an attacker not to lock out an account. But a skilled attacker will have determined the lockout policy up front and will take this into account when guessing the password. So the impact is limited.
Also, relying on this to protect your login mechanism is missing the point. You should have a decent password policy and a lockout policy to match. If the password policy is strong, an attacker will have to guess a large number of times before getting it right. If you lock an account after 20 attempts, you have little chance of getting compromised.
You must ask yourself: what is the benefit of showing this information to a genuine user? Often, this problems with lockout occurs because the number of tries is set too low. 3 or 5 are common choices. NIST (Currently unavailable due to government shutdown so no direct reference yet) suggests less than 100 attempts.
NIST has a point: think of a password which no attacker will guess in 3 attempts, but which they will guess in 100 attempts. All attackers use different dictionaries and approaches. If a password is unsafe to withstand 100 guesses it can also be breached using fewer attempts - although that is less likely. Therefore a good password policy is a must.
I will add the NIST references when the site comes back up. Troy hunt has some good blog posts which summarize password and login mechanisms. He is a fan of the NIST guidelines as well.
It depends on your lockout mechanism. If invalid logins get reset after some time AND a locked account does not get unlocked, showing a counter can help an attacker not to lock out an account. But a skilled attacker will have determined the lockout policy up front and will take this into account when guessing the password. So the impact is limited.
Also, relying on this to protect your login mechanism is missing the point. You should have a decent password policy and a lockout policy to match. If the password policy is strong, an attacker will have to guess a large number of times before getting it right. If you lock an account after 20 attempts, you have little chance of getting compromised.
You must ask yourself: what is the benefit of showing this information to a genuine user? Often, this problems with lockout occurs because the number of tries is set too low. 3 or 5 are common choices. NIST (Currently unavailable due to government shutdown so no direct reference yet) suggests less than 100 attempts.
NIST has a point: think of a password which no attacker will guess in 3 attempts, but which they will guess in 100 attempts. All attackers use different dictionaries and approaches. If a password is unsafe to withstand 100 guesses it can also be breached using fewer attempts - although that is less likely. Therefore a good password policy is a must.
I will add the NIST references when the site comes back up. Troy hunt has some good blog posts which summarize password and login mechanisms. He is a fan of the NIST guidelines as well.
edited 11 hours ago
answered yesterday
SilverSilver
1,546620
1,546620
3
You're looking for NIST Special Publication 800-63 which can normally be seen here (hotlinked to the relevant section): pages.nist.gov/800-63-3/sp800-63b.html#throttle Of course, because they took the special effort to put that server into maintenance mode instead of just walking away (grumble) then you'll have to use the Wayback Machine to see it right now: web.archive.org/web/20181223021935/https://pages.nist.gov/…
– Ruscal
yesterday
1
What I like is to remember at least the last failed password (Hashes). And if the same one is used do not increase the fail counter. This greatly helps with misremembered or scripted clients to not regularly lock out the offender.
– eckes
21 hours ago
If an attacker only has to guess 1000s of times to get your password than it is not a strong password.
– Qwertie
20 hours ago
@Qwertie, I will change it to a more vague description ;)
– Silver
11 hours ago
add a comment |
3
You're looking for NIST Special Publication 800-63 which can normally be seen here (hotlinked to the relevant section): pages.nist.gov/800-63-3/sp800-63b.html#throttle Of course, because they took the special effort to put that server into maintenance mode instead of just walking away (grumble) then you'll have to use the Wayback Machine to see it right now: web.archive.org/web/20181223021935/https://pages.nist.gov/…
– Ruscal
yesterday
1
What I like is to remember at least the last failed password (Hashes). And if the same one is used do not increase the fail counter. This greatly helps with misremembered or scripted clients to not regularly lock out the offender.
– eckes
21 hours ago
If an attacker only has to guess 1000s of times to get your password than it is not a strong password.
– Qwertie
20 hours ago
@Qwertie, I will change it to a more vague description ;)
– Silver
11 hours ago
3
3
You're looking for NIST Special Publication 800-63 which can normally be seen here (hotlinked to the relevant section): pages.nist.gov/800-63-3/sp800-63b.html#throttle Of course, because they took the special effort to put that server into maintenance mode instead of just walking away (grumble) then you'll have to use the Wayback Machine to see it right now: web.archive.org/web/20181223021935/https://pages.nist.gov/…
– Ruscal
yesterday
You're looking for NIST Special Publication 800-63 which can normally be seen here (hotlinked to the relevant section): pages.nist.gov/800-63-3/sp800-63b.html#throttle Of course, because they took the special effort to put that server into maintenance mode instead of just walking away (grumble) then you'll have to use the Wayback Machine to see it right now: web.archive.org/web/20181223021935/https://pages.nist.gov/…
– Ruscal
yesterday
1
1
What I like is to remember at least the last failed password (Hashes). And if the same one is used do not increase the fail counter. This greatly helps with misremembered or scripted clients to not regularly lock out the offender.
– eckes
21 hours ago
What I like is to remember at least the last failed password (Hashes). And if the same one is used do not increase the fail counter. This greatly helps with misremembered or scripted clients to not regularly lock out the offender.
– eckes
21 hours ago
If an attacker only has to guess 1000s of times to get your password than it is not a strong password.
– Qwertie
20 hours ago
If an attacker only has to guess 1000s of times to get your password than it is not a strong password.
– Qwertie
20 hours ago
@Qwertie, I will change it to a more vague description ;)
– Silver
11 hours ago
@Qwertie, I will change it to a more vague description ;)
– Silver
11 hours ago
add a comment |
Only two scenario is possible with it but rather showing account lockout time policy risk is more over lockout time.
E.g.
once can configure the hydra or some other tool to brute force the login and wait after 3 attempts. if you don't have sufficient locking time it can cause an account compromise.
if you have 30 mins or so locking time then its though we can configure the tool for brute force and wait after three attempts it will take years to crack the password.
to conclude this their no risk involve in displaying account lockout attempt.
add a comment |
Only two scenario is possible with it but rather showing account lockout time policy risk is more over lockout time.
E.g.
once can configure the hydra or some other tool to brute force the login and wait after 3 attempts. if you don't have sufficient locking time it can cause an account compromise.
if you have 30 mins or so locking time then its though we can configure the tool for brute force and wait after three attempts it will take years to crack the password.
to conclude this their no risk involve in displaying account lockout attempt.
add a comment |
Only two scenario is possible with it but rather showing account lockout time policy risk is more over lockout time.
E.g.
once can configure the hydra or some other tool to brute force the login and wait after 3 attempts. if you don't have sufficient locking time it can cause an account compromise.
if you have 30 mins or so locking time then its though we can configure the tool for brute force and wait after three attempts it will take years to crack the password.
to conclude this their no risk involve in displaying account lockout attempt.
Only two scenario is possible with it but rather showing account lockout time policy risk is more over lockout time.
E.g.
once can configure the hydra or some other tool to brute force the login and wait after 3 attempts. if you don't have sufficient locking time it can cause an account compromise.
if you have 30 mins or so locking time then its though we can configure the tool for brute force and wait after three attempts it will take years to crack the password.
to conclude this their no risk involve in displaying account lockout attempt.
answered yesterday
Security BeastSecurity Beast
1143
1143
add a comment |
add a comment |
I lean in general towards the less information you give to an attacker the better. As @security-beast mentioned a tool can be configured to wait the appropriate amount of time. Giving them the information for that configuration is not necessarily ideal.
However, you have to balance this with the needs of your users. Do you find that the system admins spend an inordinate amount of time unlocking accounts because your users keep locking them? If that's the case then your analysis may indicate that you get more benefit from displaying the number of retries to your users so they know when they need to wait before locking their accounts. In other cases the opposite will be true, but either way the answer should be the result of an objective analysis of the trade-offs for the particular system.
Hope this helps.
I hadn't seen Silver's comment when I posted, but I would second the NIST guidelines as a good base to start with.
– jfran3
yesterday
add a comment |
I lean in general towards the less information you give to an attacker the better. As @security-beast mentioned a tool can be configured to wait the appropriate amount of time. Giving them the information for that configuration is not necessarily ideal.
However, you have to balance this with the needs of your users. Do you find that the system admins spend an inordinate amount of time unlocking accounts because your users keep locking them? If that's the case then your analysis may indicate that you get more benefit from displaying the number of retries to your users so they know when they need to wait before locking their accounts. In other cases the opposite will be true, but either way the answer should be the result of an objective analysis of the trade-offs for the particular system.
Hope this helps.
I hadn't seen Silver's comment when I posted, but I would second the NIST guidelines as a good base to start with.
– jfran3
yesterday
add a comment |
I lean in general towards the less information you give to an attacker the better. As @security-beast mentioned a tool can be configured to wait the appropriate amount of time. Giving them the information for that configuration is not necessarily ideal.
However, you have to balance this with the needs of your users. Do you find that the system admins spend an inordinate amount of time unlocking accounts because your users keep locking them? If that's the case then your analysis may indicate that you get more benefit from displaying the number of retries to your users so they know when they need to wait before locking their accounts. In other cases the opposite will be true, but either way the answer should be the result of an objective analysis of the trade-offs for the particular system.
Hope this helps.
I lean in general towards the less information you give to an attacker the better. As @security-beast mentioned a tool can be configured to wait the appropriate amount of time. Giving them the information for that configuration is not necessarily ideal.
However, you have to balance this with the needs of your users. Do you find that the system admins spend an inordinate amount of time unlocking accounts because your users keep locking them? If that's the case then your analysis may indicate that you get more benefit from displaying the number of retries to your users so they know when they need to wait before locking their accounts. In other cases the opposite will be true, but either way the answer should be the result of an objective analysis of the trade-offs for the particular system.
Hope this helps.
answered yesterday
jfran3jfran3
466
466
I hadn't seen Silver's comment when I posted, but I would second the NIST guidelines as a good base to start with.
– jfran3
yesterday
add a comment |
I hadn't seen Silver's comment when I posted, but I would second the NIST guidelines as a good base to start with.
– jfran3
yesterday
I hadn't seen Silver's comment when I posted, but I would second the NIST guidelines as a good base to start with.
– jfran3
yesterday
I hadn't seen Silver's comment when I posted, but I would second the NIST guidelines as a good base to start with.
– jfran3
yesterday
add a comment |
To give another perspective on this: it doesn't matter for a skilled attacker.
How are online accounts compromised today typically1? There are two variations of one technique that are commonly used.
Databases with password hashes (or passwords in plaintext) get stolen and are cracked offline by attackers. After successfully cracking a hash the correct password is served to the login mechanism on the first try, so this control is ineffective.
This can either be the database of the service in question or the database of another service. Unfortunately people tend to reuse their passwords with several services so chances are high, that once a password is matched to an e-mail adress, it can be used on another site. An attacker might have two or three passwords to choose from, but probably not 20. Again, this control is ineffective.
So what level of security does this control establish? The level that is necessary to protect from inexperienced script kiddies, malicious ex-partners and nosy parents that want to take a look at your personal account and try five passwords at random. No more, but no less.
1 Then there are of course other techniques that are more "advanced" like keylogging, (spear)-phishing, MitM etc. which are as well not mitigated by this control.
add a comment |
To give another perspective on this: it doesn't matter for a skilled attacker.
How are online accounts compromised today typically1? There are two variations of one technique that are commonly used.
Databases with password hashes (or passwords in plaintext) get stolen and are cracked offline by attackers. After successfully cracking a hash the correct password is served to the login mechanism on the first try, so this control is ineffective.
This can either be the database of the service in question or the database of another service. Unfortunately people tend to reuse their passwords with several services so chances are high, that once a password is matched to an e-mail adress, it can be used on another site. An attacker might have two or three passwords to choose from, but probably not 20. Again, this control is ineffective.
So what level of security does this control establish? The level that is necessary to protect from inexperienced script kiddies, malicious ex-partners and nosy parents that want to take a look at your personal account and try five passwords at random. No more, but no less.
1 Then there are of course other techniques that are more "advanced" like keylogging, (spear)-phishing, MitM etc. which are as well not mitigated by this control.
add a comment |
To give another perspective on this: it doesn't matter for a skilled attacker.
How are online accounts compromised today typically1? There are two variations of one technique that are commonly used.
Databases with password hashes (or passwords in plaintext) get stolen and are cracked offline by attackers. After successfully cracking a hash the correct password is served to the login mechanism on the first try, so this control is ineffective.
This can either be the database of the service in question or the database of another service. Unfortunately people tend to reuse their passwords with several services so chances are high, that once a password is matched to an e-mail adress, it can be used on another site. An attacker might have two or three passwords to choose from, but probably not 20. Again, this control is ineffective.
So what level of security does this control establish? The level that is necessary to protect from inexperienced script kiddies, malicious ex-partners and nosy parents that want to take a look at your personal account and try five passwords at random. No more, but no less.
1 Then there are of course other techniques that are more "advanced" like keylogging, (spear)-phishing, MitM etc. which are as well not mitigated by this control.
To give another perspective on this: it doesn't matter for a skilled attacker.
How are online accounts compromised today typically1? There are two variations of one technique that are commonly used.
Databases with password hashes (or passwords in plaintext) get stolen and are cracked offline by attackers. After successfully cracking a hash the correct password is served to the login mechanism on the first try, so this control is ineffective.
This can either be the database of the service in question or the database of another service. Unfortunately people tend to reuse their passwords with several services so chances are high, that once a password is matched to an e-mail adress, it can be used on another site. An attacker might have two or three passwords to choose from, but probably not 20. Again, this control is ineffective.
So what level of security does this control establish? The level that is necessary to protect from inexperienced script kiddies, malicious ex-partners and nosy parents that want to take a look at your personal account and try five passwords at random. No more, but no less.
1 Then there are of course other techniques that are more "advanced" like keylogging, (spear)-phishing, MitM etc. which are as well not mitigated by this control.
answered yesterday
Tom K.Tom K.
5,65032150
5,65032150
add a comment |
add a comment |
Based on the information provided we can't really answer this question. The frontend can display whatever developers want you to see and it has nothing to do with the security. How would you for a fact know that your account is locked on the backend? What does lock mean in this scope? There is an infinite number of possible configurations on the backend. If you design a system with this feature as an absolute must, then I'm sure there is a safe way of implementing it.
add a comment |
Based on the information provided we can't really answer this question. The frontend can display whatever developers want you to see and it has nothing to do with the security. How would you for a fact know that your account is locked on the backend? What does lock mean in this scope? There is an infinite number of possible configurations on the backend. If you design a system with this feature as an absolute must, then I'm sure there is a safe way of implementing it.
add a comment |
Based on the information provided we can't really answer this question. The frontend can display whatever developers want you to see and it has nothing to do with the security. How would you for a fact know that your account is locked on the backend? What does lock mean in this scope? There is an infinite number of possible configurations on the backend. If you design a system with this feature as an absolute must, then I'm sure there is a safe way of implementing it.
Based on the information provided we can't really answer this question. The frontend can display whatever developers want you to see and it has nothing to do with the security. How would you for a fact know that your account is locked on the backend? What does lock mean in this scope? There is an infinite number of possible configurations on the backend. If you design a system with this feature as an absolute must, then I'm sure there is a safe way of implementing it.
answered yesterday
Kamil KurzynowskiKamil Kurzynowski
1
1
add a comment |
add a comment |
Security Risk is subjective it will depend on what you are trying to protect the objective of the security control and any other security control in place that mitigate or compensate the risk.
Based on this different companies / business will have different acceptance to same risk.
If in a generic way providing how many attempts your still have might not impose a risk (e.g.: PIN in your smart card to make phone calls)
In other situations it might be a risk (e.g.: trying to brute force mobile phone access) where you can stop before the last attempt and wait some time so the user resets the counter with a valid access...
You should check on the objective of the security control, what you are trying to protect and what security controls you have in place that will compensate or at least monitor abnormal situations.
Based on all this then you can decide if it is an acceptable risk or not for your specifics.
add a comment |
Security Risk is subjective it will depend on what you are trying to protect the objective of the security control and any other security control in place that mitigate or compensate the risk.
Based on this different companies / business will have different acceptance to same risk.
If in a generic way providing how many attempts your still have might not impose a risk (e.g.: PIN in your smart card to make phone calls)
In other situations it might be a risk (e.g.: trying to brute force mobile phone access) where you can stop before the last attempt and wait some time so the user resets the counter with a valid access...
You should check on the objective of the security control, what you are trying to protect and what security controls you have in place that will compensate or at least monitor abnormal situations.
Based on all this then you can decide if it is an acceptable risk or not for your specifics.
add a comment |
Security Risk is subjective it will depend on what you are trying to protect the objective of the security control and any other security control in place that mitigate or compensate the risk.
Based on this different companies / business will have different acceptance to same risk.
If in a generic way providing how many attempts your still have might not impose a risk (e.g.: PIN in your smart card to make phone calls)
In other situations it might be a risk (e.g.: trying to brute force mobile phone access) where you can stop before the last attempt and wait some time so the user resets the counter with a valid access...
You should check on the objective of the security control, what you are trying to protect and what security controls you have in place that will compensate or at least monitor abnormal situations.
Based on all this then you can decide if it is an acceptable risk or not for your specifics.
Security Risk is subjective it will depend on what you are trying to protect the objective of the security control and any other security control in place that mitigate or compensate the risk.
Based on this different companies / business will have different acceptance to same risk.
If in a generic way providing how many attempts your still have might not impose a risk (e.g.: PIN in your smart card to make phone calls)
In other situations it might be a risk (e.g.: trying to brute force mobile phone access) where you can stop before the last attempt and wait some time so the user resets the counter with a valid access...
You should check on the objective of the security control, what you are trying to protect and what security controls you have in place that will compensate or at least monitor abnormal situations.
Based on all this then you can decide if it is an acceptable risk or not for your specifics.
answered yesterday
HugoHugo
72238
72238
add a comment |
add a comment |
Thanks for contributing an answer to Information Security Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsecurity.stackexchange.com%2fquestions%2f201566%2fis-displaying-remaining-password-retry-count-a-security-risk%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
29
One consideration is that this can easily reveal whether a username exists on the site. This may be undesirable if user names are emails and the site is something personal like foot-fetish.com You can avoid this by returning a fake number for non-existent accounts
– paj28
yesterday
5
Would it be so implausibly difficult for a hacker to count the number of failed attempts before receiving the locked account message? By this logic you should be asking whether displaying the "Account locked" message is a security risk.
– MonkeyZeus
yesterday
2
@MonkeyZeus But with a number displayed the hacker knows when to stop before the account gets blocked and the failed attempt gets noticed. They then can wait some time until the owner logged in and resets the counter.
– BlackJack
yesterday
@BlackJack Not necessarily. If the user made 2 attempts right before the hacker made their first attempt then I would really hope that they don't think that a single failure results in a locked account. At any rate no threat model was mentioned by OP so open-ended conjecture like this really does nothing...
– MonkeyZeus
yesterday
1
Why has nobody considered that the retry count could be based on ip or device recognition?
– Nightwolf
13 hours ago