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.