← Últimos artículos
💻 computer science

Prevalence of Cross-File Dependencies in Terraform and Their Resolution by Security Scanners

Este artículo analiza un conjunto de datos de Terraform a gran escala para revelar que las dependencias entre archivos son frecuentes y a menudo involucran recursos sensibles a la seguridad, al tiempo que demuestra, mediante experimentos controlados, que los escáneres de seguridad modernos poseen capacidades variadas pero significativas para resolver estas complejas relaciones entre archivos, desafiando la suposición de que no pueden manejar el razonamiento entre múltiples archivos.

Autores originales: Moatasem M. Draz

Publicado 2026-09-21
📖 6 min de lectura🧠 Análisis profundo

Autores originales: Moatasem M. Draz

Artículo original bajo licencia CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). ✨ Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo

En el mundo digital moderno, los servidores y redes masivos que impulsan nuestras aplicaciones, bancos y servicios de streaming ya no se construyen a mano. En su lugar, los ingenieros escriben instrucciones en un lenguaje de computación para decirle a la nube exactamente qué construir. Esta práctica se llama Infraestructura como Código. Permite que los equipos definan sistemas complejos en archivos de texto, asegurando que cada servidor, firewall y cubo de almacenamiento se cree con la misma precisión en cada ocasión. Una de las herramientas más populares para este trabajo se llama Terraform. Funciona como un lector de planos, tomando estas instrucciones de texto y convirtiéndolas en tecnología real y funcional. Sin embargo, al igual que el plano de una casa podría estar dividido en docenas de páginas con notas que hacen referencia a otras páginas, estos archivos de código rara vez están aislados. Están entretejidos, con un archivo llamando a otro, pasando valores de un lado a otro y construyendo un sistema que existe solo cuando todas las piezas se ensamblan.

La seguridad de estos sistemas depende de la exactitud de estas instrucciones. Un solo error en el código, como dejar accidentalmente una puerta digital abierta, puede exponer datos sensibles a todo el internet. Durante años, investigadores y expertos en seguridad se han preocupado de que las herramientas diseñadas para escanear estos planos en busca de errores pudieran ser ciegas a las conexiones entre archivos. La creencia predominante era que estos escáneres solo podían leer un archivo a la vez, perdiendo de vista los secretos peligrosos ocultos en los espacios entre ellos. Si un archivo decía "usar la configuración por defecto" y otro archivo definía ese valor por defecto como "abierto para todos", el escáner podría ver el primer archivo como seguro y el segundo como seguro de forma aislada, fallando al detectar la combinación peligrosa. Este artículo se propuso poner a prueba esa suposición contra una enorme colección de código del mundo real y ver si las herramientas eran realmente tan limitadas como todos pensaban.

Los investigadores comenzaron recopilando una vasta biblioteca de más de 62,000 proyectos públicos que utilizan Terraform. Querían entender con qué frecuencia estos proyectos dependen realmente de las conexiones entre diferentes archivos. Al mapear las relaciones en estos proyectos, descubrieron que las conexiones entre archivos no son excepciones raras, sino una parte estándar de cómo se construyen estos sistemas. De hecho, más de un tercio de todos los proyectos que estudiaron contenían al menos una conexión donde un archivo dependía de otro. Estas conexiones no estaban distribuidas uniformemente; estaban fuertemente concentradas en un número menor de proyectos complejos, mientras que muchos proyectos más simples tenían muy pocas o ninguna. La forma más común en que estos archivos se vinculaban era apuntando a carpetas compartidas, donde un proyecto buscaba hacia arriba o a través de su estructura de directorios para encontrar una pieza de código común que necesitaba. Este patrón mostró que la forma en que los ingenieros organizan su trabajo crea naturalmente una red de dependencias que abarca muchos archivos.

El estudio planteó entonces una pregunta crítica: ¿llevan estas conexiones a menudo a las partes más sensibles de un sistema? Los investigadores buscaron instancias donde un archivo dependiera de otro que controlara configuraciones de seguridad, como quién podía acceder a una base de datos o qué computadoras tenían permitido comunicarse entre sí. Descubrieron que en más de 9,000 de los proyectos, estas conexiones entre archivos efectivamente apuntaban a estos controles de seguridad críticos. Esto significaba que la seguridad de estos sistemas a menudo dependía de la capacidad de rastrear un valor desde un archivo, a través de una conexión, hasta una regla de seguridad en otro archivo. Si una herramienta no podía seguir ese camino, estaría mirando la imagen equivocada, potencialmente pasando por alto una vulnerabilidad que existía solo debido a la forma en que los archivos estaban ensamblados.

Con el alcance del problema establecido, los investigadores se dirigieron a las herramientas mismas para ver si realmente podían seguir estos caminos. Diseñaron un experimento controlado utilizando cuatro de los escáneres de seguridad más populares disponibles. Crearon una serie de casos de prueba que imitaban las conexiones del mundo real que habían encontrado, que iban desde enlaces simples entre archivos en la misma carpeta hasta cadenas complejas donde un valor pasaba a través de múltiples módulos antes de llegar a su destino final. Probaron si los escáneres podían detectar una falla de seguridad cuando el ajuste peligroso estaba oculto en un archivo diferente, o si los escáneres solo verían el peligro cuando este estuviera escrito directamente en el mismo archivo.

Los resultados desafiaron la creencia sostenida durante mucho tiempo de que estas herramientas eran fundamentalmente ciegas a las conexiones entre archivos. El estudio encontró que las capacidades de las herramientas no eran un simple sí o no, sino un espectro. Cada una de las herramientas probadas fue capaz de seguir las conexiones más simples, como una variable definida en un archivo y utilizada en otro dentro de la misma carpeta. Todas detectaron con éxito el peligro en estos escenarios básicos. Sin embargo, a medida que las conexiones se volvían más complejas, las herramientas comenzaron a divergir. Solo uno de los cuatro escáneres, Checkov, fue capaz de seguir los caminos más intrincados, incluyendo aquellos donde los valores se pasaban a través de múltiples capas de módulos o donde los ajustes eran sobrescritos por archivos de configuración especiales. Las otras herramientas podían manejar los enlaces directos, pero a menudo perdían el rastro cuando la conexión involucraba pasos intermedios o tipos de archivos específicos como los archivos de sobrescritura de variables.

Este hallazgo sugiere que la suposición común de que los escáneres no pueden seguir las referencias entre archivos es demasiado amplia para ser precisa. No es que las herramientas sean incapaces de la tarea, sino que su capacidad para hacerlo varía significativamente dependiendo de la herramienta específica y la complejidad de la conexión. Para los equipos que dependen de las herramientas que solo manejan los casos más simples, existe un riesgo real de que estén pasando por alto problemas de seguridad ocultos en el cableado más complejo de su código. Los investigadores concluyeron que, si bien las herramientas han progresado, la industria necesita ser más precisa sobre lo que cada herramienta puede y no puede ver. En lugar de asumir que una herramienta detectará cada error, los equipos deben comprender los límites específicos de su escáner elegido, especialmente cuando su código depende de capas profundas de conexiones. El estudio proporciona un mapa claro de estos límites, mostrando que, si bien los peligros más simples entre archivos son captados, los más profundos y complejos requieren una herramienta más capaz o un enfoque diferente para garantizar la seguridad.

¿Ahogado en artículos de tu campo?

Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.

Probar Digest →