WAF based approach is an admission of ignorance and a position of weakness, only in this case shifting right into the model is unproven, can't quite be done yet, contrary to ideas like reactive self protection for apps.
WAF based approach is an admission of ignorance and a position of weakness, only in this case shifting right into the model is unproven, can't quite be done yet, contrary to ideas like reactive self protection for apps.
A WAF is a good thing for most of that install base who have other things to do with their day to make sure they survive in this world than cybersecurity for their website.
Also, I don't understand this sentence: "WAF based approach is an admission of ignorance and a position of weakness, only in this case shifting right into the model is unproven, can't quite be done yet, contrary to ideas like reactive self protection for apps."
Additionally, a significant number of enterprise WAFs are deployed just minimally enough to check an auditing/compliance checkbox rather than to solve noted actionable security concerns. As a result, they live up to the quality of implementation they were given.
Can you back up your statements? I'd be really interested in that.
If you are not a large corporation it may seem silly, but as the corporations scale up they become simply a necessity. If you like, call it "non-technical reasons", but it doesn't change their necessity.
WAFs do things like securing an API written years ago by people no longer at the company, that for legal reasons can not be "just" modified or taken down, but which also can't be left with an arbitrary code execution vulnerability in it.
By all means when possible fix the real underlying vulnerabilities, but at scale that gets to be easier said than done. In real life you may be arguing for weeks about whose "fault" it is, whose responsibility it is, whether it is even a bug or a real issue, and in the meantime, the company wants some ability to deal with this.
When things like log4j come out, it’s really nice to be able to have a vendor like Cloudflare or AWS deploy a single rule off-hours which will cover all of your public facing services, especially when some of them are not your own code or hard to deploy. It’s one thing if a patch is a single line change pushed out in your CD pipeline than if it’s “beg the vendor for an update, get an emergency CAB approved, and follow the 97 step Word document”.
…and it isn’t the case for most small organizations either.
This is the comment I was looking for. This is exactly right, most companies do it to check a box for compliance.
Hence the notion of layering and "defense in depth". But as old as this idea is, it seems like some people are still looking for / expecting silver bullets that magically "fix security". Also consider threat modeling... what security measure one needs to take are driven at least in part by factors like "how valuable is what you're protecting?" and "what are the expected capabilities of the enemy who would be attacking you?" and so on.
Sure, but what about the benefits?
Let's say you've got an ecommerce website, and you find XSS.
Without a WAF that would be a critical problem, fixing the problem would be an urgent issue, and it'd probably be a sign you need to train your people better and perform thorough security code reviews. You'll have to have an 'incident wash-up' and you might even have to notify customers.
If you've got a WAF, though? It's not exploitable. Give yourself a pat on the back for having 'multiple layers of protection'. The problem is now 'technical debt' and you can chuck a ticket at the bottom of the backlog and delete it 6 months later while 'cleaning up the backlog'.
/s