Encontrar errores de mod_security, como “ 403 Prohibido ” o “406 No Aceptable” mientras trabaja en su sitio de WordPress, puede ser frustrante.
A menudo, estos errores no indican un problema con el código de su sitio web o un mal funcionamiento del complemento, sino más bien una capa de seguridad demasiado entusiasta en su servidor web llamada ModSecurity .
Esta guía proporciona un análisis profundo del diagnóstico y la resolución de estos problemas, garantizando que su sitio permanezca seguro y funcione correctamente.
TL;DR: Guía de solución rápida para errores de mod_security en WordPress
- Los errores de mod_security generalmente ocurren cuando el firewall del servidor bloquea la actividad legítima de WordPress, no porque su sitio esté roto.
- Revise siempre primero los registros del servidor e identifique el ID exacto de la regla antes de realizar cambios. Esto evita riesgos de seguridad innecesarios.
- La solución más segura es pedirle a su proveedor de alojamiento que incluya en la lista blanca el ID de regla específico en lugar de deshabilitar ModSecurity por completo.
- Utilice copias de seguridad y un sitio de prueba para probar correcciones de forma segura, luego aplique la eliminación de reglas específicas, como SecRuleRemoveById, para mantener su firewall activo y seguro.
Errores de mod_security en WordPress: descripción general y causas
ModSecurity es un firewall sofisticado, pero carece de la conciencia contextual de un administrador humano.
Para solucionarlo, primero debes comprender qué es y por qué marca la actividad legítima de WordPress como una amenaza.

¿Qué es el proyecto ModSecurity y cómo funciona como firewall de aplicaciones web?
firewall de aplicaciones web (WAF) de código abierto que se ejecuta directamente en su servidor web (normalmente Apache, Nginx o IIS).
Se encuentra entre Internet y su sitio web, inspeccionando cada solicitud HTTP
Su función principal es filtrar el tráfico según reglas predefinidas. El conjunto de reglas WAF más utilizado por los hosts es el CRS (Conjunto de Reglas Básicas) de OWASP.
Si la solicitud de un visitante coincide con un patrón de ataque conocido, como un de inyección SQL o un bot malicioso, el motor ModSecurity bloquea la solicitud inmediatamente.
Esta protección proactiva es vital para defender su entorno de alojamiento contra amenazas comunes y ataques HTTP.
Mantenga su sitio de WordPress seguro y libre de errores
Deje que nuestros expertos en SeaCare se encarguen del mantenimiento, la seguridad y el rendimiento para que usted pueda concentrarse en su negocio e impulsar el crecimiento.
Errores comunes de mod_security en sitios de WordPress
Cuando ModSecurity bloquea una solicitud, rara vez lo notifica explícitamente. En su lugar, verá códigos de error estándar del servidor en su navegador:
- 403 Prohibido: El servidor entendió la solicitud, pero se niega a procesarla. Este es el error más común cuando se activa una regla de seguridad.
- 406 No aceptable: esto ocurre cuando el recurso solicitado no puede generar una respuesta que corresponda a los encabezados enviados en la solicitud (a menudo provocado por encabezados específicos del navegador o datos de cookies).
- Error interno del servidor 500 : un archivo .htaccess mal configurado que intente controlar ModSecurity puede bloquear el sitio por completo.
- Bucles de inicio de sesión: los usuarios de WordPress pueden encontrarse con que no pueden iniciar sesión y son redirigidos constantemente a la página de inicio de sesión sin un mensaje de error si una regla marca el proceso de autenticación.
¿Por qué mod_security genera falsos positivos en WordPress?
ModSecurity se basa en la lógica de coincidencia de patrones. No sabe que usted es el administrador; solo ve código y cadenas de texto. Esto suele generar falsos positivos que bloquean las acciones seguras:
- Palabras clave SQL sospechosas: si escribe una publicación de blog sobre administración de bases de datos y usa términos como DROP TABLE o SELECT * en su texto, ModSecurity puede interpretar esto como un ataque de inyección SQL y bloquear la acción "Publicar".
- Datos del plugin: Los nuevos plugins y los plugins de SEO suelen enviar datos complejos (JSON o XML) al servidor. Si estos datos contienen caracteres especiales o estructuras que parecen un exploit, el firewall los bloqueará.
- Falsos positivos: tareas administrativas legítimas, como guardar estructuras de menú grandes o formularios de contacto con campos específicos, pueden coincidir inadvertidamente con una regla estricta destinada a evitar la ejecución de scripts entre sitios (XSS).
Diagnosticar errores de mod_security en WordPress antes de aplicar correcciones
Deshabilitar las funciones de seguridad a ciegas es peligroso. Antes de aplicar cualquier solución, debe confirmar que ModSecurity es el verdadero culpable diagnosticando correctamente el error.

Capturar el mensaje de error exacto del navegador y la URL fallida
Comience observando el error cuidadosamente.
- Desencadenar el error: realizar la acción que provoca el bloqueo (por ejemplo, guardar una página específica).
- Revisa la URL: Mira la barra de direcciones. ¿El error ocurre en wp-admin/post.php o en la URL de un plugin específico?
- Tenga en cuenta el código: ¿es un error 403, 406 o 500?
Si el error desaparece cuando detienes esa acción específica (por ejemplo, eliminar un fragmento de código específico del contenido de tu publicación), tienes un fuerte indicio de que un filtro de contenido es el responsable.
Acceda y analice los registros de ModSecurity en el Panel de control de hosting o SSH
Para identificar la causa específica, debe revisar los registros. Muchos proveedores de alojamiento permiten verlos a través del panel de control o por SSH.
- cPanel: Inicie sesión y vaya a la sección "Métricas" o "Seguridad". Busque " Registros de errores " o "Registro de seguridad de mod".
- SSH: Si tiene acceso a la terminal, el archivo de registro normalmente se encuentra en /usr/local/apache/logs/error_log o /var/log/httpd/error_log.
Abra el archivo y busque "ModSecurity" o su dirección IP. Busque la línea "ModSecurity: Acceso denegado"
Lectura adicional: Cómo solucionar el error «Lo sentimos, no tienes permiso para acceder a esta página» en WordPress
Identificar los ID de las reglas de activación en los registros de auditoría de ModSecurity
Este es el paso más importante. En la entrada del registro, busque el ID de la regla. Normalmente aparecerá entre paréntesis, como este: [id “941160”].
Ejemplo de fragmento de registro: ModSecurity: Acceso denegado con código 403… [msg “NoScript XSS InjectionChecker: HTML Injection”] [id “941160”]
En este ejemplo, 941160 es el ID de la regla. Anote este número. Esto le permite deshabilitar solo esta regla específica más adelante, en lugar de desactivar todo el firewall.
Reproducir errores de mod_security en un sitio de WordPress en fase de prueba
Nunca pruebe los cambios de seguridad en un sitio en activo.
- Cree un clon de prueba de su sitio web utilizando las herramientas de su host o un complemento.
- Intente reproducir el error en el sitio de prueba.
- Si el error ocurre allí, puedes probar de forma segura las soluciones a continuación sin poner en riesgo la disponibilidad de tu sitio principal.
Más información: Cómo solucionar errores 301 en WordPress
Métodos para corregir errores de mod_security en WordPress
Una vez que tenga el ID de la regla (o haya confirmado que es un problema de ModSecurity), utilice uno de los siguientes métodos.

Método 1: Solicitar al proveedor de alojamiento que incluya en la lista blanca ID de reglas de ModSecurity específicas
Esta es la mejor solución y la más permanente. La mayoría de los proveedores de alojamiento compartido no ofrecen acceso root para editar los archivos principales de ModSecurity, así que debes solicitárselo.
- Abra un ticket de soporte.
- Plantilla : “Hola, recibo un error 403 en mi sitio. Los registros de errores indican que lo activa el ID de la regla de ModSecurity [Insertar ID aquí]. Se trata de un falso positivo causado por mi actividad legítima en WordPress. ¿Podrían incluir esta regla en la lista blanca de mi dominio ?”
- El personal de soporte generalmente puede agregar esta excepción a la configuración del servidor en minutos.
Método 2: Deshabilitar temporalmente mod_security en cPanel para realizar pruebas
Si está atascado y no puede esperar soporte, puede desactivar temporalmente ModSecurity para finalizar su tarea.
- Inicie sesión en cPanel.
- Vaya a Seguridad → ModSecurity.
- Localiza tu dominio en la lista.
- Cambie el interruptor de Activado a Desactivado.
Nota: Esto desactiva el firewall por completo. Solo hazlo durante los minutos necesarios para completar la tarea (por ejemplo, guardar la configuración) y luego vuelve a activarlo inmediatamente para protegerte contra amenazas comunes.
Método 3: Solucionar conflictos de complementos o temas que desencadenan errores de mod_security
A veces el problema es un software mal codificado en su sitio.
- Conflictos de plugins: Desactive sus plugins uno por uno. Si el error desaparece tras desactivar un plugin específico, compruebe si hay actualizaciones disponibles. De lo contrario, contacte con el desarrollador del plugin; es posible que deba ajustar la forma en que su plugin envía datos para evitar que los proveedores comerciales de WAF lo detecten.
- Problemas con el tema: Cambia temporalmente a un tema predeterminado de WordPress (como Twenty Twenty-Four). Si el error se soluciona, es posible que tu tema original incluya scripts personalizados que provoquen el bloqueo.
Explorar más: ¿Qué es un error de conflicto 409 y cómo solucionarlo?
Método 4: Modificar las reglas de .htaccess para resolver el bloqueo de mod_security
Si su host permite anulaciones de .htaccess, puede deshabilitar manualmente ModSecurity para su sitio.
- Acceda a su sitio a través de FTP o el Administrador de archivos.
- Busque el archivo .htaccess en la carpeta raíz.
- Añade el siguiente código en la parte superior:
<IfModule mod_security.c>SecFilterEngine desactivado SecFilterScanPOST desactivado</IfModule>
Nota: No todos los servidores admiten esta directiva. Si su sitio falla (Error 500) después de agregarla, elimínela inmediatamente.
Método 5: Utilice SecRuleRemoveById en la configuración del servidor Apache o NGINX
Para los usuarios de servidores VPS o dedicados (o si su host admite esta directiva .htaccess específica), puede eliminar quirúrgicamente la regla de bloqueo utilizando la ID que encontró anteriormente.
- Para Apache (.htaccess): agregue esta línea a su archivo .htaccess, reemplazando XXXXXX con el ID de sus registros:
<IfModule mod_security.c>Eliminar regla de seguridad por ID XXXXXX</IfModule>
- Para Nginx: Normalmente se necesita acceso root para modificar el archivo nginx.conf o el archivo vhost del sitio. Agregue esto dentro del bloque de servidor o ubicación:
modsecurity_rules 'EliminarReglaSeguridadPorId XXXXXX';
Este es un método superior al Método 4 porque mantiene el firewall activo para todas las demás amenazas.
Leer más: Apache vs Nginx
Método 6: Reconfigurar los complementos de seguridad para evitar conflictos con el firewall
Si ejecutas complementos como Wordfence , JetPack , etc., estos actúan como un firewall a nivel de aplicación. Ejecutarlos junto con una configuración estricta de ModSecurity a nivel de servidor puede provocar un doble filtrado, bloqueando las solicitudes válidas.
- Verifique la configuración de su complemento de seguridad para “Modo de aprendizaje” o “Lista blanca”
- Asegúrese de que sus proveedores de servicios de Internet o direcciones IP dinámicas no estén marcados por configuraciones demasiado agresivas tanto en el complemento como en el servidor.
Explorar más: Cómo solucionar el error de contenido mixto en WordPress
Flujo de trabajo de resolución de problemas segura mediante copias de seguridad y pruebas de WordPress
Modificar las reglas de seguridad a nivel de servidor y editar los archivos de configuración principales conlleva riesgos inherentes importantes.

Un solo error de sintaxis en su archivo .htaccess puede desencadenar inmediatamente un “Error interno del servidor 500”, dejando todo su sitio web fuera de línea.
Para evitar tiempos de inactividad inesperados y pérdida de datos, debe cumplir estrictamente este flujo de trabajo de resolución de problemas seguro:
- Copia de seguridad: Antes de modificar el código, crea una copia de seguridad manual completa de tu sitio web. Asegúrate de descargar tanto el directorio de archivos de WordPress (específicamente, wp-content y .htaccess) como una exportación completa de la base de datos SQL. Esto crea un punto de restauración inmediato en caso de que algo salga mal.
- Prueba: Nunca pruebe los cambios del firewall en un entorno real. Cree un clon de prueba de su sitio; la mayoría de los proveedores de alojamiento modernos ofrecen esta función. Realice primero todas las pruebas de diagnóstico y modificaciones a los archivos de configuración en este entorno aislado.
- Verificar: Tras aplicar una corrección (como SecRuleRemoveById), es necesario realizar pruebas exhaustivas. No se limite a comprobar si el error original ha desaparecido; pruebe funciones críticas como formularios de contacto, páginas de inicio de sesión y flujos de pago de comercio electrónico para garantizar que el cambio de seguridad no haya afectado accidentalmente a otros scripts.
- Implementar: una vez que la solución esté validada en la etapa de prueba sin efectos secundarios, puede aplicar de manera segura la misma solución exacta a su sitio en vivo.
Conclusión: Cómo resolver errores de mod_security en WordPress
ModSecurity es un componente esencial de la seguridad de las aplicaciones, ya que proporciona filtrado de respuestas y bloquea ataques antes de que lleguen a tu instalación de WordPress . Sin embargo, una configuración adecuada es clave para evitar frustraciones.
Al analizar los registros de errores, identificar la ID de regla específica y aplicar reglas de lista blanca específicas (en lugar de deshabilitar el firewall por completo), puede mantener un entorno de alojamiento seguro que funcione sin problemas para usted y sus usuarios.
Ya sea que lo solucione a través de .htaccess o contactándose con su proveedor de alojamiento, recibir asesoramiento de expertos y seguir un enfoque metódico es la mejor manera de resolver estos errores de forma permanente.
Preguntas frecuentes sobre cómo solucionar errores de mod_security en WordPress
¿Por qué los proveedores de alojamiento bloquean las solicitudes de WordPress con errores mod_security?
Los proveedores de hosting bloquean las solicitudes cuando las reglas del firewall detectan actividad sospechosa. Estas reglas se diseñaron originalmente para prevenir ataques como la inyección de SQL maliciosa y la inyección de scripts.
A veces, se marcan acciones normales de los usuarios de WordPress, como la gestión de formularios o plugins . Puedes reducir los falsos positivos solicitando a tu proveedor de hosting que incluya en la lista blanca IDs de reglas específicas en lugar de desactivar la protección por completo.
¿Cómo pueden los usuarios de WordPress gestionar eficazmente los errores de WordPress relacionados con mod_security?
Comience por verificar el mensaje de error exacto y el ID de la regla en los registros del servidor. Luego, pruebe el problema en la prueba en diferentes plataformas si es necesario.
Aplique medidas proactivas, como actualizaciones de plugins y limpieza de entradas. Verifique siempre los cambios antes de publicarlos.
¿ModSecurity sólo lo utilizan los proveedores de WAF comerciales?
No. ModSecurity es un software de código abierto publicado bajo la licencia Apache. Funciona tanto en productos comerciales como en implementaciones independientes.
Los proveedores de WAF comerciales también lo utilizan, pero muchos entornos de alojamiento ejecutan conjuntos de reglas impulsados por la comunidad que se actualizan periódicamente.
¿Cómo afectan las capacidades de filtrado de respuestas a la funcionalidad de WordPress?
Las funciones de filtrado de respuestas inspeccionan el contenido saliente en busca de amenazas. En raras ocasiones, bloquean la salida legítima. Asegúrese de que la representación de datos sea adecuada y de que las prácticas de codificación sean correctas para evitar desencadenantes. Utilice plugins y temas con buenas reseñas para reducir el riesgo.
¿Pueden los desarrolladores contribuir con nuevas funciones o correcciones a ModSecurity?
Sí. Los desarrolladores pueden enviar solicitudes de incorporación de cambios para mejorar las reglas o añadir nuevas funciones. El proyecto agradece las contribuciones de particulares, agencias e incluso organizaciones gubernamentales.