2.3 KiB
Az - Container Instances
{{#include ../../../banners/hacktricks-training.md}}
Información Básica
Azure Container Instances (ACI) proporcionan una manera sin servidor y bajo demanda de ejecutar contenedores en la nube de Azure. Puedes desplegar uno o varios contenedores en un grupo con cómputo escalable, opciones de red y la flexibilidad de conectarte a otros servicios de Azure (como Almacenamiento, Redes Virtuales o Registros de Contenedores).
Dado que son cargas de trabajo efímeras, no necesitas gestionar la infraestructura subyacente de VM; Azure se encarga de eso por ti. Sin embargo, desde una perspectiva de seguridad ofensiva, es crucial entender cómo los permisos, identidades, configuraciones de red y registros pueden revelar superficies de ataque y posibles configuraciones incorrectas.
Configuraciones
- Para crear un contenedor, es posible usar una imagen pública, una imagen de contenedor de un Registro de Contenedores de Azure o un repositorio externo, lo que podría requerir configurar una contraseña para acceder a ella.
- En cuanto a la red, también puede tener una IP pública o ser puntos finales privados.
- También es posible configurar ajustes comunes de docker como:
- Variables de entorno
- Volúmenes (incluso de Azure Files)
- Puertos
- Límites de CPU y memoria
- Política de reinicio
- Ejecutar como privilegiado
- Línea de comando para ejecutar
- ...
Enumeración
Warning
Al enumerar ACI, puedes revelar configuraciones sensibles como variables de entorno, detalles de red o identidades gestionadas. Ten cuidado al registrarlas o mostrarlas.
# List all container instances in the subscription
az container list
# Show detailed information about a specific container instance
az container show --name <container-name> --resource-group <res-group>
# Fetch logs from a container
az container logs --name <container-name> --resource-group <res-group>
# Execute a command in a running container and get the output
az container exec --name <container-name> --resource-group <res-group> --exec-command "ls"
# Get yaml configuration of the container group
az container export --name <container-name> --resource-group <res-group>