> For the complete documentation index, see [llms.txt](https://books.spartan-cybersec.com/cpna/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://books.spartan-cybersec.com/cpna/introduccion-a-s3/enumeracion-manual-con-awscli.md).

# Enumeracion manual con AWSCLI

{% hint style="danger" %}
¿Crees tener lo que se necesita para ser un experto en Pentesting contra AWS? Si nuestro libro te abrió los ojos a las posibilidades de la ciberseguridad ofensiva o si ya cuentas con habilidades en este campo, es momento de subir de nivel. Te retamos a certificarte en el [CPNA - Curso Profesional de Pentesting Contra AWS](https://spartan-cybersec.com/cursos/pentesting-contra-la-nube-de-aws/). No será fácil: te enfrentarás a un examen riguroso de 12 horas donde deberás hackear una infraestructura completa alojada en AWS. ¿Listo para el desafío? Acepta el reto y demuestra tu verdadero potencial.
{% endhint %}

Al comenzar las pruebas post-autenticación, es fundamental ejecutar una serie de comandos detallados para obtener una comprensión profunda de la infraestructura vinculada al servicio Amazon S3. Estos comandos nos permitirán identificar y analizar los recursos almacenados, facilitando una evaluación precisa de la seguridad de los datos. A continuación, presentamos una secuencia optimizada de comandos para la enumeración y análisis de buckets en S3:

## <mark style="color:orange;">**Enumeración de Buckets en S3**</mark><mark style="color:orange;">:</mark>

Para obtener un listado de todos los buckets disponibles bajo la cuenta actual:

```bash
kali@gerh> aws s3 ls
2023-07-16 21:33:22 aws-cloudtrail-logs-583318501385-3f3b5d5d
2024-02-09 20:09:46 cf-templates-r6qrlzy22wha-us-east-1
2023-11-30 18:22:43 cg-secret-s3-bucket-ec2-ssrf-cgidltafj6nd95
2024-01-21 13:23:30 cpna-bucket-120240121182328869100000002
2023-04-28 09:18:02 cpna-spartan-public
2023-07-15 16:17:19 iamcheckers3-c6pwqdrng2yiwh7ar5zt
2023-07-15 16:17:18 iamcheckers3-g55cecrmaok7r7ldqtrm
2023-07-15 16:17:20 iamcheckers3-kq5t1wsm2o9fcl547lzf
```

## <mark style="color:orange;">**Exploración Detallada de un Bucket Específico**</mark><mark style="color:orange;">:</mark>

Para examinar el contenido dentro de un bucket específico, `spartan-cpna-public` en este caso:

```bash
kali@gerh> aws s3 ls s3://cpna-spartan-public/
2023-10-10 22:17:04        185 assumerolepolicy.json
2023-04-28 09:21:46      72561 backup.csv
2023-04-28 09:20:42      38616 nc.exe
2024-03-05 17:05:33         11 nc2.exe
2023-10-10 22:17:05        283 politica-bucket.json
```

Si se desea realizar una exploración más profunda y listar todos los archivos y subdirectorios de manera recursiva dentro del bucket `spartan-cpna-public` :

```bash
kali@gerh> aws s3 ls s3://cpna-spartan-public/ --recursive
2024-03-06 18:49:14          0 Importante/
2024-03-06 18:50:07      17128 Importante/LICENSE.txt
2024-03-06 18:50:07        976 Importante/README.txt
2024-03-06 18:50:09      29063 Importante/assets/css/font-awesome.min.css
2024-03-06 18:50:09       1351 Importante/assets/css/ie8.css
2024-03-06 18:50:15       6310 Importante/assets/css/images/bg01.png
2024-03-06 18:50:16       3535 Importante/assets/css/images/bg02.png
2024-03-06 18:50:10      50574 Importante/assets/css/main.css
2024-03-06 18:50:12     124988 Importante/assets/fonts/FontAwesome.otf
2024-03-06 18:50:10      76518 Importante/assets/fonts/fontawesome-webfont.eot
2024-03-06 18:50:11     391622 Importante/assets/fonts/fontawesome-webfont.svg
2024-03-06 18:50:11     152796 Importante/assets/fonts/fontawesome-webfont.ttf
2024-03-06 18:50:12      90412 Importante/assets/fonts/fontawesome-webfont.woff
2024-03-06 18:50:12      71896 Importante/assets/fonts/fontawesome-webfont.woff2
2024-03-06 18:50:17      41041 Importante/assets/js/ie/PIE.htc
2024-03-06 18:50:16       2380 Importante/assets/js/ie/html5shiv.js
2024-03-06 18:50:17       4591 Importante/assets/js/ie/respond.min.js
2024-03-06 18:50:13      95957 Importante/assets/js/jquery.min.js
2024-03-06 18:50:13       2063 Importante/assets/js/main.js
2024-03-06 18:50:14       9085 Importante/assets/js/skel.min.js
2024-03-06 18:50:14      12433 Importante/assets/js/util.js
2024-03-06 18:50:15       1633 Importante/assets/sass/ie8.scss
2024-03-06 18:50:03        787 Importante/assets/sass/libs/_functions.scss
2024-03-06 18:50:04       9329 Importante/assets/sass/libs/_mixins.scss
2024-03-06 18:50:05      16511 Importante/assets/sass/libs/_skel.scss
2024-03-06 18:50:05        234 Importante/assets/sass/libs/_vars.scss
2024-03-06 18:50:15      24298 Importante/assets/sass/main.scss
2024-03-06 18:50:08      10561 Importante/images/pic01.jpg
2024-03-06 18:50:08      12357 Importante/images/pic02.jpg
2024-03-06 18:50:06       9162 Importante/index.html
2023-10-10 22:17:04        185 assumerolepolicy.json
2023-04-28 09:21:46      72561 backup.csv
2023-04-28 09:20:42      38616 nc.exe
2024-03-05 17:05:33         11 nc2.exe
2023-10-10 22:17:05        283 politica-bucket.json
```

Para enfocar la enumeración en un directorio específico dentro del bucket, por ejemplo, un directorio llamado `Importante`:

```bash
kali@gerh> aws s3 ls s3://cpna-spartan-public/Importante/
                           PRE assets/
                           PRE images/
2024-03-06 18:49:14          0
2024-03-06 18:50:07      17128 LICENSE.txt
2024-03-06 18:50:07        976 README.txt
2024-03-06 18:50:06       9162 index.html
```

## <mark style="color:orange;">**Descarga de Datos Sensibles**</mark><mark style="color:orange;">:</mark>

En el contexto de pruebas de penetración y con el objetivo de evaluar la seguridad de los datos críticos, podría ser instructivo descargar archivos específicos para un análisis más detallado. Por ejemplo, descargar un archivo denominado `README.pdf` del directorio `Importante/README.txt`:

```bash
kali@gerh> aws s3 cp s3://cpna-spartan-public/Importante/README.txt ./
download: s3://cpna-spartan-public/Importante/README.txt to .\README.txt
kali@gerh> cat .\README.txt
Hello Cyber-Spartan
```

## <mark style="color:orange;">Subida de Archivos a un Bucket de S3</mark>

**Subir un Archivo Individual**: Para subir un archivo específico al bucket de S3, se utiliza el comando `aws s3 cp`. Por ejemplo, para subir el archivo `Ejemplo.txt` al bucket `spartan-cpna-public`:

```bash
kali@gerh> aws s3 cp .\ejemplo.txt s3://cpna-spartan-public/
upload: .\ejemplo.txt to s3://cpna-spartan-public/ejemplo.txt
```
