Geekflare recibe el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliación de los enlaces de compra en este sitio.
En Nginx y Seguridad Última actualización: 24 de septiembre de 2023
Compartir en:
Escáner de seguridad de aplicaciones web Invicti - la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

Si estaba protegiendo Nginx con Mod Security, entonces le gustaría tener activado el conjunto de reglas básicas (CRS) de OWASP para protegerse de las siguientes amenazas

  • Protección contra violaciones del protocolo HTTP
  • Ataques web comunes
  • Protección contra bots, rastreadores y actividades maliciosas
  • Protección contra troyanos
  • Protección contra fugas de información
  • Ataques de Cross Site Scripting
  • Ataques de inyección SQL

¿Está de acuerdo?

En mi post anterior, expliqué cómo instalar Nginx y Mod Security y como prometí aquí está cómo puede configurarlos con OWASP CRS para una mejor seguridad.

ModSecurity es un cortafuegos de aplicaciones web (WAF) de código abierto y, por defecto, está configurado sólo para detectar. Eso significa que necesita habilitar la configuración necesaria(como se indica a continuación) para empezar a proteger sus sitios web.

Descargar ModSecurity CRS

  • Descargue el último archivo zip de CRS desde el siguiente enlace y transfiéralo al servidor

https://github.com/SpiderLabs/owasp-modsecurity-crs/zipball/master

  • descomprima el archivo
descomprimir SpiderLabs-owasp-modsecurity-crs-2.2.9-26-gf16e0b1.zip
  • Copie lo siguiente en la carpeta conf de nginx
modsecurity_crs_10_setup.conf.example
base_rules

Configurar Nginx para integrar OWASP ModSecurity CRS

Dado que ha decidido utilizar OWASP CRS, necesita fusionar el archivo conf incluido en SpiderLabs OWASP CRS, que acaba de copiar (modsecurity_crs_10_setup.conf.example ) bajo la carpeta nginx.

Nginx no soporta múltiples directivas ModSecurityConfig como Apache, así que necesita poner todas las reglas conf juntas en un único fichero

Hagámoslo..

  • Añada base_rules & modsecurity_crs_10_setup.conf.example al fichero modsecurity.conf
cat modsecurity_crs_10_setup.conf.example base_rules/*.conf >>/usr/local/nginx/conf/modsecurity

.conf
También necesita copiar todos los archivos * .data a la carpeta conf de nginx

cp base_rules/*.data /usr/local/nginx/conf/

Verificación rápida

Asegúrese de que ha añadido las directivas ModSecurityEnabled y ModSecurityConfig en el archivo nginx.conf bajo ubicación. Si no es así, añádalas como se indica a continuación
location

/ {
ModSecurityEnabled on;
ModSecurityConfig modsecurity.conf;

}

  • Reinicie Nginx

Haciendo todo lo anterior significa que ha integrado con éxito OWASP CRS en Mod Security en Nginx. Es hora de hacer los pequeños ajustes esenciales

Configurar el conjunto de reglas del núcleo OWASP para empezar a proteger

En esta sección, todas las modificaciones serán en el archivo modsecurity. conf así que recuerde tomar una copia de seguridad

Lo primero

Habilite el registro de auditoría

Es esencial generar logs, así sabrá lo que está siendo bloqueado. Añada la directiva SecAuditLog si no existe
SecAuditLog

/usr/local/nginx/logs/modsec_audit.log

Reinicie Nginx y verá el archivo de registro generado

rw-r----- 1 root root 0 May 22 07:54 /usr/local/nginx/logs/modsec_audit.

log

Habilitar el motor de reglas de seguridad

Comience la protección de Mod Security habilitando el motor de reglas como se indica a continuación

SecRuleEngine Activado

Habilite la acción predeterminada como Denegar

Configure la acción por defecto como “bloquear” para cualquier solicitud que coincida con las reglas

SecDefaultAction "fase:1,denegar,log"

Las tres configuraciones anteriores son esenciales y ahora ModSecurity está listo para ejecutar la acción y proteger

Aquí hay una configuración más que le puede gustar

Cambiar el Banner de Cabecera del Servidor

La configuración por defecto de Nginx expondrá la información del servidor con su versión, lo que es muy recomendable enmascarar si está trabajando en un entorno PCI-DSS

También puede hacerlo sin Mod Security como se explica aquí

Cabecera por defecto

nginx-default-header

Puede hacerlo rápidamente añadiendo una línea

SecServerSignature GeekFlare

Y ahora se ve así

nginx-modsecurity-header

Espero que las instrucciones anteriores le ayuden en la integración de OWASP Core Rule Set con el servidor web Nginx para una mejor protección.

  • Chandan Kumar
    Autor
    Chandan Kumar es el fundador de Geekflare. Ha ayudado a millones de personas a destacar en el ámbito digital. Apasionado de la tecnología, su misión es explorar el mundo y ampliar el crecimiento de profesionales y empresas.
Gracias a nuestros patrocinadores
Más lecturas sobre Nginx
Potencia tu negocio
Algunas de las herramientas y servicios que le ayudarán a hacer crecer su negocio.
  • Invicti utiliza el Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en tan solo unas horas.
    Pruebe Invicti
  • Web scraping, proxy residencial, gestor de proxy, desbloqueador web, rastreador de motores de búsqueda, y todo lo que necesita para recopilar datos web.
    Pruebe Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno que te ayuda a gestionar proyectos, tareas, trabajo, ventas, CRM, operaciones, flujos de trabajo y mucho más.
    Prueba Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra puntos débiles de ciberseguridad en su infraestructura, para evitar costosas violaciones de datos.
    Prueba Intruder