mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-30 06:30:35 -08:00
Translated ['src/pentesting-cloud/azure-security/az-services/az-serviceb
This commit is contained in:
@@ -4,19 +4,20 @@
|
||||
|
||||
## Service Bus
|
||||
|
||||
Azure Service Bus è un **servizio di messaggistica** basato su cloud progettato per abilitare una **comunicazione affidabile tra diverse parti di un'applicazione o applicazioni separate**. Funziona come un intermediario sicuro, garantendo che i messaggi vengano consegnati in modo sicuro, anche se il mittente e il destinatario non operano simultaneamente. Decoupling dei sistemi consente alle applicazioni di lavorare in modo indipendente pur continuando a scambiare dati o istruzioni. È particolarmente utile per scenari che richiedono bilanciamento del carico tra più lavoratori, consegna affidabile dei messaggi o coordinamento complesso, come l'elaborazione di compiti in ordine o la gestione sicura dell'accesso.
|
||||
Azure Service Bus è un **servizio di messaggistica** basato su cloud progettato per abilitare una **comunicazione affidabile tra diverse parti di un'applicazione o applicazioni separate**. Funziona come un intermediario sicuro, garantendo che i messaggi vengano consegnati in modo sicuro, anche se il mittente e il destinatario non operano simultaneamente. Decoupling dei sistemi consente alle applicazioni di lavorare in modo indipendente pur continuando a scambiare dati o istruzioni. È particolarmente utile per scenari che richiedono bilanciamento del carico tra più lavoratori, consegna affidabile dei messaggi o coordinamento complesso, come l'elaborazione di compiti in ordine o la gestione sicura degli accessi.
|
||||
|
||||
### Key Concepts
|
||||
|
||||
1. **Namespaces:** Un namespace nei sistemi di messaggistica è un contenitore logico che organizza e gestisce i componenti di messaggistica, le code e gli argomenti. Fornisce un ambiente isolato in cui le applicazioni possono inviare, ricevere e elaborare messaggi. Le code e gli argomenti condividono la stessa infrastruttura e configurazione all'interno di un namespace di Service Bus, ma operano in modo indipendente senza interagire tra loro.
|
||||
2. **Queues:** il suo scopo è memorizzare i messaggi fino a quando il destinatario non è pronto.
|
||||
- I messaggi sono ordinati, timestampati e memorizzati in modo durevole.
|
||||
- Consegnati in modalità pull (recupero su richiesta).
|
||||
- I messaggi sono ordinati, timestamped e memorizzati in modo durevole.
|
||||
- Consegnati in modalità pull (recupero su richiesta) a un consumatore.
|
||||
- Può essere configurato in modo che quando il messaggio viene condiviso venga automaticamente eliminato o in modalità “Peek lock” in cui il consumatore deve riconoscere che può essere eliminato. In caso contrario, il messaggio tornerà nella coda.
|
||||
- Supporta la comunicazione punto a punto.
|
||||
3. **Topics:** Messaggistica publish-subscribe per la trasmissione.
|
||||
- Più sottoscrizioni indipendenti ricevono copie dei messaggi.
|
||||
- Ogni sottoscrizione è come una coda all'interno dell'argomento.
|
||||
- Le sottoscrizioni possono avere regole/filtri per controllare la consegna o aggiungere metadati.
|
||||
- Supporta la comunicazione molti-a-molti.
|
||||
|
||||
La stringa di connessione/endpoint del service bus è:
|
||||
```bash
|
||||
@@ -31,34 +32,34 @@ Alcune funzioni avanzate sono:
|
||||
- **Dead-Lettering**: Cattura messaggi non consegnabili per la revisione.
|
||||
- **Scheduled Delivery**: Ritarda l'elaborazione dei messaggi per compiti futuri.
|
||||
- **Message Deferral**: Rimanda il recupero dei messaggi fino a quando non è pronto.
|
||||
- **Transactions**: Raggruppa operazioni in esecuzione atomica.
|
||||
- **Filters & Actions**: Applica regole per filtrare o annotare messaggi.
|
||||
- **Transactions**: Raggruppa le operazioni in esecuzione atomica.
|
||||
- **Filters & Actions**: Applica regole per filtrare o annotare i messaggi.
|
||||
- **Auto-Delete on Idle**: Elimina le code dopo inattività (min: 5 minuti).
|
||||
- **Duplicate Detection**: Rimuove messaggi duplicati durante i reinvii.
|
||||
- **Batch Deletion**: Elimina in blocco messaggi scaduti o non necessari.
|
||||
|
||||
### Authorization-Rule / SAS Policy
|
||||
### Autenticazione Locale
|
||||
|
||||
Le SAS Policies definiscono i permessi di accesso per le entità del namespace di Azure Service Bus (la più importante), code e argomenti. Ogni policy ha i seguenti componenti:
|
||||
Il parametro **`--disable-local-auth`** di az cli viene utilizzato per controllare se l'**autenticazione locale** (che consente l'uso di chiavi Shared Access Signature (SAS)) è abilitata per il tuo namespace di Service Bus.
|
||||
|
||||
- Quando disable è impostato su **true**: L'autenticazione locale utilizzando le chiavi SAS è disabilitata e l'autenticazione con Entrad ID è consentita.
|
||||
- Quando disable è impostato su **false (predefinito)**: Sia l'autenticazione locale SAS che l'autenticazione con Entra ID sono disponibili e puoi utilizzare le stringhe di connessione con le chiavi SAS per accedere alle risorse del tuo Service Bus.
|
||||
|
||||
### Regola di Autorizzazione / Politica SAS
|
||||
|
||||
Le Politiche SAS definiscono i permessi di accesso per le entità del namespace di Azure Service Bus (la più importante), code e argomenti. Ogni politica ha i seguenti componenti:
|
||||
|
||||
- **Permissions**: Caselle di controllo per specificare i livelli di accesso:
|
||||
- Manage: Concede il pieno controllo sull'entità, inclusa la gestione della configurazione e dei permessi.
|
||||
- Send: Consente l'invio di messaggi all'entità.
|
||||
- Send: Consente di inviare messaggi all'entità.
|
||||
- Listen: Consente di ricevere messaggi dall'entità.
|
||||
- **Primary and Secondary Keys**: Questi sono chiavi crittografiche utilizzate per generare token sicuri per autenticare l'accesso.
|
||||
- **Primary and Secondary Keys**: Queste sono chiavi crittografiche utilizzate per generare token sicuri per autenticare l'accesso.
|
||||
- **Primary and Secondary Connection Strings**: Stringhe di connessione preconfigurate che includono l'endpoint e la chiave per un uso facile nelle applicazioni.
|
||||
- **SAS Policy ARM ID**: Il percorso di Azure Resource Manager (ARM) per la policy per identificazione programmatica.
|
||||
- **SAS Policy ARM ID**: Il percorso di Azure Resource Manager (ARM) per la politica per identificazione programmatica.
|
||||
|
||||
È importante notare che un namespace ha una singola SAS policy che influisce su ogni entità al suo interno, mentre code e argomenti possono avere le proprie SAS policies individuali per un controllo più granulare.
|
||||
È importante notare che un namespace ha una singola politica SAS che influisce su ogni entità al suo interno, mentre code e argomenti possono avere le proprie politiche SAS individuali per un controllo più granulare.
|
||||
|
||||
### "--disable-local-auth"
|
||||
|
||||
Il parametro --disable-local-auth viene utilizzato per controllare se l'autenticazione locale (cioè l'uso delle chiavi Shared Access Signature (SAS)) è abilitata per il tuo namespace di Service Bus. Ecco cosa devi sapere:
|
||||
|
||||
- Quando impostato su true: L'autenticazione locale utilizzando le chiavi SAS è disabilitata e l'autenticazione di Azure Active Directory (Azure AD) è consentita.
|
||||
- Quando impostato su false: Sia l'autenticazione SAS (locale) che l'autenticazione Azure AD sono disponibili e puoi utilizzare stringhe di connessione con chiavi SAS per accedere alle risorse del tuo Service Bus.
|
||||
|
||||
### Enumeration
|
||||
### Enumerazione
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="az cli" }}
|
||||
@@ -142,6 +143,7 @@ Get-AzServiceBusTopic -ResourceGroupName <ResourceGroupName> -NamespaceName <Nam
|
||||
{{#endtab }}
|
||||
{{#endtabs }}
|
||||
|
||||
|
||||
### Escalation dei privilegi
|
||||
|
||||
{{#ref}}
|
||||
|
||||
Reference in New Issue
Block a user