Automatización de IPs de amenazas en AWS WAF con ProxyCheck.io

Automatización de IPs de amenazas en AWS WAF con ProxyCheck.io
En este artículo describimos cómo automatizar la incorporación de direcciones IP maliciosas catalogadas por el servicio de terceros https://proxycheck.io a AWS WAF, tomando como fuente los registros de acceso de servidores web (por ejemplo CloudFront). Aunque AWS ofrece listas administradas como AWSManagedIPReputationList, AWSManagedReconnaissanceList y AWSManagedIPDDoSList, en este caso construimos una lista propia basada en análisis de logs y reglas personalizadas.
Resumen de la solución: una aplicación SAM que despliega una función Lambda en Python que se dispara cuando se sube un CSV a un bucket S3. La función lee el CSV, desduplica IPs, consulta ProxyCheck para obtener un score de riesgo, guarda resultados en Elasticache Valkey para evitar consultas repetidas y actualiza un IP Set de AWS WAF con las IPs de riesgo alto. Además envía notificaciones a Telegram con estadísticas de caché.
Requisitos previos: clave API en ProxyCheck, permisos IAM para desplegar la app SAM y crear recursos, cluster Elasticache Valkey para caching, bot de Telegram para notificaciones y un proyecto inicializado con AWS SAM CLI. Se recomienda almacenar secretos como claves API, tokens de Telegram y URL de Redis en AWS Systems Manager Parameter Store en lugar de variables en claro.
Arquitectura y despliegue: el template SAM define una Function Lambda que realiza las comprobaciones, una EventBridge Rule que escucha los eventos Object Created u Object Updated en el bucket S3 y las políticas IAM necesarias para leer S3 y actualizar el IP Set de WAF. Debe actualizarse el nombre del bucket, la clave API de ProxyCheck, el token y chat ID de Telegram y el identificador del IP Set de WAF que desea actualizar. Use el scope CLOUDFRONT si protege distribuciones CloudFront.
Flujo de trabajo de la Lambda: 1) lectura del CSV desde S3 (la IP se asume en la segunda columna del CSV), 2) desduplicado de IPs, 3) comprobación de score de riesgo con ProxyCheck ( límite práctico de 1000 consultas por ejecución ), 4) cacheo de resultados en Redis con TTL de 30 días para reducir llamadas a la API y mejorar cuota, 5) conversión de IPs a formato CIDR /32 y actualización del IP Set de WAF mediante boto3 respetando límites de AWS, 6) envío de resumen por Telegram con estadísticas de cache y número de IPs añadidas. La función incluye manejo de errores y notificaciones de fallo también vía Telegram.
Detalles técnicos clave: la caché en Elasticache Valkey reduce significativamente llamadas a ProxyCheck mediante get/set de scores por IP; se mantienen estadísticas de cache hits, api calls y checked count para informe; se implementa control de concurrencia para obtener LockToken del IP Set antes de update_ip_set; se controla que el conjunto no exceda el límite de direcciones permitido por AWS.
Buenas prácticas: limitar el número de verificaciones por ejecución, usar Parameter Store para secretos, probar las actualizaciones del IP Set en entornos de staging antes de producción, y monitorizar CloudWatch Logs y métricas de Lambda para detectar errores o sobrecostes. Recuerde configurar correctamente el identificador del IP Set en el código y adaptar el scope a su uso (CLOUDFRONT o REGIONAL).
Soporte para IPv6: el mismo patrón se puede aplicar a IPv6 simplemente adaptando validación y formatos CIDR cuando proceda.
Sobre Q2BSTUDIO: en Q2BSTUDIO somos una empresa de desarrollo de software especializada en aplicaciones a medida y software a medida, con experiencia en inteligencia artificial, ciberseguridad y servicios cloud. Ofrecemos soluciones de protección y automatización en la nube, integrando herramientas como AWS WAF, Elasticache y servicios externos de reputación IP para proteger plataformas críticas. Si necesita migración o gestión de infraestructuras en la nube podemos ayudarle con servicios cloud aws y azure a medida, y con estrategias completas de ciberseguridad y pentesting para reducir la superficie de ataque. Conozca más sobre nuestras soluciones cloud en servicios cloud AWS y Azure y sobre protección y pruebas de seguridad en ciberseguridad y pentesting.
Servicios complementarios: además desarrollamos proyectos de inteligencia de negocio y Power BI para explotación de datos, ofrecemos IA para empresas y agentes IA para automatizar procesos y generar valor a partir de datos. Palabras clave relevantes que aplicamos en nuestros proyectos incluyen aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi.
Conclusión y siguiente paso: esta automatización permite reaccionar de forma proactiva ante IPs de mala reputación detectadas en logs, reduciendo tiempo de respuesta y esfuerzo manual. Si desea que implementemos o adaptemos esta solución a su arquitectura, contacte con Q2BSTUDIO para evaluar un proyecto a medida y asegurar su entorno con prácticas profesionales de desarrollo seguro y operaciones en la nube.
Gracias por leer y gracias por confiar en Q2BSTUDIO para sus necesidades de software, seguridad y transformación digital.
Comentarios