0Pricing
Cyber Security Academy · Lección

Explotación de configuraciones incorrectas de IAM

Escalada de privilegios en la nube.

Explotación de configuraciones incorrectas de IAM es una lección gratuita de Cyber Security Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cyber Security Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cyber Security Academy incluye 4 lecciones en total.

IAM como motor de escalada

En la nube, la escalada de privilegios normalmente consiste en abusar de los permisos de IAM, no en explotar errores de memoria. Si una identidad con pocos privilegios puede modificar políticas, crear claves o asumir roles, puede alcanzar permisos de administrador.

  • Los permisos que modifican IAM son intrínsecamente peligrosos.
  • Las rutas de escalada son lógica de políticas, no vulnerabilidades.
  • La solución es aplicar el mínimo privilegio, no instalar un parche.

Permisos peligrosos

Ciertas acciones de IAM permiten una escalada directa. Busque estas acciones en un principal que controle:

  • iam:CreateAccessKey sobre otro usuario.
  • iam:AttachUserPolicy / iam:PutUserPolicy (adjuntar AdministratorAccess).
  • iam:CreatePolicyVersion (reescribir una política existente).
  • iam:PassRole + un servicio de computación (ejecutar código con un rol privilegiado).
  • sts:AssumeRole con una política de confianza débil.

Escalada mediante adjuntos de políticas

Si su identidad puede adjuntarse políticas a sí misma, la escalada está a una llamada de distancia. Adjunta una política administrativa administrada y hereda todos los permisos.

# Attach AdministratorAccess to yourself
aws iam attach-user-policy \
  --user-name me \
  --policy-arn arn:aws:iam::aws:policy/AdministratorAccess

Abuso de PassRole

iam:PassRole permite asignar un rol a un servicio. Combinado con un servicio que ejecute su código (EC2, Lambda o Glue), puede ejecutar código con ese rol, aunque tenga muchos más privilegios que usted.

# Launch a Lambda that assumes a privileged role you can pass
aws lambda create-function --function-name esc \
  --role arn:aws:iam::111:role/AdminRole \
  --runtime python3.12 --handler h.run --zip-file fileb://code.zip

Reversión de versiones de políticas

iam:CreatePolicyVersion o SetDefaultPolicyVersion permite sustituir el documento activo de una política o volver a una versión anterior más permisiva, concediendo un acceso amplio sin modificar la pertenencia a grupos.

# Make a new, permissive default version of an existing policy
aws iam create-policy-version \
  --policy-arn arn:aws:iam::111:policy/devs \
  --policy-document file://admin.json --set-as-default

Abuso de políticas de confianza y AssumeRole

Las políticas de confianza de los roles definen quién puede asumirlos. Unas condiciones de confianza débiles permiten apropiarse de ellos.

  • Un rol que confíe en * o en una cuenta completa se puede asumir de forma generalizada.
  • Si puede editar la política de confianza de un rol, añádase como principal de confianza.
  • Confused deputy: faltan external IDs en los roles de integración de terceros.
# Assume a poorly-scoped role
aws sts assume-role \
  --role-arn arn:aws:iam::111:role/CrossAccountAdmin \
  --role-session-name pt

Equivalentes entre nubes

Los mismos patrones aparecen en distintos proveedores.

  • Azure: una asignación de rol User Access Administrator u Owner; abuso de Managed Identity; añadir credenciales a una entidad de servicio.
  • GCP: iam.serviceAccounts.actAs junto con un servicio de computación; setIamPolicy en un proyecto; creación de claves de cuentas de servicio.
# GCP: impersonate a privileged service account
gcloud compute instances create esc --service-account priv@proj.iam.gserviceaccount.com --scopes cloud-platform

Herramientas para descubrir rutas

En lugar de adivinar, utilice herramientas para revelar rutas de escalada viables desde su identidad actual.

# Pacu (AWS exploitation framework) escalation module
pacu
run iam__privesc_scan

# PMapper query for escalation
pmapper query 'preset privesc me'

Encadenamiento con el plano de control

La escalada suele encadenar el acceso al plano de datos con el control del plano de control.

  • Comprometa una VM y extraiga del servicio de metadatos sus credenciales del rol de instancia.
  • El rol de instancia tiene PassRole + Lambda, lo que permite ejecutar código con un rol de administrador.
  • Desde la cuenta de administrador, cree claves de acceso persistentes para actuar de forma sigilosa.

Cada enlace es un hallazgo independiente que merece documentarse.

Defensa de IAM

La prevención se centra en el mínimo privilegio y las medidas de protección.

  • Elimine los comodines y limite estrictamente las acciones y los recursos.
  • Utilice límites de permisos y SCP para establecer un máximo de privilegios.
  • Exija external IDs en los roles de terceros y limite las políticas de confianza.
  • Prefiera credenciales de rol de corta duración en lugar de claves de larga duración.
  • Utilice analizadores de acceso para marcar permisos arriesgados y sin uso.

Ejecución ética

La escalada de IAM puede conceder control sobre toda la cuenta. Deténgase en la prueba de concepto: demuestre la ruta sin crear puertas traseras persistentes ni modificar políticas de producción que no pueda revertir. Revierta siempre cualquier cambio en políticas o roles y elimine las claves que cree.

Coordine de antemano con el cliente los pasos disruptivos, como reescribir una política compartida.

Comprobación rápida

Confirme sus conocimientos sobre la escalada de IAM.

Resumen

Ha aprendido cómo las configuraciones incorrectas de IAM permiten escalar privilegios.

  • El adjunto de políticas, PassRole, la reversión de versiones y AssumeRole son rutas fundamentales.
  • Los mismos patrones se repiten en AWS, Azure y GCP.
  • Pacu y PMapper descubren automáticamente rutas viables.
  • El mínimo privilegio, los límites de permisos y los external IDs son las defensas.

A continuación: persistencia y movimiento lateral entre cuentas de la nube.

Preguntas frecuentes

¿La lección «Explotación de configuraciones incorrectas de IAM» es gratis?

Sí — el texto completo de «Explotación de configuraciones incorrectas de IAM» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cyber Security Academy, actualiza a CoddyKit PRO. El curso de Cyber Security Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Explotación de configuraciones incorrectas de IAM»?

Escalada de privilegios en la nube. Practicas Cyber Security Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Cyber Security Academy?

No se requiere experiencia previa. Cyber Security Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Explotación de configuraciones incorrectas de IAM»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Cyber Security Academy?

Sí. Cada lección de Cyber Security Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Superficie de ataque en la nube
  2. Enumeración de recursos en la nube
  3. Explotación de configuraciones incorrectas de IAM
  4. Persistencia y movimiento lateral
← Volver a Cyber Security Academy