Az - Service Bus Enum
Reading time: 8 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Service Bus
Azure Service Bus ni huduma ya ujumbe inayotolewa kwenye wingu iliyoundwa kuwezesha mawasiliano ya kuaminika kati ya sehemu tofauti za programu au programu tofauti. Inafanya kazi kama katikati salama, kuhakikisha ujumbe unawasilishwa kwa usalama, hata kama mtumaji na mpokeaji hawafanyi kazi kwa wakati mmoja. Kwa kutenganisha mifumo, inaruhusu programu kufanya kazi kwa uhuru huku bado ikibadilishana data au maagizo. Ni muhimu hasa kwa hali zinazohitaji usawa wa mzigo kati ya wafanyakazi wengi, utoaji wa ujumbe wa kuaminika, au uratibu mgumu, kama vile kusindika kazi kwa mpangilio au kusimamia ufikiaji kwa usalama.
Key Concepts
- Namespaces: Namespace katika mifumo ya ujumbe ni chombo cha kimantiki kinachopanga na kusimamia vipengele vya ujumbe, foleni na mada. Inatoa mazingira yaliyotengwa ambapo programu zinaweza kutuma, kupokea, na kusindika ujumbe. Foleni na mada zinashiriki miundombinu na usanidi sawa ndani ya namespace ya Service Bus, lakini zinafanya kazi kwa uhuru bila kuingiliana.
- Queues: kusudi lake ni kuhifadhi ujumbe hadi mpokeaji awe tayari.
- Ujumbe umeagizwa, umewekwa alama ya muda, na kuhifadhiwa kwa kudumu.
- Utoaji unafanyika kwa njia ya kuvuta (urejeshaji wa mahitaji) kwa mtumiaji mmoja.
- Inaweza kusanidiwa ili wakati ujumbe unashirikiwa, unafuta moja kwa moja au katika hali ya “Peek lock” ambapo mtumiaji anahitaji kuthibitisha kwamba unaweza kufutwa. Ikiwa sivyo, ujumbe utaenda tena kwenye foleni.
- Inasaidia mawasiliano ya pointi hadi pointi.
- Topics: Ujumbe wa kuchapisha-na-kujiandikisha kwa matangazo.
- Usajili wengi huru hupokea nakala za ujumbe.
- Kila usajili ni kama foleni ndani ya mada.
- Usajili unaweza kuwa na sheria/filter za kudhibiti utoaji au kuongeza metadata.
Mstari wa mwisho wa huduma ya bus/kiunganishi ni:
https://<namespace>.servicebus.windows.net:443/
Vipengele vya Juu
Vipengele vya juu ni:
- Message Sessions: Inahakikisha usindikaji wa FIFO na inasaidia mifumo ya ombi-jibu.
- Auto-Forwarding: Inahamisha ujumbe kati ya foleni au mada katika nafasi moja.
- Dead-Lettering: Inakamata ujumbe ambao hauwezi kufikishwa kwa ajili ya mapitio.
- Scheduled Delivery: Inachelewesha usindikaji wa ujumbe kwa kazi za baadaye.
- Message Deferral: Inachelewesha upatikanaji wa ujumbe hadi iwe tayari.
- Transactions: Inakusanya operesheni katika utekelezaji wa atomiki.
- Filters & Actions: Inatumia sheria kuchuja au kuongeza maelezo kwenye ujumbe.
- Auto-Delete on Idle: Inafuta foleni baada ya kutokuwepo kwa shughuli (min: dakika 5).
- Duplicate Detection: Inafuta ujumbe wa nakala wakati wa kutuma tena.
- Batch Deletion: Inafuta kwa wingi ujumbe ambao umepita muda au si wa lazima.
Uthibitishaji wa Mitaa
--disable-local-auth
kutoka kwa az cli parameter inatumika kudhibiti ikiwa uthibitishaji wa mitaa (kuruhusu matumizi ya funguo za Shared Access Signature (SAS)) umewezeshwa kwa nafasi yako ya Service Bus.
- Wakati disable imewekwa kuwa true: Uthibitishaji wa mitaa kwa kutumia funguo za SAS umezuiliwa na uthibitishaji wa Entrad ID unaruhusiwa.
- Wakati disable imewekwa kuwa false (default): Uthibitishaji wa mitaa wa SAS na uthibitishaji wa Entra ID vinapatikana na unaweza kutumia nyuzi za muunganisho na funguo za SAS kufikia rasilimali zako za Service Bus.
Mamlaka ya Uidhinishaji / Sera ya SAS
Sera za SAS zinaelezea ruhusa za ufikiaji kwa vitu vya Azure Service Bus namespace (Muhimu Zaidi), foleni na mada. Kila sera ina vipengele vifuatavyo:
- Permissions: Sanduku za kuangalia kubaini viwango vya ufikiaji:
- Manage: Inatoa udhibiti kamili juu ya kitu, ikiwa ni pamoja na usanidi na usimamizi wa ruhusa.
- Send: Inaruhusu kutuma ujumbe kwa kitu.
- Listen: Inaruhusu kupokea ujumbe kutoka kwa kitu.
- Funguo Kuu na za Pili: Hizi ni funguo za kificho zinazotumika kutengeneza tokeni salama za kuthibitisha ufikiaji.
- Nyuzi za Muunganisho Kuu na za Pili: Nyuzi za muunganisho zilizopangwa awali ambazo zinajumuisha kiunganishi na funguo kwa matumizi rahisi katika programu.
- SAS Policy ARM ID: Njia ya Azure Resource Manager (ARM) kwa sera kwa ajili ya utambulisho wa kimaandishi.
Ni muhimu kutambua kwamba nafasi ina sera moja ya SAS ambayo inaathiri kila kitu ndani yake, wakati foleni na mada zinaweza kuwa na sera zao za SAS za kibinafsi kwa udhibiti wa kina zaidi.
Uhesabuji
# Namespace Enumeration
az servicebus namespace list
az servicebus namespace network-rule-set list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
az servicebus namespace show --resource-group <MyResourceGroup> --name <MyNamespace>
az servicebus namespace network-rule-set show --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
az servicebus namespace private-endpoint-connection list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
az servicebus namespace exists --name ProposedNamespace
# Authorization Rule Enumeration
az servicebus namespace authorization-rule list --resource-group <MyResourceGroup> --namespace-name <MyNamespace>
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>
Kuinua Haki
Baada ya Kutekeleza
Az - Service Bus Post Exploitation
Marejeleo
- 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-quickstart-cli
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.