RCE sobre Lambda
Lab: Custom
A continuación, se expone un caso de explotación sobre un entorno serverless totalmente cloud
El desarrollo de este ejercicio puede llegar a consumir recursos económicos dentro de las cuentas de AWS.
Sea el siguiente código lambda vulnerable:
Después, crear una función lambda desde AWS y configurar el API Gateway, al finalizar AWS retorna una URL endpoint del estilo
someRandomName.execute-api.region.amazonaws.com/test/
Como se lee en el código, espera un parámetro "cmd" dentro de la URL y de este parámetro leerá un comando:
Las funciones lambda son serverless y trabajan bajo un entorno linux de un contenedor.
Al identificar la ejecución de comandos es recomendable ejecutar env
para visualizar las variables de entorno:
Normalmente, estas variables contienen las cadenas de credenciales relacionadas a un Rol de ejecución de una función, ya que lambda asume un rol para la ejecución del programa. Con estos datos, el siguiente paso es autenticarse y configurar el perfil en AWS CLI
En este punto como auditores, se procede a realizar una enumeración
Se recomienda el uso de las herramientas listadas en el apartado de enumeración automatizada de IAM del este blog.
Última actualización