Como @Arminius menciona en un comentario, hay productos (software o hardware) llamados "cortafuegos de aplicaciones web" (WAF) que inspeccionan el tráfico de red antes de que llegue al proceso de su servidor web. Desafortunadamente, no son realmente confiables. No solo hay desvíos conocidos para algunos tipos de WAF, la protección que brindan es inherentemente una cuestión de bloquear cosas que podrían ser dañinas, sin saber cómo se usarán, lo que significa que generalmente necesitan Para ser configurado de forma conservadora para evitar falsos positivos. También tienden a no actualizarse tan pronto como se descubren nuevas vulnerabilidades; son reactivos a los patrones de amenaza conocidos, pero generalmente no son proactivos. Tampoco pueden protegerse contra todas las formas posibles de arruinar una aplicación web, incluso dentro del contexto de XSS y SQLi; He visto sitios vulnerables a XSS a través de cosas locas como "si el parámetro A se evalúa como true
, el parámetro B se pasará a eval
", lo cual fue muy estúpido por parte del desarrollador, pero no es algo que un WAF pueda lograr captura.
Como parte de una estrategia de defensa en profundidad, los WAF tienen su lugar, al igual que el software antivirus. Sin embargo, no son adecuados como alternativa a una revisión de seguridad adecuada. Además de sus debilidades a algunos vectores XSS o SQLi, también son totalmente incapaces de prevenir otras aplicaciones web clásicas como CSRF, clickjacking o fijación de sesión, y no son particularmente propensos a detectar elementos como el archivo arbitrario, la carga de archivos arbitrarios, o inyección de comando del sistema operativo.
Gastar su dinero en conseguir que alguien que conoce la seguridad de la aplicación web revise su sitio mucho antes de que se moleste en consultar los WAF.