WordOps icon indicating copy to clipboard operation
WordOps copied to clipboard

[Feature request] Implement bruteforce protection for http basic auth

Open Nantris opened this issue 2 years ago • 19 comments

This may be a plausible solution: https://serverfault.com/a/421050

Or is something like this already implemented and I've overlooked it?

Nantris avatar Feb 01 '23 22:02 Nantris

Already implemented. Unauthorized requests returns 403 forbidden, which is handled by rate limiting in Nginx and fail2ban.

tersor avatar Feb 02 '23 07:02 tersor

Thanks for your reply @tersor!

Can you possibly share some details about the implementation? Or link to the relevant part of the code? I'd like to have a better understanding for risk analysis.

Nantris avatar Feb 02 '23 19:02 Nantris

Obrigado pela sua resposta@tersor!

Você pode compartilhar alguns detalhes sobre a implementação? Ou link para a parte relevante do código? Eu gostaria de ter um melhor entendimento para análise de risco.

Hello, you can also use instead of fail2ban, use CrowdSec faster and smarter than Fail2ban

Ethical-Cronos avatar Feb 03 '23 15:02 Ethical-Cronos

CrowdSec does sound better than fail2ban, which has been using way too much memory.

I hope the WordOps team might take a look into it, but I'm not planning to introduce that level of complexity into our own system by reconfiguring WordOps internals.

Nantris avatar Feb 04 '23 20:02 Nantris

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar Dec 11 '23 02:12 github-actions[bot]

Currently if fail2ban crashes, eg oom, I assume this would leave the server open to attack - so not stale.

Nantris avatar Dec 12 '23 20:12 Nantris

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar Jan 12 '24 02:01 github-actions[bot]

Not stale.

Nantris avatar Jan 12 '24 02:01 Nantris

Not stale.

Ethical-Cronos avatar Jan 12 '24 13:01 Ethical-Cronos

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar Feb 13 '24 02:02 github-actions[bot]

Not stale.

Nantris avatar Feb 13 '24 05:02 Nantris

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar Mar 15 '24 02:03 github-actions[bot]

Not stale.

Nantris avatar Mar 15 '24 02:03 Nantris

Crowdsec is a paid solution and not a direct substitute for Fail2Ban.

If F2B crashes, the sysadmin is responsible for detecting and resolving the issue. However, it’s important to remember that any service can crash; there’s no such thing as a “perfect” firewall.

Therefore, this issue is somewhat irrelevant. Also, fighting the bot with "not stale" every time is not going to lead you anywhere.

janiosarmento avatar Mar 23 '24 14:03 janiosarmento

Fail2Ban shouldn't be configured in a way that leads to ever increasing memory usage over time until it crashes. This could seemingly be avoided by rotating the logs more efficiently.

I wouldn't say that typing 9 characters is much of an effort.

Nantris avatar Mar 23 '24 20:03 Nantris

One of the most beautiful aspects of open source is that anyone can contribute improvements and submit them to the repository. I’ve contributed to WordOps a few times myself, even learning some Python to add value instead of just complaining that things aren’t the way I want them to be. Just saying.

janiosarmento avatar Mar 23 '24 23:03 janiosarmento

Not stale.

Oh no, complaining!

Nantris avatar Mar 23 '24 23:03 Nantris

Not stale.

Oh no, complaining!

To be more direct, test Crowdsec, I introduced it a while ago to Wordops, which is studying how to integrate with the Wordops eco system, to replace Fail2ban. Uninstall Fail2ban from your machine and test Crowdsec, I guarantee you won't regret it, plus it's super easy to install and proves to be very efficient. It is clear to address precisely this problem that you opened in the repository.

Ethical-Cronos avatar Mar 25 '24 13:03 Ethical-Cronos

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar Apr 25 '24 02:04 github-actions[bot]

This issue was closed because it has been stalled for 5 days with no activity.

github-actions[bot] avatar May 01 '24 02:05 github-actions[bot]