Az - Storage Accounts & Blobs
Last updated
Last updated
Jifunze & fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Jifunze & fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Akaunti za Hifadhi za Azure ni huduma za msingi katika Microsoft Azure zinazotoa hifadhi ya wingu inayoweza kupanuka, salama, na inayopatikana kwa urahisi kwa aina mbalimbali za data, ikiwa ni pamoja na blobs (vitu vikubwa vya binary), faili, foleni, na meza. Zinatumika kama vyombo vinavyounganisha huduma hizi tofauti za hifadhi chini ya jina moja kwa usimamizi rahisi.
Chaguzi kuu za usanidi:
Kila akaunti ya hifadhi lazima iwe na jina la kipekee katika Azure yote.
Kila akaunti ya hifadhi inapelekwa katika eneo au katika eneo la kupanua la Azure
Inawezekana kuchagua toleo la premium la akaunti ya hifadhi kwa utendaji bora
Inawezekana kuchagua kati ya aina 4 za upungufu ili kulinda dhidi ya kushindwa kwa rack, diski na kituo cha data failures.
Chaguzi za usanidi wa usalama:
Hitaji usafirishaji salama kwa shughuli za REST API: Hitaji TLS katika mawasiliano yoyote na hifadhi
Inaruhusu kuwezesha ufikiaji wa siri kwenye vyombo vya kibinafsi: Ikiwa sivyo, haitakuwa na uwezo wa kuwezesha ufikiaji wa siri katika siku zijazo
Washa ufikiaji wa funguo za akaunti ya hifadhi: Ikiwa sivyo, ufikiaji kwa Funguo za Kushiriki utafungiwa
Tofauti ya chini ya TLS
Muktadha unaoruhusiwa kwa shughuli za nakala: Ruhusu kutoka kwa akaunti yoyote ya hifadhi, kutoka kwa akaunti yoyote ya hifadhi kutoka kwa mpangilio sawa wa Entra au kutoka kwa akaunti ya hifadhi yenye maeneo ya kibinafsi katika mtandao huo wa virtual.
Chaguzi za Hifadhi za Blob:
Ruhusu upatanishi wa kuvuka mpangilio
Kiwango cha ufikiaji: Moto (data inayofikiwa mara kwa mara), Baridi na Baridi (data inayofikiwa mara chache)
Chaguzi za Mtandao:
Ufikiaji wa mtandao:
Ruhusu kutoka mitandao yote
Ruhusu kutoka mitandao maalum ya virtual na anwani za IP
Zima ufikiaji wa umma na tumia ufikiaji wa kibinafsi
Mikoa ya kibinafsi: Inaruhusu muunganisho wa kibinafsi kwa akaunti ya hifadhi kutoka mtandao wa virtual
Chaguzi za Ulinzi wa Data:
Kurejesha kwa wakati kwa vyombo: Inaruhusu kurejesha vyombo katika hali ya awali
Inahitaji toleo, mabadiliko ya chakula, na kufutwa kwa blob kwa njia laini kuwa kuwezeshwa.
Washa kufutwa kwa njia laini kwa blobs: Inaruhusu kipindi cha uhifadhi kwa siku kwa blobs zilizofutwa (hata zilizofutwa)
Washa kufutwa kwa njia laini kwa vyombo: Inaruhusu kipindi cha uhifadhi kwa siku kwa vyombo vilivyofutwa
Washa kufutwa kwa njia laini kwa sehemu za faili: Inaruhusu kipindi cha uhifadhi kwa siku kwa sehemu za faili zilizofutwa
Washa toleo kwa blobs: Hifadhi toleo za awali za blobs zako
Washa chakula cha mabadiliko ya blob: Hifadhi kumbukumbu za kuunda, kubadilisha, na kufuta mabadiliko kwa blobs
Washa msaada wa kutokuweza kubadilika kwa kiwango cha toleo: Inaruhusu kuweka sera ya uhifadhi kulingana na muda kwenye kiwango cha akaunti ambayo itatumika kwa toleo zote za blob.
Msaada wa kutokuweza kubadilika kwa kiwango cha toleo na kurejesha kwa wakati kwa vyombo haviwezi kuwezeshwa kwa wakati mmoja.
Chaguzi za usanidi wa Encryption:
Aina ya Encryption: Inawezekana kutumia funguo zinazodhibitiwa na Microsoft (MMK) au funguo zinazodhibitiwa na Mteja (CMK)
Washa encryption ya miundombinu: Inaruhusu kuimarisha data mara mbili "kwa usalama zaidi"
Hifadhi ya Blob
https://<storage-account>.blob.core.windows.net
https://<stg-acc>.blob.core.windows.net/<container-name>?restype=container&comp=list
Hifadhi ya Ziwa la Data
https://<storage-account>.dfs.core.windows.net
Faili za Azure
https://<storage-account>.file.core.windows.net
Hifadhi ya Foleni
https://<storage-account>.queue.core.windows.net
Hifadhi ya Meza
https://<storage-account>.table.core.windows.net
Ikiwa "Ruhusu ufikiaji wa umma wa Blob" ime wezeshwa (imezimwa kwa default), unapounda chombo inawezekana:
Kutoa ufikiaji wa umma kusoma blobs (unahitaji kujua jina).
Orodhesha blobs za chombo na zisome.
Fanya iwe binafsi kabisa
Ikiwa unapata hifadhi yoyote unayoweza kuunganishwa nayo unaweza kutumia chombo Microsoft Azure Storage Explorer kufanya hivyo.
Inawezekana kutumia wahusika wa Entra ID na majukumu ya RBAC kufikia akaunti za hifadhi na ni njia inayopendekezwa.
Akaunti za hifadhi zina funguo za ufikiaji ambazo zinaweza kutumika kufikia hiyo. Hii inatoa ufikiaji kamili kwa akaunti ya hifadhi.
Inawezekana kuunda Funguo za Kushiriki zilizotiwa saini na funguo za ufikiaji ili kuidhinisha ufikiaji wa rasilimali fulani kupitia URL iliyotiwa saini.
Kumbuka kwamba sehemu ya CanonicalizedResource
inawakilisha rasilimali za huduma za hifadhi (URI). Na ikiwa sehemu yoyote katika URL imeandikwa, inapaswa pia kuandikwa ndani ya CanonicalizedResource
.
Hii inatumiwa kwa default na az
cli kuthibitisha maombi. Ili kufanya itumie akidi za wahusika wa Entra ID onyesha param --auth-mode login
.
Inawezekana kuunda funguo za kushiriki kwa huduma za blob, foleni na faili kwa kusaini taarifa zifuatazo:
Inawezekana kuunda funguo iliyoshirikiwa kwa huduma za meza kwa kusaini taarifa zifuatazo:
Inawezekana kuunda lite shared key kwa huduma za blob, queue na file kwa kusaini taarifa zifuatazo:
Inawezekana kuunda lite shared key for table services kwa kusaini taarifa zifuatazo:
Kisha, ili kutumia funguo, inaweza kufanywa katika kichwa cha Uidhinishaji ikifuatia muundo:
Shared Access Signatures (SAS) ni URL salama, zenye muda wa ukomo ambazo zinatoa ruhusa maalum za kufikia rasilimali katika akaunti ya Azure Storage bila kufichua funguo za ufikiaji za akaunti. Wakati funguo za ufikiaji zinatoa ufikiaji kamili wa kiutawala kwa rasilimali zote, SAS inaruhusu udhibiti wa kina kwa kubainisha ruhusa (kama kusoma au kuandika) na kufafanua muda wa kumalizika.
User delegation SAS: Hii inaundwa kutoka kwa Entra ID principal ambayo itatia saini SAS na kuhamasisha ruhusa kutoka kwa mtumiaji hadi SAS. Inaweza kutumika tu na blob na data lake storage (docs). Inawezekana kufuta SAS zote zilizozalishwa za mtumiaji.
Hata kama inawezekana kuzalisha delegation SAS yenye ruhusa "zaidi" kuliko zile ambazo mtumiaji ana. Hata hivyo, ikiwa principal hana hizo, haitafanya kazi (hakuna privesc).
Service SAS: Hii inatiwa saini kwa kutumia moja ya access keys za akaunti ya storage. Inaweza kutumika kutoa ufikiaji kwa rasilimali maalum katika huduma moja ya storage. Ikiwa funguo itarejeshwa, SAS itakoma kufanya kazi.
Account SAS: Pia inatiwa saini kwa moja ya access keys za akaunti ya storage. Inatoa ufikiaji kwa rasilimali katika huduma za akaunti ya storage (Blob, Queue, Table, File) na inaweza kujumuisha operesheni za kiwango cha huduma.
URL ya SAS iliyotiwa saini na access key inaonekana kama hii:
https://<container_name>.blob.core.windows.net/newcontainer?sp=r&st=2021-09-26T18:15:21Z&se=2021-10-27T02:14:21Z&spr=https&sv=2021-07-08&sr=c&sig=7S%2BZySOgy4aA3Dk0V1cJyTSIf1cW%2Fu3WFkhHV32%2B4PE%3D
URL ya SAS iliyotiwa saini kama user delegation inaonekana kama hii:
https://<container_name>.blob.core.windows.net/testing-container?sp=r&st=2024-11-22T15:07:40Z&se=2024-11-22T23:07:40Z&skoid=d77c71a1-96e7-483d-bd51-bd753aa66e62&sktid=fdd066e1-ee37-49bc-b08f-d0e152119b04&skt=2024-11-22T15:07:40Z&ske=2024-11-22T23:07:40Z&sks=b&skv=2022-11-02&spr=https&sv=2022-11-02&sr=c&sig=7s5dJyeE6klUNRulUj9TNL0tMj2K7mtxyRc97xbYDqs%3D
Kumbuka baadhi ya http params:
Param se
inaonyesha tarehe ya kumalizika ya SAS
Param sp
inaonyesha ruhusa za SAS
sig
ni saini inayothibitisha SAS
Wakati wa kuzalisha SAS inahitajika kubainisha ruhusa ambazo inapaswa kutoa. Kulingana na kitu ambacho SAS inaundwa juu yake, ruhusa tofauti zinaweza kujumuishwa. Kwa mfano:
(a)dd, (c)reate, (d)elete, (e)xecute, (f)ilter_by_tags, (i)set_immutability_policy, (l)ist, (m)ove, (r)ead, (t)ag, (w)rite, (x)delete_previous_version, (y)permanent_delete
Azure Blob Storage sasa inasaidia Protokali ya Uhamishaji Faili ya SSH (SFTP), ikiruhusu uhamishaji wa faili salama na usimamizi moja kwa moja kwa Blob Storage bila kuhitaji suluhisho maalum au bidhaa za wahusika wengine.
Msaada wa Protokali: SFTP inafanya kazi na akaunti za Blob Storage zilizowekwa na namespace ya kihierarkia (HNS). Hii inaratibu blobs katika saraka na subdirectories kwa urahisi wa urambazaji.
Usalama: SFTP inatumia vitambulisho vya watumiaji wa ndani kwa uthibitisho na haijumuishi na RBAC au ABAC. Kila mtumiaji wa ndani anaweza kuthibitisha kupitia:
Nywila zinazozalishwa na Azure
Mifumo ya funguo za SSH za umma na binafsi
Ruhusa za Kina: Ruhusa kama Kusoma, Kuandika, Kufuta, na Kuweka zinaweza kutolewa kwa watumiaji wa ndani kwa hadi kontena 100.
Mambo ya Mtandao: Munganisho wa SFTP unafanywa kupitia bandari 22. Azure inasaidia usanidi wa mtandao kama vile moto, maeneo ya kibinafsi, au mitandao ya virtual ili kulinda trafiki ya SFTP.
Namespace ya Kihierarkia: HNS lazima iwekwe wakati wa kuunda akaunti ya storage.
Usimbuaji Unaounga Mkono: Inahitaji algorithimu za usimbuaji zilizothibitishwa na Microsoft Security Development Lifecycle (SDL) (mfano, rsa-sha2-256, ecdsa-sha2-nistp256).
Usanidi wa SFTP:
Wezesha SFTP kwenye akaunti ya storage.
Unda vitambulisho vya watumiaji wa ndani na ruhusa zinazofaa.
Sanidi saraka za nyumbani kwa watumiaji ili kufafanua eneo lao la kuanzia ndani ya kontena.
Read
r
Soma maudhui ya faili.
Write
w
Pakia faili na unda saraka.
List
l
Orodhesha maudhui ya saraka.
Delete
d
Futa faili au saraka.
Create
c
Unda faili au saraka.
Modify Ownership
o
Badilisha mtumiaji au kikundi kinachomiliki.
Modify Permissions
p
Badilisha ACLs kwenye faili au saraka.
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)