Cómo incluir una dirección IP en la lista blanca con WAF – ModSecurity

En el ámbito de la ciberseguridad, la protección de aplicaciones web es crucial para asegurar la integridad y confidencialidad de la información procesada en la red. ModSecurity, un firewall de aplicaciones web (WAF) altamente configurable y adaptable, ofrece una capa de seguridad robusta contra una variedad de ataques. Entre sus numerosas funcionalidades, la capacidad de configurar listas blancas para direcciones IP específicas es de vital importancia para administradores que necesitan permitir el acceso sin restricciones a usuarios o sistemas de confianza.

Para cualquier pregunta relacionada con la sintaxis de los comandos, se recomienda consultar el Manual de Referencia de ModSecurity disponible en: https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual.

La Directiva Principal: SecRule

La creación y configuración de reglas dentro de ModSecurity se realiza a través de la directiva SecRule. Se conforma por tres componentes principales: VARIABLES, OPERATOR y ACTIONS.

  • VARIABLES: Define las partes de una transacción HTTP que se deben inspeccionar. Por ejemplo, ARGS para todos los argumentos incluidos en el Payload de POST, REQUEST_METHOD para el método de solicitud utilizado en la transacción, REQUEST_HEADERS para un conjunto de todos los encabezados de la solicitud o para inspeccionar encabezados seleccionados.
  • OPERATOR: Especifica una expresión regular, patrón o palabra clave que se debe comprobar en las variables. Los operadores comienzan con el carácter @.
  • ACTIONS: Determina las acciones a realizar si la regla concuerda. Las acciones se dividen en siete categorías como Disruptive, Flow, Meta-data, Variable, Logging, Special y Miscellaneous. Si no se proporcionan ACTIONS, las acciones predeterminadas se aplican según SecDefaultAction.

A continuación, se ilustran tres enfoques para incluir una dirección IP en la lista blanca del motor de ModSecurity.

Ejemplo de Regla 1: Bypass Total

La siguiente regla demuestra cómo incluir una dirección IP en la lista blanca para eludir el motor de ModSecurity por completo.

SecRule REMOTE_ADDR "@ipMatch 192.168.1.101" \
id:101,phase:1,t:none,log,allow
  • REMOTE_ADDR: La dirección IP del cliente remoto a incluir en la lista blanca.
  • ACTIONS: La combinación de log y allow detiene el procesamiento de reglas afectando toda la transacción.

Ejemplo de Regla 2: Desactivación Temporal

El siguiente ejemplo es considerado menos eficiente que el primero pero ofrece una alternativa para desactivar temporalmente el motor de ModSecurity.

SecRule REMOTE_ADDR "@ipMatch 192.168.1.101" \
id:102,phase:1,t:none,nolog,pass,ctl:ruleEngine=off
  • ACTIONS: La acción ctl:ruleEngine=off cambia la configuración de ModSecurity de forma transitoria, afectando únicamente la transacción en curso.

Ejemplo de Regla 3: Eliminación de Regla por ID

El último ejemplo muestra cómo incluir una dirección IP en la lista blanca asumiendo la existencia de una regla que bloquea una IP o rango de IPs específicos y que necesita ser eludido.

SecRule REMOTE_ADDR "@ipMatch 192.168.1.101" \
id:101,phase:1,t:none,log,pass,ctl:ruleRemoveById=1234
  • ACTIONS: La acción ctl:ruleRemoveById=1234 elimina, para la transacción actual, la regla identificada por el ID especificado, permitiendo así el acceso de la dirección IP señalada.

La inclusión de una dirección IP en la lista blanca de ModSecurity permite a administradores y protectores de aplicaciones web flexibilizar el acceso mientras mantienen un alto nivel de seguridad. Cada enfoque descrito tiene sus propios casos de uso, permitiendo una configuración detallada adaptada a las necesidades específicas de cada entorno web.

Suscríbete al boletín SysAdmin

Este es tu recurso para las últimas noticias y consejos sobre administración de sistemas, Linux, Windows, cloud computing, seguridad de la nube, etc. Lo enviamos 2 días a la semana.

¡Apúntate a nuestro newsletter!


– patrocinadores –

Noticias destacadas

– patrocinadores –

¡SUSCRÍBETE AL BOLETÍN
DE LOS SYSADMINS!

Scroll al inicio
×