Quiero crear una regla de AWS WAF para evitar ataques de inyección de código SQL y scripting entre sitios (XSS).
Descripción corta
Para ayudar a prevenir los ataques de inyección de código SQL y XSS, utiliza una de las siguientes protecciones:
- Motores XSS y de inyección de código SQL integrados
- Reglas administradas de AWS para los ataques de inyección de código SQL e inyección XSS
Nota: AWS WAF tiene cuotas de inspección de tamaño máximo para los cuerpos de las solicitudes, los encabezados y las cookies. Para obtener más información, consulta Componentes de solicitudes web de gran tamaño en AWS WAF.
Resolución
Nota: Se recomienda probar las reglas en un entorno no productivo con la Acción definida como Contar. Utiliza las métricas de Amazon CloudWatch en tus registros de AWS WAF para evaluar la regla. Después de probar las reglas, cambia la Acción a Bloquear.
Uso de motores XSS y de inyección de código SQL integrados
Los ataques pueden producirse en diferentes partes de la solicitud HTTP, como el encabezado HTTP, la cadena de consulta o el URI. Para inspeccionar diferentes partes de la solicitud HTTP comparándolas con los motores de mitigación integrados, configura las reglas de AWS WAF.
Para inspeccionar código SQL malintencionado, crea una instrucción de reglas de ataque por inyección de código SQL. Para inspeccionar si hay scripts malintencionados en un componente de solicitud web, crea una instrucción de reglas de ataque XSS.
Creación de una instrucción de reglas de ataque XSS o inyección de código SQL
Sigue estos pasos:
- Abre la consola de AWS WAF.
- En el panel de navegación, en AWS WAF, elige Paquetes de protección (ACL web).
- Selecciona tu paquete de protección.
- Selecciona Administrar reglas y, a continuación, Agregar regla.
- Selecciona **Regla personalizada ** y, a continuación, elige Siguiente.
- Vuelve a seleccionar Regla personalizada y, a continuación, elige ** Siguiente**.
- Usa las siguientes opciones para tu regla:
En Acción selecciona BLOQUEAR.
En Nombre de regla, introduce un nombre para la regla.
En Si una solicitud, selecciona coincide con la instrucción.
En Inspeccionar, selecciona los componentes de la solicitud que deseas que evalúe la instrucción de reglas.
En Tipo de coincidencia, selecciona Contiene ataques de inyección de código SQL o Contiene ataques de inyección XSS.
(Opcional) Elige una transformación de texto.
- Elige Agregar regla.
Creación de una instrucción de reglas de ataque XSS o inyección de código SQL que se evalúe en función de varios componentes de solicitud
Sigue estos pasos:
- Abre la consola de AWS WAF.
- En el panel de navegación, en AWS WAF, elige Paquetes de protección (ACL web).
- Selecciona tu paquete de protección.
- Selecciona Administrar reglas y, a continuación, Agregar regla.
- Selecciona **Regla personalizada ** y, a continuación, elige Siguiente.
- Vuelve a seleccionar Regla personalizada y, a continuación, elige ** Siguiente**.
- Usa las siguientes opciones para tu regla:
En Acción selecciona BLOQUEAR.
En Nombre de regla, introduce un nombre para la regla.
En Si una solicitud, elige cumple al menos una de las instrucciones (OR).
En Inspeccionar, selecciona los componentes de la solicitud que deseas que evalúe la instrucción de reglas.
En Tipo de coincidencia, selecciona Contiene ataques de inyección de código SQL o Contiene ataques de inyección XSS.
(Opcional) Elige una transformación de texto.
En Instrucción 2, en Inspeccionar, selecciona los componentes de la solicitud que deseas que evalúe la instrucción de reglas.
En Tipo de coincidencia, selecciona Contiene ataques de inyección de código SQL o Contiene inyección XSS.
(Opcional) Elige una transformación de texto.
- Elige Agregar regla.
Nota: Para que la regla funcione, debes aplicar las transformaciones de texto correctas. Por ejemplo, si deseas que AWS WAF inspeccione una cookie, utiliza la decodificación de URL, la decodificación de entidades HTML y minúsculas.
Uso de las reglas administradas de AWS para los ataques de inyección de código SQL e inyección XSS
Para protegerte contra las vulnerabilidades de las aplicaciones u otro tráfico no deseado, pero no para escribir tus propias reglas, utiliza las reglas administradas de AWS para AWS WAF.
Nota:
- Los proveedores de grupos de reglas administradas pueden actualizar el grupo de reglas o dejar que venza. Para obtener más información, consulta Uso de grupos de reglas administradas y versionadas en AWS WAF.
- Antes de usar un grupo de reglas administradas en producción, pruébalo en un entorno que no sea de producción para reducir los falsos positivos.
Para protegerte contra los ataques de inyección de código SQL, utiliza el grupo de reglas administradas de bases de datos SQL. Para protegerte contra los ataques de inyección XSS, utiliza el grupo de reglas administradas del conjunto de reglas principales (CRS).
Adición de un grupo de reglas administradas de AWS a tu ACL web
Sigue estos pasos:
- Abre la consola de AWS WAF.
- En el panel de navegación, en AWS WAF, elige Paquetes de protección (ACL web).
- Selecciona tu paquete de protección.
- Selecciona Administrar reglas y, a continuación, Agregar regla.
- Selecciona el grupo de reglas administradas de AWS y, a continuación, elige Siguiente.
- Elige la base de datos SQL o el grupo de reglas del conjunto de reglas principales.
- Después de actualizar los detalles de la regla, selecciona Agregar regla.
Nota: Para usar un grupo de reglas administradas de AWS existente, elige el grupo de reglas administradas y edita los detalles. Para obtener más información, consulta Uso de grupos de reglas administradas.
Información relacionada
Introducción a AWS WAF con la nueva experiencia de consola
Prueba y ajuste de las protecciones de AWS WAF