dboehmer / coocook

👨‍🍳🦉 Web application for collecting recipes and making food plans
https://coocook.org/
Other
11 stars 2 forks source link

Implement login throttling against brute force attacks #69

Open dboehmer opened 6 years ago

dboehmer commented 6 years ago

Web clients shouldn't be able to probe many passwords fast.

Timeouts could be a fixed 1 seconds for every login and an increasing timeout for failed logins.

Accounting could consider the following factors:

dboehmer commented 4 years ago

I’d be glad to implement this but the task is more complex than it looks. How should we even attempt to implement brute-force protection?

Maybe take ½ hour to watch About Bruteforce Protection and why it isn’t easy at all on YouTube (German, automatic translation available) from MRMCD2019 conference.

@MarkusLeupold Do you have a suggestion what to do?

MarkusLeupold commented 4 years ago

The talk about bruteforce protection gives a very good understanding of how hard it is to really protect a system against such attacks. But it also gives us a few ideas of how to solve the problem.

CAPTCHAs are annoying for the user as well as delays and two-factor authentication. One shouldn't be required to spend a higher efford on logging in, only to make Coocook accounts safe. These techniques should only be optional for users with higher security claims.

That's why, in my opinion, the solution using device cookies seems to be the most appropriate one for our needs. Users would never come in touch with it nor feel any major delays.

dboehmer commented 4 years ago

We were having a real life conversation about this right now.

Current state:

Open questions: