Una supervisión de seguridad crítica en instancias de Apache Airflow ampliamente utilizadas ha expuesto las credenciales de plataformas como AWS, Slack, PayPal y otros servicios, dejando a las organizaciones vulnerables a violaciones de datos y ataques a la cadena de suministro.
Los investigadores de Intezer descubrieron miles de instancias desprotegidas en todas las industrias, incluidas las finanzas, la atención médica, el comercio electrónico y la ciberseguridad. Estos casos revelaron riesgos sistémicos vinculados a configuraciones obsoletas y prácticas de codificación inseguras.
Servidores Apache Airflow mal configurados
Apache Airflow, una herramienta de orquestación de flujo de trabajo de código abierto, utiliza gráficos acíclicos dirigidos (DAG) basados en Python para automatizar tareas. Sin embargo, las instancias mal configuradas, particularmente aquellas que ejecutan versiones anteriores a la 2.0, exponen las credenciales a través de múltiples superficies de ataque:
Secretos codificados en scripts DAG: el problema más frecuente tiene que ver con las contraseñas de texto plano incrustadas directamente en el código DAG.
Estas prácticas pasan por alto la función Conexiones seguras de Airflow, que cifra las credenciales utilizando claves Fernet.
Variables y conexiones no cifradas
La función Variables de Airflow, diseñada para almacenar parámetros reutilizables, a menudo contenía tokens de Slack y claves API en texto sin formato:
slack_token = Variable.get(«slack_alerts_token») #Exposed via UI
De manera similar, las credenciales almacenadas en el campo Extra de Conexiones (destinadas a metadatos) se dejaron sin cifrar, exponiendo claves de AWS como AKIAEXAMPLE12345.
Vulnerabilidades de registro (CVE-2020-17511)
Las versiones anteriores a la 1.10.13 registraron las credenciales ingresadas por CLI en texto sin formato. Una entrada de registro comprometida reveló una contraseña de SQL Lakehouse.
Esta falla permitió a los atacantes recopilar credenciales sin acceso directo a la base de datos.
Archivos de configuración expuestos
Las instancias con exponen_config=True en airflow.cfg revelaron claves Fernet y contraseñas de bases de datos:
Tales fallas otorgaron a los atacantes control total sobre los mecanismos de cifrado de Airflow.
Los actores malintencionados que aprovechan estas exposiciones podrían secuestrar recursos de la nube, iniciar movimientos laterales o implementar ransomware. Intezer observó casos en los que los complementos del editor de código de flujo de aire permitieron modificaciones DAG no autorizadas, con el riesgo de ejecución de código malicioso.
Las filtraciones también violan el RGPD y otras leyes de protección de datos, exponiendo a las organizaciones a multas y daños a su reputación. En un caso, se expusieron nombres de imágenes de Docker para software propietario, lo que generó preocupación sobre ataques a la cadena de suministro.
Mitigaciones
Se insta a las organizaciones a:
- Actualice a Airflow 2.0+, que aplica la autenticación, elimina funciones riesgosas como Ad Hoc Query y cifra las variables de forma predeterminada.
- Adopte prácticas de codificación segura: reemplace los secretos codificados con variables de entorno o conexiones cifradas.
- Auditar archivos de configuración: asegúrese de que Expon_config=False y rote las claves Fernet
Tras una divulgación responsable, Intezer notificó a las entidades afectadas, aunque muchas siguen sin parchear. A medida que la automatización del flujo de trabajo se vuelve omnipresente, proteger herramientas como Airflow ya no es un requisito previo opcional para la integridad operativa.