AWS - S3 Post Exploitation

Apoya a HackTricks

S3

Para más información consulta:

Información Sensible

A veces podrás encontrar información sensible legible en los buckets. Por ejemplo, secretos del estado de terraform.

Pivotar

Diferentes plataformas podrían estar usando S3 para almacenar activos sensibles. Por ejemplo, airflow podría estar almacenando código de DAGs allí, o páginas web podrían ser servidas directamente desde S3. Un atacante con permisos de escritura podría modificar el código del bucket para pivotar a otras plataformas, o tomar el control de cuentas modificando archivos JS.

Ransomware en S3

En este escenario, el atacante crea una clave KMS (Key Management Service) en su propia cuenta de AWS o en otra cuenta comprometida. Luego hace que esta clave sea accesible para cualquier persona en el mundo, permitiendo a cualquier usuario, rol o cuenta de AWS cifrar objetos usando esta clave. Sin embargo, los objetos no pueden ser descifrados.

El atacante identifica un bucket S3 y obtiene acceso a nivel de escritura a él utilizando varios métodos. Esto podría deberse a una mala configuración del bucket que lo expone públicamente o a que el atacante obtiene acceso al entorno de AWS. El atacante generalmente apunta a buckets que contienen información sensible como información de identificación personal (PII), información de salud protegida (PHI), registros, copias de seguridad, y más.

Para determinar si el bucket puede ser objetivo de ransomware, el atacante verifica su configuración. Esto incluye verificar si S3 Object Versioning está habilitado y si la eliminación de autenticación multifactor (MFA delete) está habilitada. Si la versión de objetos no está habilitada, el atacante puede proceder. Si la versión de objetos está habilitada pero la eliminación MFA está deshabilitada, el atacante puede deshabilitar la versión de objetos. Si tanto la versión de objetos como la eliminación MFA están habilitadas, se vuelve más difícil para el atacante realizar ransomware en ese bucket específico.

Usando la API de AWS, el atacante reemplaza cada objeto en el bucket con una copia cifrada usando su clave KMS. Esto cifra efectivamente los datos en el bucket, haciéndolos inaccesibles sin la clave.

Para añadir más presión, el atacante programa la eliminación de la clave KMS utilizada en el ataque. Esto le da al objetivo una ventana de 7 días para recuperar sus datos antes de que la clave sea eliminada y los datos se pierdan permanentemente.

Finalmente, el atacante podría subir un archivo final, generalmente llamado "ransom-note.txt," que contiene instrucciones para el objetivo sobre cómo recuperar sus archivos. Este archivo se sube sin cifrado, probablemente para captar la atención del objetivo y hacerle consciente del ataque de ransomware.

Para más información consulta la investigación original.

Apoya a HackTricks

Last updated