Translated ['src/pentesting-cloud/azure-security/az-privilege-escalation

This commit is contained in:
Translator
2025-02-15 03:25:18 +00:00
parent 88a2988bd0
commit e999b513da
2 changed files with 98 additions and 31 deletions

View File

@@ -10,9 +10,81 @@ Vir meer inligting, kyk:
../az-services/az-servicebus-enum.md
{{#endref}}
### Stuur Berigte. Aksie: `Microsoft.ServiceBus/namespaces/authorizationRules/listkeys/action` OF `Microsoft.ServiceBus/namespaces/authorizationRules/regenerateKeys/action`
### Microsoft.ServiceBus/namespaces/authorizationrules/listKeys/action OF Microsoft.ServiceBus/namespaces/authorizationrules/regenerateKeys/action
Jy kan die `PrimaryConnectionString` verkry, wat as 'n geloofsbrief vir die Service Bus-namespace optree. Met hierdie verbindingsstring kan jy ten volle autentiseer as die Service Bus-namespace, wat jou in staat stel om boodskappe na enige wachtrij of onderwerp te stuur en moontlik met die stelsel te kommunikeer op maniere wat operasies kan ontwrig, geldige gebruikers kan naboots, of kwaadwillige data in die boodskapwerkvloei kan inspuit.
Hierdie toestemmings laat jou toe om die sleutels vir plaaslike magtigingsreëls binne 'n Service Bus-namespace te verkry of te hergenerer. Deur hierdie sleutels te gebruik, is dit moontlik om as die Service Bus-namespace te autentiseer, wat jou in staat stel om boodskappe na enige wachtrij of onderwerp te stuur, boodskappe van enige wachtrij of subskripsie te ontvang, of moontlik met die stelsel te interaksie op maniere wat operasies kan ontwrig, geldige gebruikers kan naboots, of kwaadwillige data in die boodskapwerkvloei kan inspuit.
Let daarop dat die **`RootManageSharedAccessKey`-reël standaard volle beheer** oor die Service Bus-namespace het en dit deur die `az` cli gebruik word, egter kan daar ander reëls met ander sleutelwaardes bestaan.
```bash
# List keys
az servicebus namespace authorization-rule keys list --resource-group <res-group> --namespace-name <namespace-name> --authorization-rule-name RootManageSharedAccessKey [--authorization-rule-name RootManageSharedAccessKey]
# Regenerate keys
az servicebus namespace authorization-rule keys renew --key [PrimaryKey|SecondaryKey] --resource-group <res-group> --namespace-name <namespace-name> [--authorization-rule-name RootManageSharedAccessKey]
```
### Microsoft.ServiceBus/namespaces/AuthorizationRules/write
Met hierdie toestemming is dit moontlik om 'n **nuwe magtigingsreël** te **skep** met alle toestemmings en sy eie sleutels met:
```bash
az servicebus namespace authorization-rule create --authorization-rule-name "myRule" --namespace-name mynamespacespdemo --resource-group Resource_Group_1 --rights Manage Listen Send
```
>[!WARNING]
>Hierdie opdrag antwoord nie met die sleutels nie, so jy moet dit met die vorige opdragte (en toestemmings) kry om voorregte te verhoog.
Boonop, met daardie opdrag (en `Microsoft.ServiceBus/namespaces/authorizationRules/read`) as jy hierdie aksie deur die Azure CLI uitvoer, is dit moontlik om 'n bestaande magtigingsreël op te dateer en dit meer toestemmings te gee (in die geval dit tekortkom) met die volgende opdrag:
```bash
az servicebus namespace authorization-rule update \
--resource-group <MyResourceGroup> \
--namespace-name <MyNamespace> \
--name RootManageSharedAccessKey \
--rights Manage Listen Send
```
### Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/ListKeys/action OF Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/regenerateKeys/action
Spesifieke onderwerpe en rye binne 'n Service Bus-namespace kan hul eie magtigingsreëls hê, wat gebruik kan word om toegang tot die entiteit te beheer. Deur hierdie toestemmings te hê, kan jy **die sleutels vir hierdie plaaslike magtigingsreëls onttrek of hergenerer**, wat jou in staat stel om as die entiteit te verifieer en moontlik boodskappe te stuur of te ontvang, inskrywings te bestuur, of met die stelsel te kommunikeer op maniere wat operasies kan ontwrig, geldige gebruikers kan naboots, of kwaadwillige data in die boodskapwerkvloei kan inspuit.
```bash
# List keys (topics)
az servicebus topic authorization-rule keys list --resource-group <res-group> --namespace-name <namespace-name> --topic-name <topic-name> --name <auth-rule-name>
# Regenerate keys (topics)
az servicebus topic authorization-rule keys renew --key [PrimaryKey|SecondaryKey] --resource-group <res-group> --namespace-name <namespace-name> --topic-name <topic-name> --name <auth-rule-name>
# List keys (queues)
az servicebus queue authorization-rule keys list --resource-group <res-group> --namespace-name <namespace-name> --queue-name <queue-name> --name <auth-rule-name>
# Regenerate keys (queues)
az servicebus queue authorization-rule keys renew --key [PrimaryKey|SecondaryKey] --resource-group <res-group> --namespace-name <namespace-name> --queue-name <queue-name> --name <auth-rule-name>
```
### Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/write
Met hierdie toestemming is dit moontlik om 'n **nuwe magtigingsreël** te **skep** met alle toestemmings en sy eie sleutels met:
```bash
# In a topic
az servicebus topic authorization-rule create --resource-group <res-group> --namespace-name <namespace-name> --topic-name <topic-name> --name <auth-rule-name> --rights Manage Listen Send
# In a queue
az servicebus queue authorization-rule create --resource-group <res-group> --namespace-name <namespace-name> --queue-name <queue-name> --name <auth-rule-name> --rights Manage Listen Send
```
>[!WARNING]
>Hierdie opdrag antwoord nie met die sleutels nie, so jy moet dit met die vorige opdragte (en toestemmings) kry om voorregte te verhoog.
Boonop, met daardie opdrag (en `Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/read`) as jy hierdie aksie deur die Azure CLI uitvoer, is dit moontlik om 'n bestaande magtigingsreël op te dateer en dit meer toestemmings te gee (in die geval dit tekortkom) met die volgende opdrag:
```bash
# In a topic
az servicebus topic authorization-rule update --resource-group <res-group> --namespace-name <namespace-name> --topic-name <topic-name> --name <auth-rule-name> --rights Manage Listen Send
# In a queue
az servicebus queue authorization-rule update --resource-group <res-group> --namespace-name <namespace-name> --queue-name <queue-name> --name <auth-rule-name> --rights Manage Listen Send
```
### Microsoft.ServiceBus/namespaces/write (& Microsoft.ServiceBus/namespaces/read indien az cli gebruik word)
Met hierdie toestemmings **kan 'n aanvaller "lokale outentisering" heraktiveer** met die volgende opdrag en daarom sal al die sleutels van gedeelde beleide werk.
```bash
az servicebus namespace update --disable-local-auth false -n <namespace-name> --resource-group <res-group>
```
### Stuur Berigte met sleutels (Microsoft.ServiceBus/namespaces/authorizationRules/listkeys/action OF Microsoft.ServiceBus/namespaces/authorizationRules/regenerateKeys/action)
Jy kan die `PrimaryConnectionString` verkry, wat as 'n geloofsbrief vir die Service Bus-namespace optree. Met hierdie verbindingsstring kan jy ten volle autentiseer as die Service Bus-namespace, wat jou in staat stel om berigte na enige wachtrij of onderwerp te stuur en moontlik met die stelsel te kommunikeer op maniere wat operasies kan ontwrig, geldige gebruikers kan naboots, of kwaadwillige data in die boodskapwerkvloei kan inspuit.
```python
#You need to install the following libraries
#pip install azure-servicebus
@@ -81,9 +153,9 @@ print("Messages Sent")
print("----------------------------")
```
### Ontvang Berigte. Aksie: `Microsoft.ServiceBus/namespaces/authorizationRules/listkeys/action` OF `Microsoft.ServiceBus/namespaces/authorizationRules/regenerateKeys/action`
### Ontvang met sleutels (Microsoft.ServiceBus/namespaces/authorizationRules/listkeys/action OF Microsoft.ServiceBus/namespaces/authorizationRules/regenerateKeys/action)
Jy kan die PrimaryConnectionString verkry, wat as 'n geloofsbrief vir die Service Bus-namespace dien. Met hierdie verbindingsstring kan jy berigte ontvang van enige wachtrij of subskripsie binne die namespace, wat toegang tot potensieel sensitiewe of kritieke data moontlik maak, data-uitvloeiing moontlik maak, of inmeng met boodskapverwerking en toepassingswerkvloei.
Jy kan die PrimaryConnectionString verkry, wat as 'n geloofsbrief vir die Service Bus-namespace dien. Deur hierdie verbindingsstring te gebruik, kan jy boodskappe van enige wachtrij of subskripsie binne die namespace ontvang, wat toegang tot potensieel sensitiewe of kritieke data moontlik maak, data-uitvloeiing moontlik maak, of inmeng met boodskapverwerking en toepassingswerkvloei.
```python
#You need to install the following libraries
#pip install azure-servicebus
@@ -127,16 +199,6 @@ asyncio.run(receive_and_process_messages())
print("Message Receiving Completed")
print("----------------------------")
```
### `Microsoft.ServiceBus/namespaces/authorizationRules/read` & `Microsoft.ServiceBus/namespaces/authorizationRules/write`
As jy hierdie toestemmings het, kan jy voorregte opgradeer deur gedeelde toegang sleutels te lees of te skep. Hierdie sleutels stel volle beheer oor die Service Bus naamruimte in, insluitend die bestuur van rye, onderwerpe, en die stuur/ontvang van boodskappe, wat moontlik rolgebaseerde toegangbeheer (RBAC) kan omseil.
```bash
az servicebus namespace authorization-rule update \
--resource-group <MyResourceGroup> \
--namespace-name <MyNamespace> \
--name RootManageSharedAccessKey \
--rights Manage Listen Send
```
## Verwysings
- https://learn.microsoft.com/en-us/azure/storage/queues/storage-powershell-how-to-use-queues

View File

@@ -16,20 +16,20 @@ Azure Service Bus is 'n wolk-gebaseerde **boodskapdiens** wat ontwerp is om betr
- Meerdere onafhanklike intekeninge ontvang kopieë van boodskappe.
- Intekeninge kan reëls/filters hê om aflewering te beheer of metadata by te voeg.
- Ondersteun baie-tot-baie kommunikasie.
3. **Namespaces:** 'n Houer vir alle boodskapkomponente, queues en topics, is soos jou eie skyfie van 'n kragtige Azure-kluster, wat toegewyde kapasiteit bied en opsioneel oor drie beskikbaarheidsgebiede strek.
3. **Namespaces:** 'n houer vir alle boodskapkomponente, queues en topics, is soos jou eie skyfie van 'n kragtige Azure-kluster, wat toegewyde kapasiteit bied en opsioneel oor drie beskikbaarheidsgebiede strek.
### Gevorderde Kenmerke
Sommige gevorderde kenmerke is:
- **Boodskap Sessies**: Verseker FIFO-verwerking en ondersteun versoek-antwoorde patrone.
- **Outo-Voorwaartse**: Oordra boodskappe tussen queues of topics in dieselfde namespace.
- **Outomatiese Oorgang**: Oordra boodskappe tussen queues of topics in dieselfde namespace.
- **Doodbrief**: Vang onaflewerbare boodskappe vir hersiening.
- **Geskeduleerde Aflewering**: Vertraag boodskapverwerking vir toekomstige take.
- **Boodskap Uitstel**: Stel boodskapophaling uit totdat gereed.
- **Boodskap Uitstel**: Stel boodskaponttrekking uit totdat gereed.
- **Transaksies**: Groepeer operasies in atomiese uitvoering.
- **Filters & Aksies**: Pas reëls toe om boodskappe te filter of te annoteren.
- **Outo-Verwydering op Inaktiwiteit**: Verwyder queues na inaktiwiteit (min: 5 minute).
- **Outomatiese Verwydering by Inaktiwiteit**: Verwyder queues na inaktiwiteit (min: 5 minute).
- **Dubbele Opsporing**: Verwyder dubbele boodskappe tydens herstuur.
- **Batch Verwydering**: Grootskaalse verwydering van vervalde of onnodige boodskappe.
@@ -54,18 +54,6 @@ sku, magtigingreël,
{{#tabs }}
{{#tab name="az cli" }}
```bash
# Queue Enumeration
az servicebus queue list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
az servicebus queue show --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --name <MyQueue>
# Topic Enumeration
az servicebus topic list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
az servicebus topic show --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --name <MyTopic>
# Susbscription Enumeration
az servicebus topic subscription list --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --topic-name <MyTopic>
az servicebus topic subscription show --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --topic-name <MyTopic> --name <MySubscription>
# Namespace Enumeration
az servicebus namespace list
az servicebus namespace network-rule-set list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
@@ -79,6 +67,23 @@ az servicebus namespace authorization-rule list --resource-group <MyResourceGrou
az servicebus queue authorization-rule list --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --queue-name <MyQueue>
az servicebus topic authorization-rule list --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --topic-name <MyTopic>
az servicebus namespace authorization-rule keys list --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --name <MyAuthRule>
# Get keys
az servicebus namespace authorization-rule keys list --resource-group <res-group> --namespace-name <namespace-name> [--authorization-rule-name RootManageSharedAccessKey]
az servicebus topic authorization-rule keys list --resource-group <res-group> --namespace-name <namespace-name> --topic-name <topic-name> --name <auth-rule-name>
az servicebus queue authorization-rule keys list --resource-group <res-group> --namespace-name <namespace-name> --queue-name <topic-name> --name <auth-rule-name>
# Queue Enumeration
az servicebus queue list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
az servicebus queue show --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --name <MyQueue>
# Topic Enumeration
az servicebus topic list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
az servicebus topic show --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --name <MyTopic>
# Susbscription Enumeration
az servicebus topic subscription list --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --topic-name <MyTopic>
az servicebus topic subscription show --resource-group <MyResourceGroup> --namespace-name <MyNamespace> --topic-name <MyTopic> --name <MySubscription>
```
{{#endtab }}
@@ -141,7 +146,7 @@ Get-AzServiceBusTopic -ResourceGroupName <ResourceGroupName> -NamespaceName <Nam
../az-post-exploitation/az-servicebus-post-exploitation.md
{{#endref}}
## References
## Verwysings
- [https://learn.microsoft.com/en-us/powershell/module/az.servicebus/?view=azps-13.0.0](https://learn.microsoft.com/en-us/powershell/module/az.servicebus/?view=azps-13.0.0)
- [https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-messaging-overview](https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-messaging-overview)