From 09d737f24488cec1c02b40571669ce75c0b97e78 Mon Sep 17 00:00:00 2001 From: Translator Date: Thu, 20 Feb 2025 00:54:57 +0000 Subject: [PATCH] Translated ['src/pentesting-cloud/azure-security/az-persistence/az-queue --- src/SUMMARY.md | 5 ++-- .../az-persistence/az-queue-persistance.md | 2 +- .../az-persistence/az-sql-persistance.md | 20 ++++++++++++++ .../az-queue-post-exploitation.md | 6 ++--- .../az-servicebus-post-exploitation.md | 6 ++--- .../az-queue-privesc.md | 4 +-- .../az-servicebus-privesc.md | 23 +++++++++------- .../{az-queue-enum.md => az-queue.md} | 4 +-- ...az-servicebus-enum.md => az-servicebus.md} | 10 +++---- .../azure-security/az-services/az-sql.md | 27 +++++++++++-------- 10 files changed, 69 insertions(+), 38 deletions(-) create mode 100644 src/pentesting-cloud/azure-security/az-persistence/az-sql-persistance.md rename src/pentesting-cloud/azure-security/az-services/{az-queue-enum.md => az-queue.md} (96%) rename src/pentesting-cloud/azure-security/az-services/{az-servicebus-enum.md => az-servicebus.md} (96%) diff --git a/src/SUMMARY.md b/src/SUMMARY.md index 227605b06..11d60f589 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -425,8 +425,8 @@ - [Az - Management Groups, Subscriptions & Resource Groups](pentesting-cloud/azure-security/az-services/az-management-groups-subscriptions-and-resource-groups.md) - [Az - MySQL](pentesting-cloud/azure-security/az-services/az-mysql.md) - [Az - PostgreSQL](pentesting-cloud/azure-security/az-services/az-postgresql.md) - - [Az - Queue Storage](pentesting-cloud/azure-security/az-services/az-queue-enum.md) - - [Az - Service Bus](pentesting-cloud/azure-security/az-services/az-servicebus-enum.md) + - [Az - Queue Storage](pentesting-cloud/azure-security/az-services/az-queue.md) + - [Az - Service Bus](pentesting-cloud/azure-security/az-services/az-servicebus.md) - [Az - SQL](pentesting-cloud/azure-security/az-services/az-sql.md) - [Az - Static Web Applications](pentesting-cloud/azure-security/az-services/az-static-web-apps.md) - [Az - Storage Accounts & Blobs](pentesting-cloud/azure-security/az-services/az-storage.md) @@ -489,6 +489,7 @@ - [Az - Persistence](pentesting-cloud/azure-security/az-persistence/README.md) - [Az - Automation Accounts Persistence](pentesting-cloud/azure-security/az-persistence/az-automation-accounts-persistence.md) - [Az - Cloud Shell Persistence](pentesting-cloud/azure-security/az-persistence/az-cloud-shell-persistence.md) + - [Az - Queue SQL Persistence](pentesting-cloud/azure-security/az-persistence/az-sql-persistance.md) - [Az - Queue Storage Persistence](pentesting-cloud/azure-security/az-persistence/az-queue-persistance.md) - [Az - VMs Persistence](pentesting-cloud/azure-security/az-persistence/az-vms-persistence.md) - [Az - Storage Persistence](pentesting-cloud/azure-security/az-persistence/az-storage-persistence.md) diff --git a/src/pentesting-cloud/azure-security/az-persistence/az-queue-persistance.md b/src/pentesting-cloud/azure-security/az-persistence/az-queue-persistance.md index c33952425..a1b5dad51 100644 --- a/src/pentesting-cloud/azure-security/az-persistence/az-queue-persistance.md +++ b/src/pentesting-cloud/azure-security/az-persistence/az-queue-persistance.md @@ -7,7 +7,7 @@ Za više informacija proverite: {{#ref}} -../az-services/az-queue-enum.md +../az-services/az-queue.md {{#endref}} ### Actions: `Microsoft.Storage/storageAccounts/queueServices/queues/write` diff --git a/src/pentesting-cloud/azure-security/az-persistence/az-sql-persistance.md b/src/pentesting-cloud/azure-security/az-persistence/az-sql-persistance.md new file mode 100644 index 000000000..ca07772d5 --- /dev/null +++ b/src/pentesting-cloud/azure-security/az-persistence/az-sql-persistance.md @@ -0,0 +1,20 @@ +# Az - SQL Persistence + +{{#include ../../../banners/hacktricks-training.md}} + +## SQL + +Za više informacija pogledajte: + +{{#ref}} +../az-services/az-sql.md +{{#endref}} + +### Uobičajene Tehnike Održavanja + +- Kompromitujte SQL akreditive ili kreirajte SQL korisnika (omogućite SQL autentifikaciju ako je potrebno) +- Dodelite kompromitovanog korisnika kao administratora Entra ID (omogućite Entra ID autentifikaciju ako je potrebno) +- Backdoor u VM (ako se koristi SQL VM) +- Kreirajte FW pravilo za održavanje pristupa SQL bazi podataka + +{{#include ../../../banners/hacktricks-training.md}} diff --git a/src/pentesting-cloud/azure-security/az-post-exploitation/az-queue-post-exploitation.md b/src/pentesting-cloud/azure-security/az-post-exploitation/az-queue-post-exploitation.md index 8c5ab073a..cae93fbf3 100644 --- a/src/pentesting-cloud/azure-security/az-post-exploitation/az-queue-post-exploitation.md +++ b/src/pentesting-cloud/azure-security/az-post-exploitation/az-queue-post-exploitation.md @@ -7,12 +7,12 @@ Za više informacija pogledajte: {{#ref}} -../az-services/az-queue-enum.md +../az-services/az-queue.md {{#endref}} ### DataActions: `Microsoft.Storage/storageAccounts/queueServices/queues/messages/read` -Napadač sa ovom dozvolom može da pogleda poruke iz Azure Storage Queue. Ovo omogućava napadaču da vidi sadržaj poruka bez označavanja kao obrađenih ili menjanja njihovog stanja. To može dovesti do neovlašćenog pristupa osetljivim informacijama, omogućavajući eksfiltraciju podataka ili prikupljanje obaveštajnih podataka za dalja napada. +Napadač sa ovom dozvolom može da pregleda poruke iz Azure Storage Queue. Ovo omogućava napadaču da vidi sadržaj poruka bez označavanja kao obrađenih ili menjanja njihovog stanja. To može dovesti do neovlašćenog pristupa osetljivim informacijama, omogućavajući eksfiltraciju podataka ili prikupljanje obaveštajnih podataka za dalja napada. ```bash az storage message peek --queue-name --account-name ``` @@ -20,7 +20,7 @@ az storage message peek --queue-name --account-name --account-name ``` diff --git a/src/pentesting-cloud/azure-security/az-post-exploitation/az-servicebus-post-exploitation.md b/src/pentesting-cloud/azure-security/az-post-exploitation/az-servicebus-post-exploitation.md index b04a8ff87..07cb8d5fa 100644 --- a/src/pentesting-cloud/azure-security/az-post-exploitation/az-servicebus-post-exploitation.md +++ b/src/pentesting-cloud/azure-security/az-post-exploitation/az-servicebus-post-exploitation.md @@ -4,10 +4,10 @@ ## Service Bus -Za više informacija pogledajte: +Za više informacija proverite: {{#ref}} -../az-services/az-servicebus-enum.md +../az-services/az-servicebus.md {{#endref}} ### Akcije: `Microsoft.ServiceBus/namespaces/Delete` @@ -24,7 +24,7 @@ az servicebus topic delete --resource-group --namespace-name ``` ### Actions: `Microsoft.ServiceBus/namespaces/queues/Delete` -Napadač sa ovom dozvolom može da obriše Azure Service Bus red. Ova akcija uklanja red i sve poruke unutar njega, što može dovesti do gubitka kritičnih podataka i ometanja sistema i radnih tokova koji zavise od reda. +Napadač sa ovom dozvolom može obrisati Azure Service Bus red. Ova akcija uklanja red i sve poruke unutar njega, što može dovesti do gubitka kritičnih podataka i ometanja sistema i radnih tokova koji zavise od reda. ```bash az servicebus queue delete --resource-group --namespace-name --name ``` diff --git a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-queue-privesc.md b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-queue-privesc.md index 75fdd9f74..b567c4c12 100644 --- a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-queue-privesc.md +++ b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-queue-privesc.md @@ -7,7 +7,7 @@ Za više informacija pogledajte: {{#ref}} -../az-services/az-queue-enum.md +../az-services/az-queue.md {{#endref}} ### DataActions: `Microsoft.Storage/storageAccounts/queueServices/queues/messages/read` @@ -26,7 +26,7 @@ az storage message get --queue-name --account-name --content "Injected malicious message" --account-name ``` diff --git a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-servicebus-privesc.md b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-servicebus-privesc.md index 46deb8170..c5d7bfa7c 100644 --- a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-servicebus-privesc.md +++ b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-servicebus-privesc.md @@ -4,17 +4,17 @@ ## Service Bus -Za više informacija proverite: +Za više informacija pogledajte: {{#ref}} -../az-services/az-servicebus-enum.md +../az-services/az-servicebus.md {{#endref}} ### Microsoft.ServiceBus/namespaces/authorizationrules/listKeys/action OR Microsoft.ServiceBus/namespaces/authorizationrules/regenerateKeys/action -Ove dozvole vam omogućavaju da dobijete ili regenerišete ključeve za lokalna pravila autorizacije unutar Service Bus imenskog prostora. Korišćenjem ovih ključeva moguće je autentifikovati se kao Service Bus imenski prostor, omogućavajući vam da šaljete poruke u bilo koju red ili temu, primate poruke iz bilo koje redne ili pretplate, ili potencijalno interagujete sa sistemom na načine koji bi mogli ometati operacije, predstavljati validne korisnike ili ubrizgavati zlonamerne podatke u tok poruka. +Ove dozvole vam omogućavaju da dobijete ili regenerišete ključeve za lokalna pravila autorizacije unutar Service Bus imenskog prostora. Korišćenjem ovih ključeva moguće je autentifikovati se kao Service Bus imenski prostor, omogućavajući vam da šaljete poruke u bilo koju red ili temu, primate poruke iz bilo koje redne ili pretplatničke usluge, ili potencijalno interagujete sa sistemom na načine koji bi mogli ometati operacije, predstavljati validne korisnike ili ubrizgavati maliciozne podatke u tok poruka. -Imajte na umu da po defaultu **`RootManageSharedAccessKey` pravilo ima potpunu kontrolu** nad Service Bus imenskim prostorom i koristi se od strane `az` cli, međutim, mogu postojati i druga pravila sa drugim vrednostima ključeva. +Imajte na umu da po defaultu **`RootManageSharedAccessKey` pravilo ima punu kontrolu** nad Service Bus imenskim prostorom i koristi se od strane `az` cli, međutim, mogu postojati i druga pravila sa drugim vrednostima ključeva. ```bash # List keys az servicebus namespace authorization-rule keys list --resource-group --namespace-name --authorization-rule-name RootManageSharedAccessKey [--authorization-rule-name RootManageSharedAccessKey] @@ -82,13 +82,14 @@ Sa ovim dozvolama **napadač može ponovo omogućiti "lokalnu autentifikaciju"** ```bash az servicebus namespace update --disable-local-auth false -n --resource-group ``` -### Send Messages with keys (Microsoft.ServiceBus/namespaces/authorizationRules/listkeys/action OR Microsoft.ServiceBus/namespaces/authorizationRules/regenerateKeys/action) +### Send Messages with keys (Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/ListKeys/action OR Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/regenerateKeys/action) -Možete preuzeti `PrimaryConnectionString`, koji deluje kao akreditiv za Service Bus namespace. Sa ovom konekcionom stringom, možete se potpuno autentifikovati kao Service Bus namespace, omogućavajući vam da šaljete poruke bilo kojoj redu ili temi i potencijalno komunicirate sa sistemom na načine koji bi mogli ometati operacije, predstavljati validne korisnike ili ubrizgavati zlonamerne podatke u tok poruka. Ova metoda funkcioniše ako je `--disable-local-auth` postavljeno na false. +Možete preuzeti `PrimaryConnectionString`, koji deluje kao akreditiv za Service Bus namespace. Sa ovom konekcionom stringom, možete se potpuno autentifikovati kao Service Bus namespace, omogućavajući vam da šaljete poruke bilo kojoj redu ili temi i potencijalno interagujete sa sistemom na načine koji bi mogli ometati operacije, predstavljati validne korisnike ili ubrizgavati zlonamerne podatke u tok poruka. Ova metoda funkcioniše ako je `--disable-local-auth` postavljeno na false (tako da je lokalna autentifikacija omogućena). ```python import asyncio from azure.servicebus.aio import ServiceBusClient from azure.servicebus import ServiceBusMessage +# pip install azure-servicebus NAMESPACE_CONNECTION_STR = "" TOPIC_OR_QUEUE_NAME = "" @@ -129,12 +130,13 @@ az rest --method post \ --body "" ``` -### Receive with keys (Microsoft.ServiceBus/namespaces/authorizationRules/listkeys/action OR Microsoft.ServiceBus/namespaces/authorizationRules/regenerateKeys/action) +### Receive with keys (Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/ListKeys/action OR Microsoft.ServiceBus/namespaces/[queues|topics]/authorizationRules/regenerateKeys/action) Možete preuzeti PrimaryConnectionString, koji služi kao akreditiv za Service Bus namespace. Koristeći ovaj konekcioni string, možete primati poruke iz bilo koje queue ili subscription unutar namespace-a, omogućavajući pristup potencijalno osetljivim ili kritičnim podacima, omogućavajući exfiltraciju podataka ili ometajući obradu poruka i radne tokove aplikacija. Ova metoda funkcioniše ako je `--disable-local-auth` postavljeno na false. ```python import asyncio from azure.servicebus.aio import ServiceBusClient +# pip install azure-servicebus CONN_STR = "" QUEUE = "" @@ -216,7 +218,7 @@ az rest --method get \ --uri "https://.servicebus.windows.net//subscriptions//messages?timeout=60&PreviousSequenceNumber=&api-version=2017-04" \ --headers "Authorization=SharedAccessSignature sr=&sig=&se=&skn=" ``` -### Send Messages. DataActions: `Microsoft.ServiceBus/namespaces/messages/send/action` +### Pošaljite poruke. DataActions: `Microsoft.ServiceBus/namespaces/messages/send/action` Možete koristiti ova prava za slanje poruka, čak i ako je `--disable-local-auth` postavljeno na true. ```python @@ -224,13 +226,15 @@ import asyncio from azure.identity.aio import DefaultAzureCredential from azure.servicebus.aio import ServiceBusClient from azure.servicebus import ServiceBusMessage +# pip install azure-servicebus NS = ".servicebus.windows.net" # Your namespace -QUEUE_OR_TOPIC = "" # Your queue name +QUEUE_OR_TOPIC = "" # Your queue name async def run(): credential = DefaultAzureCredential() async with ServiceBusClient(fully_qualified_namespace=NS, credential=credential) as client: +#async with client.get_topic_sender(topic_name=TOPIC) as sender: # Use this to send the message to a topic async with client.get_queue_sender(queue_name=QUEUE) as sender: await sender.send_messages(ServiceBusMessage("Single Message")) print("Sent a single message") @@ -246,6 +250,7 @@ Možete koristiti ova prava za prijem poruka, čak i ako je `--disable-local-aut import asyncio from azure.identity.aio import DefaultAzureCredential from azure.servicebus.aio import ServiceBusClient +# pip install azure-servicebus NS = ".servicebus.windows.net" QUEUE = "" diff --git a/src/pentesting-cloud/azure-security/az-services/az-queue-enum.md b/src/pentesting-cloud/azure-security/az-services/az-queue.md similarity index 96% rename from src/pentesting-cloud/azure-security/az-services/az-queue-enum.md rename to src/pentesting-cloud/azure-security/az-services/az-queue.md index fc19f9f7a..7675b02b4 100644 --- a/src/pentesting-cloud/azure-security/az-services/az-queue-enum.md +++ b/src/pentesting-cloud/azure-security/az-services/az-queue.md @@ -4,7 +4,7 @@ ## Osnovne informacije -Azure Queue Storage je usluga u Microsoftovoj Azure cloud platformi dizajnirana za redosled poruka između komponenti aplikacije, **omogućavajući asinhronu komunikaciju i dekopling**. Omogućava vam da čuvate neograničen broj poruka, svaka do 64 KB u veličini, i podržava operacije kao što su kreiranje i brisanje redova, dodavanje, preuzimanje, ažuriranje i brisanje poruka, kao i upravljanje metapodacima i politikama pristupa. Iako obično obrađuje poruke po principu prvi došao, prvi poslužen (FIFO), strogi FIFO nije garantovan. +Azure Queue Storage je usluga u Microsoftovoj Azure cloud platformi dizajnirana za redosled poruka između komponenti aplikacije, **omogućavajući asinhronu komunikaciju i dekopling**. Omogućava vam da čuvate neograničen broj poruka, svaka do 64 KB u veličini, i podržava operacije kao što su kreiranje i brisanje redova, dodavanje, preuzimanje, ažuriranje i brisanje poruka, kao i upravljanje metapodacima i politikama pristupa. Iako obično obrađuje poruke po principu prvi došao, prvi uslužen (FIFO), strogi FIFO nije garantovan. ### Enumeracija @@ -70,7 +70,7 @@ $queueMessage.Value ../az-privilege-escalation/az-queue-privesc.md {{#endref}} -### Post Eksploatacija +### Post eksploatacija {{#ref}} ../az-post-exploitation/az-queue-post-exploitation.md diff --git a/src/pentesting-cloud/azure-security/az-services/az-servicebus-enum.md b/src/pentesting-cloud/azure-security/az-services/az-servicebus.md similarity index 96% rename from src/pentesting-cloud/azure-security/az-services/az-servicebus-enum.md rename to src/pentesting-cloud/azure-security/az-services/az-servicebus.md index 1f2a7a6e6..6dcd36c05 100644 --- a/src/pentesting-cloud/azure-security/az-services/az-servicebus-enum.md +++ b/src/pentesting-cloud/azure-security/az-services/az-servicebus.md @@ -35,19 +35,19 @@ Neke napredne funkcije su: - **Transactions**: Grupira operacije u atomsko izvršenje. - **Filters & Actions**: Primena pravila za filtriranje ili anotaciju poruka. - **Auto-Delete on Idle**: Briše redove nakon neaktivnosti (min: 5 minuta). -- **Duplicate Detection**: Uklanja duple poruke tokom ponovnog slanja. +- **Duplicate Detection**: Uklanja duplikate poruka tokom ponovnog slanja. - **Batch Deletion**: Masovno briše isteknute ili nepotrebne poruke. ### Lokalna Autentifikacija **`--disable-local-auth`** iz az cli parametra se koristi za kontrolu da li je **lokalna autentifikacija** (dozvoljava korišćenje Shared Access Signature (SAS) ključeva) omogućena za vaš Service Bus imenski prostor. -- Kada je disable postavljen na **true**: Lokalna autentifikacija koristeći SAS ključeve je onemogućena i Entra ID autentifikacija je dozvoljena. +- Kada je disable postavljen na **true**: Lokalna autentifikacija korišćenjem SAS ključeva je onemogućena i dozvoljena je Entra ID autentifikacija. - Kada je disable postavljen na **false (podrazumevano)**: I lokalna autentifikacija SAS-om i Entra ID autentifikacija su dostupne i možete koristiti konekcione stringove sa SAS ključevima za pristup vašim Service Bus resursima. ### Autorizacija-Pravila / SAS Politika -SAS politike definišu dozvole pristupa za Azure Service Bus entitete imenskog prostora (najvažnija), redove i teme. Svaka politika ima sledeće komponente: +SAS Politike definišu dozvole za pristup Azure Service Bus entitetima imenskog prostora (najvažnija), redovima i temama. Svaka politika ima sledeće komponente: - **Permissions**: Potvrdni okviri za specifikaciju nivoa pristupa: - Manage: Daje potpunu kontrolu nad entitetom, uključujući upravljanje konfiguracijom i dozvolama. @@ -55,7 +55,7 @@ SAS politike definišu dozvole pristupa za Azure Service Bus entitete imenskog p - Listen: Dozvoljava primanje poruka od entiteta. - **Primary and Secondary Keys**: Ovi su kriptografski ključevi korišćeni za generisanje sigurnih tokena za autentifikaciju pristupa. - **Primary and Secondary Connection Strings**: Prekonfigurisani konekcioni stringovi koji uključuju krajnju tačku i ključ za laku upotrebu u aplikacijama. -- **SAS Policy ARM ID**: Putanja Azure Resource Manager-a (ARM) do politike za programski identifikaciju. +- **SAS Policy ARM ID**: Putanja Azure Resource Manager-a (ARM) do politike za programatsku identifikaciju. Važno je napomenuti da imenski prostor ima jednu SAS politiku koja utiče na svaki entitet unutar njega, dok redovi i teme mogu imati svoje pojedinačne SAS politike za precizniju kontrolu. @@ -149,7 +149,7 @@ Get-AzServiceBusTopic -ResourceGroupName -NamespaceName .database.windows.net -U -P