AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
¿Cómo configuro AWS WAF para proteger mis recursos de ataques comunes?
Quiero usar AWS WAF en mis recursos para protegerme contra los ataques comunes.
Descripción corta
Para usar AWS WAF en tus recursos para protegerte contra los ataques comunes, lleva a cabo una o varias de las siguientes acciones:
- Migra de AWS WAF Classic a AWS WAF.
- Asocia tu recurso a una lista de control de acceso web (ACL web) en AWS WAF.
- Revisa las solicitudes entrantes para optimizar tus reglas.
- Utiliza reglas administradas de AWS para protegerte contra ataques comunes.
- Utiliza la tasa de solicitudes legítimas como referencia para AWS WAF.
- Utiliza Automatizaciones de seguridad para AWS WAF para evitar ataques comunes.
- Utiliza instrucciones de reglas de ataque de inyección de código SQL y scripting entre sitios (XSS).
- Restringe el acceso desde Amazon CloudFront.
- Protégete contra los ataques de denegación de servicio distribuida (DDoS).
Resolución
Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de errores de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.
Migración de AWS WAF Classic a AWS WAF
Si usas AWS WAF Classic, se recomienda migrar a AWS WAF. Para más información, consulta ¿Por qué hacer la migración a AWS WAF?
Asociación de un recurso a una ACL web
En primer lugar, crea tu ACL web en AWS WAF. A continuación, asocia el recurso a esa ACL web para permitir que AWS WAF supervise las solicitudes entrantes. Si no puedes integrar directamente tu recurso con AWS WAF, revisa las siguientes alternativas. Para obtener más información, consulta Recursos que se pueden proteger con AWS WAF.
Recursos que se pueden integrar con AWS WAF
Para los recursos que se pueden integrar con AWS WAF, utiliza una de las siguientes opciones para integrar tus recursos:
- Para la consola de AWS WAF, utiliza la opción Recursos de AWS asociados. Para obtener más información, consulta Crear una ACL web.
- Para la AWS CLI, utiliza el comando associate-web-acl.
- Para CloudFront, utiliza el comando update-distribution.
- Para AWS Firewall Manager, utiliza la política de AWS WAF de Firewall Manager.
- Para las aplicaciones de AWS Amplify, asocia directamente la aplicación a la consola de Amplify o AWS WAF.
Recursos que no se pueden integrar con AWS WAF
En el caso de los recursos que no se pueden integrar directamente con AWS WAF, utiliza una de las siguientes opciones para integrar los recursos:
- Para las instancias de Amazon Elastic Compute Cloud (Amazon EC2), crea un equilibrador de carga de aplicación o una distribución de CloudFront. A continuación, asocia la distribución a una ACL web.
- Para los clústeres de Amazon Elastic Kubernetes Service (Amazon EKS), crea un equilibrador de carga de aplicación. A continuación, asocia el equilibrador de carga de aplicación a una ACL web. Para obtener más información, consulta Protección de las aplicaciones web de Amazon EKS con AWS WAF.
- Para los equilibradores de carga de red, crea un equilibrador de carga de aplicación. A continuación, define el equilibrador de carga de aplicación como el objetivo del equilibrador de carga de red y asocia el equilibrador de carga de aplicación a una ACL web. Para obtener más información, consulta Uso de un equilibrador de carga de aplicación como objetivo de un equilibrador de carga de red.
Revisión de las solicitudes entrantes para optimizar las reglas personalizadas
Para proteger los recursos, utiliza los registros de las aplicaciones, como los registros de acceso de CloudFront o del equilibrador de carga de aplicación, para determinar los patrones de solicitud más comunes.
Nota: Se recomienda utilizar los registros de AWS WAF para almacenar, consultar y analizar los registros de solicitudes HTTP.
Después de determinar los patrones de solicitud comunes, almacena los registros en Amazon Simple Storage Service (Amazon S3) o Amazon CloudWatch. Para consultar los registros e identificar patrones, utiliza Amazon Athena o Información de registros de CloudWatch.
Por último, crea una regla de AWS WAF en el modo de recuento que verifique las solicitudes entrantes y, a continuación, establece la regla en Bloquear:
- Crea una instrucción de regla NOT en el encabezado del host de ejemplo.com.
Nota: Sustituye ejemplo.com por el encabezado de tu host. - Establece Acción en Bloquear. AWS WAF bloquea las solicitudes que no tienen el encabezado de host que especifiques.
Nota: Esta regla también bloquea las solicitudes al nombre de dominio completo (FQDN) proporcionado por AWS.
Los siguientes ejemplos son patrones de solicitud comunes que puedes encontrar.
Solicitudes de URI que no existen
Para reconocer este patrón, debes conocer todos los URI compatibles en tu entorno. El siguiente es un ejemplo de consulta de Athena en los registros de AWS WAF que cuenta las solicitudes de cada URI:
SELECT COUNT("httprequest"."uri") AS URIcount, "httprequest"."uri" FROM waf_logs GROUP BY "httprequest"."uri" ORDER BY URIcount DESC
A continuación, se muestra un ejemplo de consulta de CloudWatch en los registros de AWS WAF que cuenta las solicitudes de cada URI:
fields httpRequest.uri | stats count(*) as requestCount by httpRequest.uri | sort requestCount desc
Solicitudes que contienen valores de encabezado de host diferentes
Este patrón incluye solicitudes con un encabezado de host HTTP que tu servidor web no admite. Este patrón también incluye solicitudes que contienen una dirección IP en lugar del nombre de dominio de tu sitio web.
El siguiente es un ejemplo de consulta de Athena en los registros de AWS WAF que cuenta las solicitudes con diferentes valores de encabezado de host:
SELECT header.value as HostHeader, count(header) as count FROM waf_logs, UNNEST(httprequest.headers) AS x(header) WHERE "header"."name" = 'Host' GROUP BY header ORDER BY count DESC
El siguiente es un ejemplo de consulta de CloudWatch en los registros de AWS WAF que cuenta las solicitudes con diferentes valores de encabezado de host:
fields @timestamp, @message | parse @message '{"name":"Host","value":"*"}' as host | stats count(*) as requestCount by host | sort requestCount desc
Uso de reglas administradas de AWS para protegerse contra ataques comunes
Para usar las reglas administradas de AWS, identifica los patrones de solicitud y los ataques comunes contra los que deseas protegerte. A continuación, agrega los grupos de reglas administradas de AWS correspondientes. Para protegerte contra tareas especializadas, puedes usar los siguientes grupos de reglas con un coste adicional:
- Grupo de reglas para la prevención del fraude en la creación de cuentas (ACFP) de control de fraudes de AWS WAF
- Grupo de reglas para la prevención de la apropiación de cuentas (ATP) de control de fraudes de AWS WAF
- Grupo de reglas de AWS WAF Bot Control
Agrega los grupos de reglas relevantes a tu ACL web en el modo Recuento. A continuación, revisa los registros de AWS WAF y las métricas de CloudWatch para determinar si la regla administrada coincide con tráfico legítimo. Si la regla no coincide con tráfico legítimo, desactiva el modo Activar recuento para que el grupo de reglas bloquee el tráfico. Para desactivar una regla específica en el grupo de reglas administradas de AWS, selecciona Invalidar la acción de reglas para esa regla.
Nota: Las solicitudes legítimas a tu entorno pueden iniciar las reglas administradas de AWS. Para obtener más información, consulta Cómo personalizar el comportamiento de las reglas administradas de AWS para AWS WAF.
Uso de la tasa de solicitudes legítimas como referencia para AWS WAF
Para protegerte contra los ataques volumétricos, analiza el tráfico para identificar la cantidad de solicitudes realizadas por direcciones IP de clientes legítimas. Para analizar el tráfico, utiliza Información de registros de CloudWatch, consultas de Athena o Amazon QuickSight en los registros de AWS WAF. Utiliza la información del análisis para establecer una referencia para tu AWS WAF. A continuación, configura una instrucción de regla basada en tasas para establecer un umbral de solicitud.
El siguiente es un ejemplo de consulta de Athena en los registros de AWS WAF que cuenta las solicitudes de una única dirección IP dentro de un periodo de tiempo específico:
SELECT "httprequest"."clientip", "count"(*) "count", "httprequest"."country" FROM waf_logs WHERE httprequest.clientip LIKE '10.0.0.0' and date_format(from_unixtime("timestamp"/1000), '%Y-%m-%d %h:%i:%s') between '2020-11-16 09:00:00' and '2020-11-16 10:00:00' GROUP BY "httprequest"."clientip", "httprequest"."country"
Nota: Sustituye 10.0.0.0 por tu dirección IP y 2020-11-16 09:00:00 y 2020-11-16 10:00:00 por tu periodo de tiempo.
El siguiente es un ejemplo de consulta de Información de CloudWatch en los registros de AWS WAF que cuenta las solicitudes de una sola dirección IP:
fields httpRequest.clientIp, httpRequest.country | stats count(*) as requestCount by httpRequest.clientIp, httpRequest.country | filter httpRequest.clientIp = "10.0.0.0"
Nota: Sustituye 10.0.0.0 por tu dirección IP.
El siguiente es un ejemplo de consulta de Athena en los registros de AWS WAF que cuenta todas las solicitudes de direcciones IP dentro de un periodo de tiempo específico:
SELECT "httprequest"."clientip", "count"(*) "count", "httprequest"."country" FROM waf_logs WHERE date_format(from_unixtime("timestamp"/1000), '%Y-%m-%d %h:%i:%s') BETWEEN '2020-11-16 09:00:00' AND '2020-11-16 10:00:00' GROUP BY "httprequest"."clientip", "httprequest"."country" ORDER BY "count" DESC
Nota: Sustituye 2020-11-16 09:00:00 y 2020-11-16 10:00:00 por tu periodo de tiempo.
El siguiente es un ejemplo de consulta de Información de CloudWatch en los registros de AWS WAF que cuenta las solicitudes de direcciones IP dentro de un periodo de tiempo específico:
fields httpRequest.clientIp, httpRequest.country | stats count(*) as requestCount by httpRequest.clientIp, httpRequest.country | sort requestCount desc
Uso de Automatizaciones de seguridad para AWS WAF para evitar ataques comunes
Para ofrecer protección adicional contra los ataques comunes, puedes usar Automatizaciones de seguridad para AWS WAF.
Nota: Esta solución usa otros servicios de AWS que generan costes.
Uso de instrucciones de reglas de ataque XSS e inyección de código SQL
Para proteger tus aplicaciones contra los ataques de inyección de código SQL y XSS, utiliza instrucciones de reglas de ataque integradas para la inyección de código SQL y XSS. Los ataques pueden producirse en diferentes partes de la solicitud HTTP, como el encabezado HTTP, la cadena de consulta o el URI. Configura las reglas de AWS WAF para inspeccionar diferentes partes de la solicitud HTTP comparándolas con las instrucciones de las reglas de ataque.
Nota: Las solicitudes legítimas a tu entorno pueden iniciar las instrucciones de reglas de ataque. Para más información, consulta ¿Cómo puedo detectar los falsos positivos provocados por reglas administradas de AWS?
Restricción del acceso desde CloudFront
Puedes restringir el acceso en función de las direcciones IP de CloudFront. A continuación, agrega un encabezado personalizado en CloudFront para las solicitudes de origen. En el origen, permite el acceso solo si el encabezado y el valor personalizados están presentes. Si el origen es un equilibrador de carga de aplicación o una puerta de enlace de API, utiliza AWS WAF en el origen. Esta acción permite las solicitudes que contienen el encabezado y el valor personalizados.
Protección contra los ataques DDoS
Para protegerte contra los ataques DDoS, consulta las prácticas recomendadas de AWS para la resiliencia frente a DDoS y las características de AWS Shield.
Información relacionada
- Etiquetas
- AWS WAF
- Idioma
- Español
Vídeos relacionados


Contenido relevante
- preguntada hace 3 meses
- Respuesta aceptadapreguntada hace 10 meses
- preguntada hace 4 meses
- preguntada hace 9 meses
- Como solucionar el error: Supplied Policy document is breaching Cloudwatch Logs policy length limit.Respuesta aceptadapreguntada hace un año
OFICIAL DE AWSActualizada hace 5 meses
OFICIAL DE AWSActualizada hace 3 años