# Az - Queue Storage Post Exploitation

{{#include ../../../banners/hacktricks-training.md}}

## Queue

Pour plus d'informations, consultez :

{{#ref}}
../az-services/az-queue-enum.md
{{#endref}}

### DataActions : `Microsoft.Storage/storageAccounts/queueServices/queues/messages/read`

Un attaquant ayant cette permission peut consulter les messages d'une Azure Storage Queue. Cela permet à l'attaquant de voir le contenu des messages sans les marquer comme traités ou modifier leur état. Cela pourrait conduire à un accès non autorisé à des informations sensibles, permettant l'exfiltration de données ou la collecte de renseignements pour de futures attaques.
```bash
az storage message peek --queue-name <queue_name> --account-name <storage_account>
```
**Impact potentiel** : Accès non autorisé à la file d'attente, exposition de messages ou manipulation de la file d'attente par des utilisateurs ou services non autorisés.

### DataActions : `Microsoft.Storage/storageAccounts/queueServices/queues/messages/process/action`

Avec cette autorisation, un attaquant peut récupérer et traiter des messages d'une Azure Storage Queue. Cela signifie qu'il peut lire le contenu des messages et les marquer comme traités, les cachant ainsi des systèmes légitimes. Cela pourrait entraîner l'exposition de données sensibles, des perturbations dans la gestion des messages, ou même l'arrêt de flux de travail importants en rendant les messages indisponibles pour leurs utilisateurs prévus.
```bash
az storage message get --queue-name <queue_name> --account-name <storage_account>
```
### DataActions: `Microsoft.Storage/storageAccounts/queueServices/queues/messages/add/action`

Avec cette autorisation, un attaquant peut ajouter de nouveaux messages à une Azure Storage Queue. Cela leur permet d'injecter des données malveillantes ou non autorisées dans la file d'attente, ce qui peut déclencher des actions non intentionnelles ou perturber les services en aval qui traitent les messages.
```bash
az storage message put --queue-name <queue-name> --content "Injected malicious message" --account-name <storage-account>
```
### DataActions: `Microsoft.Storage/storageAccounts/queueServices/queues/messages/write`

Cette autorisation permet à un attaquant d'ajouter de nouveaux messages ou de mettre à jour ceux existants dans une Azure Storage Queue. En utilisant cela, ils pourraient insérer du contenu nuisible ou modifier des messages existants, induisant potentiellement en erreur des applications ou provoquant des comportements indésirables dans des systèmes qui dépendent de la queue.
```bash
az storage message put --queue-name <queue-name> --content "Injected malicious message" --account-name <storage-account>

#Update the message
az storage message update --queue-name <queue-name> \
--id <message-id> \
--pop-receipt <pop-receipt> \
--content "Updated message content" \
--visibility-timeout <timeout-in-seconds> \
--account-name <storage-account>
```
### Actions: `Microsoft.Storage/storageAccounts/queueServices/queues/delete`

Cette autorisation permet à un attaquant de supprimer des files d'attente au sein du compte de stockage. En tirant parti de cette capacité, un attaquant peut supprimer définitivement des files d'attente et tous leurs messages associés, provoquant des perturbations significatives dans les flux de travail et entraînant une perte de données critique pour les applications qui dépendent des files d'attente affectées. Cette action peut également être utilisée pour saboter des services en supprimant des composants essentiels du système.
```bash
az storage queue delete --name <queue-name> --account-name <storage-account>
```
### DataActions: `Microsoft.Storage/storageAccounts/queueServices/queues/messages/delete`

Avec cette autorisation, un attaquant peut effacer tous les messages d'une Azure Storage Queue. Cette action supprime tous les messages, perturbant les flux de travail et provoquant une perte de données pour les systèmes dépendants de la queue.
```bash
az storage message clear --queue-name <queue-name> --account-name <storage-account>
```
### Actions: `Microsoft.Storage/storageAccounts/queueServices/queues/write`

Cette permission permet à un attaquant de créer ou de modifier des files d'attente et leurs propriétés au sein du compte de stockage. Elle peut être utilisée pour créer des files d'attente non autorisées, modifier des métadonnées ou changer des listes de contrôle d'accès (ACL) pour accorder ou restreindre l'accès. Cette capacité pourrait perturber les flux de travail, injecter des données malveillantes, exfiltrer des informations sensibles ou manipuler les paramètres de la file d'attente pour permettre d'autres attaques.
```bash
az storage queue create --name <new-queue-name> --account-name <storage-account>

az storage queue metadata update --name <queue-name> --metadata key1=value1 key2=value2 --account-name <storage-account>

az storage queue policy set --name <queue-name> --permissions rwd --expiry 2024-12-31T23:59:59Z --account-name <storage-account>
```
## Références

- https://learn.microsoft.com/en-us/azure/storage/queues/storage-powershell-how-to-use-queues
- https://learn.microsoft.com/en-us/rest/api/storageservices/queue-service-rest-api
- https://learn.microsoft.com/en-us/azure/storage/queues/queues-auth-abac-attributes

{{#include ../../../banners/hacktricks-training.md}}
