La infraestructura como código (IaC) está revolucionando la cara de la infraestructura de TI moderna, haciéndola más segura, rentable y eficiente en cuanto a rendimiento.
Como resultado, la adopción de la tecnología IaC está aumentando rápidamente en el espacio industrial. Las organizaciones han empezado a ampliar su capacidad de aprovisionamiento y despliegue de entornos en la nube. Han atracado tecnologías como Terraform, plantillas de Azure Resource Manager, plantillas de AWS Cloud Formation, OpenFaaS YML, etc.
Antes, montar una infraestructura requería apilar servidores tangibles, centros de datos para alojar el hardware, configurar las conexiones de red y demás. Pero ahora, todo esto es posible con tendencias como la computación en nube, donde los procesos llevan menos tiempo.
La IaC es uno de los componentes clave de esta tendencia creciente, y entendemos de qué se trata.
Entrar en la IaC
La infraestructura como servicio (IaC) utiliza la codificación descriptiva de alta gama para automatizar el aprovisionamiento de la infraestructura informática. Con esta automatización, los desarrolladores ya no necesitan gestionar y ejecutar manualmente servidores, conexiones a bases de datos, sistemas operativos, almacenamiento y muchos otros elementos mientras desarrollan, despliegan o prueban software.
La automatización de la infraestructura se ha convertido en algo esencial para las empresas hoy en día, ya que les permite desplegar un gran número de aplicaciones con bastante frecuencia.
La razón: acelerar los procesos empresariales, reducir los riesgos, controlar los costes, reforzar la seguridad y responder eficazmente a las nuevas amenazas de la competencia. IaC es, de hecho, una práctica DevOps indispensable para fomentar un ciclo de vida de entrega de aplicaciones rápido al permitir que los equipos construyan y versionen la infraestructura de software con eficacia.
Sin embargo, al ser la IaC tan robusta, tiene una enorme responsabilidad a la hora de gestionar los riesgos de seguridad.
Según TechRepublic, los investigadores de DivvyCloud descubrieron que las violaciones de datos debidas a una mala configuración de la nube costaron 5 billones de dólares en 2018-19.
Por lo tanto, no seguir las mejores prácticas podría conducir a lagunas de seguridad como entornos en la nube comprometidos, lo que daría lugar a problemas como:
Exposiciones de red
Las prácticas de IaC inseguras podrían preparar el terreno para ataques en línea. Ejemplos de algunas configuraciones erróneas de IaC son SSH de acceso público, servicios de almacenamiento en la nube, bases de datos accesibles desde Internet, configuración de algunos grupos de seguridad abiertos, etc.
Configuración a la deriva
Aunque sus desarrolladores sigan las mejores prácticas de IaC, su equipo de operaciones puede verse obligado a cambiar la configuración en el entorno de producción directamente debido a algunas emergencias. Pero la infraestructura nunca debe modificarse después de desplegarla porque rompe la inmutabilidad de la infraestructura en la nube.
Escaladas de privilegios no autorizadas
Las organizaciones utilizan IaC para ejecutar entornos en la nube que pueden incluir contenedores de software, microservicios y Kubernetes. Los desarrolladores utilizan algunas cuentas privilegiadas para ejecutar aplicaciones en la nube y otro software, lo que introduce riesgos de escalada privilegiada.
Violaciones del cumplimiento
Los recursos no etiquetados creados mediante IaC pueden dar lugar a recursos fantasma, lo que provoca problemas a la hora de visualizar, detectar y lograr la exposición dentro del entorno real de la nube. Como resultado, pueden producirse desviaciones en la postura de la nube que pueden pasar desapercibidas durante largos periodos y pueden dar lugar a violaciones del cumplimiento.
Entonces, ¿cuál es la solución?
Bueno, tiene que asegurarse de que no se deja piedra sin remover al adoptar el IaC, para que no abra la puerta a posibles amenazas. Desarrolle las mejores prácticas de IaC para mitigar estos problemas y utilizar plenamente la tecnología.
Una forma de conseguirlo es utilizar un escáner de seguridad eficaz para encontrar y solucionar los errores de configuración de la nube y otras lagunas de seguridad.
¿Por qué escanear la IaC en busca de vulnerabilidades?
Un escáner sigue un proceso automatizado para explorar diferentes elementos de un dispositivo, aplicación o red en busca de posibles fallos de seguridad. Para asegurarse de que todo es sencillo, debe realizar escaneos regulares.
Ventajas:
Mayor seguridad
Una herramienta de escaneado decente utiliza las últimas prácticas de seguridad para mitigar, abordar y solucionar las amenazas en línea. De este modo, los datos de su empresa y de sus clientes estarán protegidos.
Seguridad de la reputación
Cuando los datos confidenciales de una organización son robados y pasan a manos equivocadas, pueden causar enormes daños a la reputación.
Supervisión del cumplimiento
Todas sus prácticas organizativas deben cumplir la normativa para seguir dirigiendo su empresa. Las lagunas de seguridad pueden comprometerla y arrastrar a una empresa a circunstancias graves.
Así que, sin más preámbulos, descubrimos algunas de las mejores herramientas de escaneado para comprobar las vulnerabilidades de IaC.
Checkov
Diga no a las desconfiguraciones en la nube utilizando Checkov.
Sirve para analizar códigos estáticos en busca de IaC. Para detectar desconfiguraciones en la nube, escanea su infraestructura en la nube, que se gestiona en Kubernetes, Terraform y Cloudformation.
Checkov es un software basado en Python. Por lo tanto, la escritura, la gestión, los códigos y el control de versiones se simplifican. Las políticas integradas de Checkov cubren las mejores prácticas de conformidad y seguridad para Google Cloud, Azure y AWS.

Compruebe su IaC en Checkov y obtenga salidas en diferentes formatos, incluyendo JSON, JUnit XML, o CLI. Puede manejar variables de forma eficaz construyendo un gráfico que muestre la dependencia dinámica del código.
Además, facilita la supresión en línea de todos los riesgos aceptados.
Checkov es de código abierto y fácil de usar siguiendo estos pasos:
- Instale Checkov desde PyPI utilizando pip
- Seleccione una carpeta que contenga archivos Cloudformation o Terraform como entrada
- Ejecutar el escaneo
- Exporte el resultado a la impresión CLI con codificación por colores
- Integre el resultado a sus pipelines CI/CD
TFLint
Un linter de Terraform - TFLint se centra en la comprobación de posibles errores y proporciona las mejores prácticas de seguridad.
Aunque Terraform es una herramienta increíble para CI/CD, puede que no valide los problemas específicos de los proveedores. Aquí es cuando TFLint le resulta útil. Obtenga la última versión de esta herramienta para su arquitectura en la nube para resolver estos problemas.
Para instalar TFLint, utilice
- Chocolatey para Windows
- Homebrew para macOS
- TFLint a través de Docker
TFLint también es compatible con varios proveedores a través de plugins como AWS, Google Cloud y Microsoft Azure.
Terrafirma
Terrafirma es otra herramienta de análisis estático de código utilizada para los planes Terraform. Está diseñada para detectar errores de configuración de seguridad.
Terrafirma proporciona la salida en tfjson en lugar de JSON. Para instalarlo, puede utilizar virtualenv y wheels.
Accurics
Con Accurics, tiene grandes posibilidades de proteger su infraestructura en la nube de configuraciones erróneas, posibles violaciones de datos y violaciones de políticas.
Para ello, Accurics realiza un escaneado de código para Kubernetes YAML, Terraform, OpenFaaS YAML y Dockerfile. De este modo, puede detectar los problemas antes de que puedan obstaculizarle de algún modo y poner remedio a su infraestructura en la nube.
Al ejecutar estas comprobaciones, Accurics se asegura de que no haya desviaciones en la configuración de la infraestructura. Proteja toda la pila de la nube, incluidos los contenedores de software, las plataformas, la infraestructura y los servidores. Prepare para el futuro su ciclo de vida DevOps aplicando la conformidad, la seguridad y la gobernanza.
Elimine la deriva detectando los cambios en su infraestructura aprovisionada, que pueden crear una deriva de postura. Obtenga visibilidad de toda la pila en tiempo real, definida a través del código en toda su infraestructura, y actualice los códigos para restaurar la nube o reflejar cambios auténticos.
También puede notificar a sus desarrolladores acerca de un problema mediante la integración con herramientas de flujo de trabajo eficientes como Slack, webhooks, correo electrónico, JIRA y Splunk. También es compatible con herramientas DevOps, como GitHub, Jenkins y otras.
Puede utilizar Accurics en forma de solución en la nube. Alternativamente, puede descargar su versión autoalojada en función de los requisitos de su organización.
También puede probar su Terrascan de código abierto, que es capaz de escanear Terraform contra 500 políticas de seguridad.
CloudSploit
Mitigue los riesgos de seguridad escaneando las plantillas Cloudformation en cuestión de segundos utilizando CloudSploit. Puede escanear más de 95 vulnerabilidades de seguridad en 40 tipos de recursos consistentes en una amplia gama de productos de AWS.
Puede detectar los riesgos de manera eficiente e implementar características de seguridad antes de lanzar su infraestructura en la nube. CloudSploit ofrece escaneos basados en plugins en los que puede añadir comprobaciones de seguridad al añadir recursos por parte de AWS a Cloudformation.

CloudSploit también proporciona acceso a la API para su comodidad. Además, dispone de una función de arrastrar y soltar o pegar una plantilla para recibir los resultados en cuestión de segundos. Cuando cargue una plantilla en el escáner, éste comparará la configuración de cada recurso con valores no identificados y obtendrá el resultado: advertencia, aprobado o suspenso.
Además, puede hacer clic en cada resultado para ver el recurso afectado.
Trivy
Trivy, una herramienta de escaneado de seguridad que se actualiza regularmente, se centra en proporcionar una cobertura completa en la detección de vulnerabilidades. Publica nuevas versiones cada mes dirigidas a varios sistemas operativos y lenguajes de programación, abarcando diferentes versiones y fuentes de vulnerabilidades.
Se trata de un excepcional escáner de seguridad de código abierto todo en uno y es conocido por su fiabilidad, velocidad e interfaz fácil de usar. Esta potente herramienta permite identificar sin esfuerzo vulnerabilidades, desconfiguraciones de IaC, descubrimiento de SBOM, escaneado en la nube, etc.
Trivy amplía sus capacidades incorporando la posibilidad de escanear configuraciones de Infraestructura como Código (IaC). Identifica eficazmente las configuraciones erróneas comunes en herramientas populares de IaC como Terraform, CloudFormation, Docker, Kubernetes y otros archivos de configuración, mejorando así la seguridad de estos valiosos recursos.
Es una solución versátil de escaneado multicontenedor sin dependencias externas. Escanea imágenes locales y remotas, funciona con múltiples motores de contenedores y es compatible con imágenes archivadas/extraídas y sistemas de archivos sin procesar, así como con repositorios git.
Además, es portátil: se ejecuta en cualquier sistema operativo o arquitectura de CPU de forma rápida y eficaz, lo que hace que los tiempos de escaneado iniciales sean eficientes a la vez que proporciona escaneados rápidos recurrentes.
Conclusión
La infraestructura como código está recibiendo un buen bombo en la industria. Y por qué no, ha traído cambios significativos en la infraestructura de TI, haciéndola más fuerte y mejor. Sin embargo, si no practica la IaC con precaución, puede dar lugar a lagunas de seguridad. Pero no se preocupe; emplee estas herramientas para escanear la IaC en busca de vulnerabilidades.
¿Quiere aprender Terraform? Eche un vistazo a este curso en línea.
-
Durga Prasad Acharya es una escritora técnica freelance a la que le encanta escribir sobre tecnologías emergentes, como IA y ML, ciberseguridad, alojamiento web, SaaS, computación en nube y mucho más. Además de escribir, es diseñador web y le apasiona... Seguir leyendo