AWS Goat: El cruce entre la ciberseguridad y la nube

La adopción de la nube significa que se necesita realizar configuraciones correctas de ciberseguridad para poder evitar contar con vulnerabilidades. Para ello, se requiere poder identificarlas de manera correcta.

El servicio AWS Goat permite realizar simulaciones de ataques dentro del entorno AWS, para así poder evaluar la seguridad de la infraestructura de la nube. Este servicio facilita entender las vulnerabilidades habituales de la nube, para que el equipo de ciberseguridad pueda proteger los datos y servicios críticos de la organización.

Realizado por Sofía Martínez | Marco Funes | Alam Pérez Aguiar | Emilio Ocejo

Titulación Cybersecurity Master

Tecnologías AWS Goat | GitHub | Terraform Apply | NMAP | BurpSuite | AWS CLI | OWASP ZAP | SSH


¿Cuál es la motivación?

La migración desde servidores on-premise a la nube significa que la seguridad ya no sólo se aplica al hardware y dispositivos que se tienen en la organización, sino ampliarla hacia el entorno en la nube elegido. El proveedor se encarga de parte de esa seguridad, pero los clientes también tienen su parte de responsabilidad. Para poder entender las debilidades de este tipo de entornos, se emplean servicios como AWS Goat, que permiten simular ataques y realizar un proceso de pentesting para identificar vulnerabilidades y estudiar las posibles soluciones.

Program aims

  • Identificar las configuraciones incorrectas y vulnerabilidades OWASP en la infraestructura de AWS Goat.
  • Analizar el impacto que las vulnerabilidades encontradas pueden tener en la infraestructura.
  • Proponer y validar soluciones para mitigar vulnerabilidades dentro del entorno de AWS.

Desarrollo

La nube aporta un nuevo elemento que debe ser configurado correctamente en términos de ciberseguridad. Para poder entender este nuevo entorno de la manera más adecuada posible, se ha realizado lo siguiente:

  • Recopilación de información: Para encontrar una vulnerabilidad, es crucial recoger toda la información posible sobre todo el entorno. Se realizaron escaneos de puertos y servicios, enumeraciones de buckets, usuarios y políticas, así como análisis de solicitudes HTTP.
  • Identificación de vulnerabilidades: Una vez se recopilaron los elementos necesarios, se pasó a obtener información detallada sobre los archivos identificados como sensibles. De manera paralela, también se trabajó con solicitudes, interceptándolas y modificándolas.
  • Explotación de vulnerabilidades: Las debilidades encontradas se transformaron en vectores de ataque, logrando accesos remotos a servidores, explotación de credenciales para crear usuarios y modificar políticas, y explotación de vulnerabilidades.

Resultados

Estudiar las vulnerabilidades permitió realizar diversos tipos de pruebas para testear la criticidad de dichas debilidades:

  • Inyección de código JavaScript en formularios de búsqueda para manipular sesiones y robar credenciales.
  • Inyección SQL en campos de entrada de usuario para lograr accesos no autorizados a datos críticos de usuarios.
  • Manipulación de solicitudes para acceder a archivos locales del servidor, que recogían credenciales de AWS, y enumerar usuarios en EC2, lo que facilitó realizar una escalada de privilegios.
  • Acceso a archivos de configuración, exponiendo claves públicas, credenciales de AWS y configuraciones críticas.
  • Manipulación de rutas de archivo para acceder a archivos internos que contienen claves y configuraciones.
  • Uso de credenciales obtenidas para crear usuarios IAM y modificar políticas con el fin de lograr permisos administrativos.

Conclusions

La auditoría llevada a cabo reveló múltiples vulnerabilidades críticas, especialmente en elementos relacionados con los controles de acceso, la exposición de datos sensibles y las inyecciones de código. Todo esto requirió una mitigación urgente, reforzando políticas de acceso y gestión de credenciales. Asimismo, se implementaros recomendaciones y controles estrictos, para finalizar con una revisión y monitoreo constante que garanticen la protección continua de los recursos en la nube.

arrow-right