ModSecurity
Cortafuegos de aplicaciones web (WAF) que se integra en el servidor (Apache, Nginx) y bloquea peticiones maliciosas según reglas, como inyecciones SQL o XSS.
Qué es ModSecurity
ModSecurity es un módulo de WAF de código abierto que inspecciona las peticiones HTTP que llegan al servidor web y aplica un conjunto de reglas para detectar y bloquear patrones de ataque. Suele usarse con el OWASP Core Rule Set (CRS), un catálogo mantenido por la comunidad que cubre inyección SQL, cross-site scripting, inclusión de archivos, escáneres conocidos, etc.
Cómo funciona
Se carga como módulo en Apache o Nginx. Cada petición pasa por las reglas: cabeceras, parámetros, cuerpo, URL. Si una coincide con un patrón malicioso, ModSecurity la bloquea (responde 403), la registra o solo la marca, según el modo configurado. Las reglas tienen "puntuación de anomalía": muchas señales pequeñas suman hasta superar un umbral y disparar el bloqueo.
Cuándo usarlo
Recomendable en VPS y dedicados que sirven webs dinámicas (WordPress, paneles, apps a medida). En muchos shared hostings ya viene activado por el proveedor. Hay que afinarlo: las reglas genéricas a veces bloquean acciones legítimas ("falsos positivos") y conviene crear excepciones.
Datos curiosos
- El OWASP Core Rule Set es el conjunto de reglas estándar que usa casi todo el mundo con ModSecurity.
- Funciona bien combinado con fail2ban: ModSecurity detecta el ataque, fail2ban banea la IP que insiste.
- Las CDN con WAF en la nube (Cloudflare, etc.) hacen un trabajo parecido antes de que el tráfico llegue a tu servidor.
Preguntas frecuentes
¿Me bloqueará acciones normales?
Puede pasar con las reglas genéricas (subir cierto contenido, plugins concretos). Se resuelve creando excepciones para esos casos.
¿Lo necesito si uso Cloudflare?
No es estrictamente necesario, pero tener WAF en origen además del de la CDN es defensa en profundidad.
¿Funciona con WordPress?
Sí. De hecho protege bien contra muchos ataques habituales a WordPress, siempre que esté bien ajustado.