Translated ['src/pentesting-ci-cd/ansible-tower-awx-automation-controlle

This commit is contained in:
Translator
2025-08-01 10:13:12 +00:00
parent f8dbb2c1ce
commit 57a4191058
47 changed files with 487 additions and 305 deletions

View File

@@ -4,7 +4,7 @@
## Macie
Per ulteriori informazioni su Macie, controlla:
Per ulteriori informazioni su Macie controlla:
{{#ref}}
../aws-services/aws-macie-enum.md
@@ -14,24 +14,25 @@ Per ulteriori informazioni su Macie, controlla:
AWS Macie è un servizio di sicurezza che rileva automaticamente dati sensibili all'interno degli ambienti AWS, come credenziali, informazioni personali identificabili (PII) e altri dati riservati. Quando Macie identifica una credenziale sensibile, come una chiave segreta AWS memorizzata in un bucket S3, genera un finding che consente al proprietario di visualizzare un "campione" dei dati rilevati. Tipicamente, una volta che il file sensibile è stato rimosso dal bucket S3, ci si aspetta che il segreto non possa più essere recuperato.
Tuttavia, è stato identificato un **bypass** in cui un attaccante con permessi sufficienti può **ri-caricare un file con lo stesso nome** ma contenente dati fittizi non sensibili. Questo fa sì che Macie associ il file appena caricato con il finding originale, consentendo all'attaccante di utilizzare la **funzione "Reveal Sample"** per estrarre il segreto precedentemente rilevato. Questo problema rappresenta un rischio significativo per la sicurezza, poiché i segreti che si presumevano eliminati rimangono recuperabili tramite questo metodo.
Tuttavia, è stato identificato un **bypass** in cui un attaccante con permessi sufficienti può **ri-caricare un file con lo stesso nome** ma contenente dati fittizi diversi e non sensibili. Questo fa sì che Macie associ il file appena caricato con il finding originale, consentendo all'attaccante di utilizzare la **funzione "Reveal Sample"** per estrarre il segreto precedentemente rilevato. Questo problema rappresenta un rischio significativo per la sicurezza, poiché i segreti che si presumevano eliminati rimangono recuperabili tramite questo metodo.
![flow](https://github.com/user-attachments/assets/7b83f2d3-1690-41f1-98cc-05ccd0154a66)
**Steps To Reproduce:**
1. Carica un file (ad es., `test-secret.txt`) in un bucket S3 con dati sensibili, come una chiave segreta AWS. Attendi che AWS Macie scansiona e genera un finding.
1. Carica un file (ad es., `test-secret.txt`) in un bucket S3 con dati sensibili, come una chiave segreta AWS. Aspetta che AWS Macie scansiona e genera un finding.
2. Naviga verso i Finding di AWS Macie, individua il finding generato e utilizza la funzione **Reveal Sample** per visualizzare il segreto rilevato.
2. Naviga verso i Findings di AWS Macie, individua il finding generato e utilizza la funzione **Reveal Sample** per visualizzare il segreto rilevato.
3. Elimina `test-secret.txt` dal bucket S3 e verifica che non esista più.
4. Crea un nuovo file chiamato `test-secret.txt` con dati fittizi e ri-caricalo nello stesso bucket S3 utilizzando **l'account dell'attaccante**.
5. Torna ai Finding di AWS Macie, accedi al finding originale e clicca di nuovo su **Reveal Sample**.
5. Torna ai Findings di AWS Macie, accedi al finding originale e clicca di nuovo su **Reveal Sample**.
6. Osserva che Macie rivela ancora il segreto originale, nonostante il file sia stato eliminato e sostituito con contenuti diversi **da account diversi, nel nostro caso sarà l'account dell'attaccante**.
**Summary:**
Questa vulnerabilità consente a un attaccante con permessi IAM AWS sufficienti di recuperare segreti precedentemente rilevati anche dopo che il file originale è stato eliminato da S3. Se una chiave segreta AWS, un token di accesso o un'altra credenziale sensibile viene esposta, un attaccante potrebbe sfruttare questo difetto per recuperarla e ottenere accesso non autorizzato alle risorse AWS. Questo potrebbe portare a un'escalation dei privilegi, accesso non autorizzato ai dati o ulteriore compromissione delle risorse cloud, con conseguenti violazioni dei dati e interruzioni del servizio.
{{#include ../../../banners/hacktricks-training.md}}

View File

@@ -1,8 +1,10 @@
# AWS - Sagemaker Privesc
{{#include ../../../banners/hacktricks-training.md}}
## AWS - Sagemaker Privesc
{{#include ../../../banners/hacktricks-training.md}}
### `iam:PassRole`, `sagemaker:CreateNotebookInstance`, `sagemaker:CreatePresignedNotebookInstanceUrl`
@@ -17,7 +19,7 @@ La risposta dovrebbe contenere un campo `NotebookInstanceArn`, che conterrà l'A
aws sagemaker create-presigned-notebook-instance-url \
--notebook-instance-name <name>
```
Naviga all'URL con il browser e clicca su \`Open JupyterLab\` in alto a destra, poi scorri verso il basso fino alla scheda “Launcher” e sotto la sezione “Other”, clicca sul pulsante “Terminal”.
Naviga all'URL con il browser e clicca su \`Open JupyterLab\` in alto a destra, poi scorri verso il basso alla scheda “Launcher” e sotto la sezione “Other”, clicca sul pulsante “Terminal”.
Ora è possibile accedere alle credenziali dei metadati del ruolo IAM.
@@ -29,11 +31,11 @@ Se ci sono **notebook Jupyter già in esecuzione** su di esso e puoi elencarli c
```bash
aws sagemaker create-presigned-notebook-instance-url --notebook-instance-name <name>
```
**Impatto Potenziale:** Privesc al ruolo di servizio sagemaker associato.
**Impatto Potenziale:** Privesc al ruolo di servizio sagemaker attaccato.
### `sagemaker:CreateProcessingJob,iam:PassRole`
Un attaccante con tali permessi può fare in modo che **sagemaker esegua un processingjob** con un ruolo sagemaker associato. L'attaccante può indicare la definizione del contenitore che verrà eseguito in un **istanza di account ECS gestita da AWS**, e **rubare le credenziali del ruolo IAM associato**.
Un attaccante con tali permessi può far **eseguire a sagemaker un processingjob** con un ruolo sagemaker attaccato. L'attaccante può indicare la definizione del contenitore che verrà eseguito in un **istanza di account ECS gestita da AWS**, e **rubare le credenziali del ruolo IAM attaccato**.
```bash
# I uploaded a python docker image to the ECR
aws sagemaker create-processing-job \

View File

@@ -1,5 +1,7 @@
# AWS - WorkDocs Privesc
{{#include ../../../banners/hacktricks-training.md}}
## WorkDocs
Per ulteriori informazioni su WorkDocs controlla:
@@ -15,7 +17,7 @@ Crea un utente all'interno della Directory indicata, quindi avrai accesso sia a
# Create user (created inside the AD)
aws workdocs create-user --username testingasd --given-name testingasd --surname testingasd --password <password> --email-address name@directory.domain --organization-id <directory-id>
```
### `workdocs:GetDocument`, `(workdocs:`DescribeActivities`)`
### `workdocs:GetDocument`, `(workdocs:DescribeActivities)`
I file potrebbero contenere informazioni sensibili, leggili:
```bash
@@ -39,8 +41,13 @@ aws workdocs add-resource-permissions --resource-id <id> --principals Id=anonymo
### `workdocs:AddUserToGroup`
Puoi rendere un utente amministratore impostandolo nel gruppo ZOCALO_ADMIN.\
Per farlo, segui le istruzioni di [https://docs.aws.amazon.com/workdocs/latest/adminguide/manage_set_admin.html](https://docs.aws.amazon.com/workdocs/latest/adminguide/manage_set_admin.html)
Per farlo, segui le istruzioni da [https://docs.aws.amazon.com/workdocs/latest/adminguide/manage_set_admin.html](https://docs.aws.amazon.com/workdocs/latest/adminguide/manage_set_admin.html)
Accedi con quell'utente in workdoc e accedi al pannello di amministrazione in `/workdocs/index.html#/admin`
Non ho trovato alcun modo per farlo dalla cli.
{{#include ../../../banners/hacktricks-training.md}}