TL;DR: Your request is something we have considered, but it's actually dangerous in non-obvious ways, and does not make anything easier. We have already planned features for the next release of Admin Tools which better address the use cases which lead to the problem.
You are correct that the number of people who have been complaining about the number of blocked request emails has increased the past few months. This did not escape my notice. There's a reason I do support, not just development; I want to see exactly this kind of feedback. It tells me there's a problem and needs fixing. It just takes time for us to talk to the users, understand what they're doing and why they're doing it, deduce the actual root causes, and then coming up with a good solution. Implementing a bad solution which cures the symptom without taking into account the root cause is worse than nothing; it introduced new issues, and it becomes very hard to remove in a future version without causing even more friction with the users.
We have actually thought of a kill-switch like what you described but quickly decided against it. A kill-switch like this would disable all emails from Admin Tools including emails on modified core files, users escalating their or another user's privileges, backend logins, etc. This means that a large part of the proactive nature of Admin Tools would be neutered, without most people using this option realizing it. That's a non-obvious security nightmare. Moreover, implementing this feature would still require you to log into each site, go to the Configure WAF page, locate this toggle, and toggle it. It is no easier or harder than logging into each site, going to the Configure WAF page, locate the email this address on blocked request field, and removing its contents, something which has been possible for the past 15 years.
So, let's start understanding the problem.
Surely, people didn't just start enabling this feature now. So, why did it start happening now and not, say, 15 years ago when the email on blocked requests was first introduced? Based on my sources –including those in the enterprise WAF space– the number of attacks has increased exponentially over the past few years, and has started spilling over to less trafficked sites. In the past, most attackers would either do it for the street cred, or to send mildly lucrative spam. In the last few years attackers are trying to compromise sites for (geo)political reasons, and to launch crypto scams which are far more lucrative than spam ever was.
Knowing that what we see is just an amplified signal of a deeper issue, we need to backtrack a bit, identify the actual deeper issue, its root causes, and then come up with solutions.
The deep-seated problem we're trying to solve is that people leave the email on blocked request feature enabled on production sites even though it's only meant as a troubleshooting aid. Why do they do that? I have identified three broad categories.
One category is those who get frequently locked out of their own site and need to use the Rescue URL. That's primarily a documentation and discovery issue. The Rescue URL will work even when you have not been sent an email. The condition for it working is that the IP you are trying to access the site from is blocked. We will improve the documentation and discoverability of the feature.
The second category is those who simply forgot about it, or where not aware of it being a troubleshooting aid. The best we can do to address it is to show a permanent, annoying message on the backend of your sites when the email on blocked request feature is enabled, with a quick link to disable this particular feature and nothing else. The only kill-switch we will provide –hidden away in the plugin's options– is to disable this annoying reminder, in case you truly want to leave this feature enabled without being reminded about it. This is coming in the next version of Admin Tools; it's on my to-do list. It will also be faster than looking for an option in the Configure WAF page.
The third category is the people who deliberately leave this feature enabled, despite knowing it's a troubleshooting aid, to monitor the volume of blocked requests so as to detect when they are under attack and possibly take some action – which, ironically, makes the effect of massive attacks far worse. The next version of Admin Tools will have a new feature, one which can email you when the number of blocked requests in a predefined unit of time exceeds a certain threshold, and will not repeat for a time period you define. How's that different to leaving the blocked request emails enabled? When you are under attack, you will not receive thousands of emails for blocked requests in the span of a few minutes. You will receive one, and only one, email which tells you that you're effectively under attack. An email you can act upon. This, we have already implemented in code and I finished testing it before the holidays.
If you have a different use case, I want to hear about it. It's always possible I missed something.
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!