Translated ['src/pentesting-ci-cd/terraform-security.md', 'src/pentestin

This commit is contained in:
Translator
2025-01-05 20:54:01 +00:00
parent 9c8defc861
commit b7de7fcbda
3 changed files with 18 additions and 18 deletions

View File

@@ -14,7 +14,7 @@ Para más información sobre dynamodb, consulta:
Desde marzo de 2024, AWS ofrece *políticas basadas en recursos* para DynamoDB ([AWS News](https://aws.amazon.com/about-aws/whats-new/2024/03/amazon-dynamodb-resource-based-policies/)).
Así que, si tienes el `dynamodb:PutResourcePolicy` para una tabla, puedes simplemente otorgarte a ti mismo o a cualquier otro principal acceso completo a la tabla.
Así que, si tienes el `dynamodb:PutResourcePolicy` para una tabla, puedes simplemente otorgarte a ti mismo o a cualquier otro principal acceso total a la tabla.
Otorgar el `dynamodb:PutResourcePolicy` a un principal aleatorio a menudo ocurre por accidente, si los administradores piensan que otorgar `dynamodb:Put*` solo permitiría al principal insertar elementos en la base de datos, o si otorgaron ese conjunto de permisos antes de marzo de 2024...
@@ -26,7 +26,7 @@ aws dynamodb get-resource-policy \
--query 'Policy' \
--output text > policy.json
```
Si no puedes recuperar la política actual, simplemente utiliza esta que otorga acceso total a la tabla a tu principal:
Si no puedes recuperar la política actual, simplemente usa esta que otorga acceso total sobre la tabla a tu principal:
```json
{
"Version": "2012-10-17",

View File

@@ -38,7 +38,7 @@ Y el secuestro es posible porque hay una **pequeña ventana de tiempo desde el m
![](<../../../images/image (174).png>)
El módulo de Pacu [`cfn__resouce_injection`](https://github.com/RhinoSecurityLabs/pacu/wiki/Module-Details#cfn__resource_injection) se puede utilizar para automatizar este ataque.\
El módulo de Pacu [`cfn__resouce_injection`](https://github.com/RhinoSecurityLabs/pacu/wiki/Module-Details#cfn__resource_injection) se puede usar para automatizar este ataque.\
Para más información, consulta la investigación original: [https://rhinosecuritylabs.com/aws/cloud-malware-cloudformation-injection/](https://rhinosecuritylabs.com/aws/cloud-malware-cloudformation-injection/)
### `s3:PutObject`, `s3:GetObject` <a href="#s3putobject-s3getobject" id="s3putobject-s3getobject"></a>
@@ -53,11 +53,11 @@ Estos son algunos ejemplos:
### `s3:PutObject`, `s3:GetObject` (opcional) sobre el archivo de estado de terraform
Es muy común que los archivos de estado de [terraform](https://cloud.hacktricks.wiki/en/pentesting-ci-cd/terraform-security.html) se guarden en el almacenamiento de blobs de los proveedores de la nube, por ejemplo, AWS S3. El sufijo del archivo para un archivo de estado es `.tfstate`, y los nombres de los buckets a menudo también indican que contienen archivos de estado de terraform. Por lo general, cada cuenta de AWS tiene un bucket de este tipo para almacenar los archivos de estado que muestran el estado de la cuenta.\
Además, generalmente, en cuentas del mundo real, casi siempre todos los desarrolladores tienen `s3:*` y a veces incluso los usuarios de negocios tienen `s3:Put*`.
Además, en cuentas del mundo real, casi siempre todos los desarrolladores tienen `s3:*` y a veces incluso los usuarios de negocios tienen `s3:Put*`.
Entonces, si tienes los permisos listados sobre estos archivos, hay un vector de ataque que te permite obtener RCE en la canalización con los privilegios de `terraform` - la mayoría de las veces `AdministratorAccess`, convirtiéndote en el administrador de la cuenta de la nube. Además, puedes usar ese vector para realizar un ataque de denegación de servicio haciendo que `terraform` elimine recursos legítimos.
Sigue la descripción en la sección *Abusing Terraform State Files* de la página *Terraform Security* para código de explotación directamente utilizable:
Sigue la descripción en la sección *Abusing Terraform State Files* de la página *Terraform Security* para obtener código de explotación directamente utilizable:
{{#ref}}
terraform-security.md#abusing-terraform-state-files