Az - OAuth Apps Phishing
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Mifumo ya Azure imewekwa na ruhusa ambazo zitakuwa na uwezo wa kuzitumia wakati mtumiaji anapokubali programu (kama vile kuhesabu saraka, kufikia faili, au kufanya vitendo vingine). Kumbuka, kwamba programu itakuwa ikifanya kwa niaba ya mtumiaji, hivyo hata kama programu inaweza kuwa inahitaji ruhusa za usimamizi, ikiwa mtumiaji anayekubali hana ruhusa hiyo, programu haitaweza kufanya vitendo vya usimamizi.
Kwa kawaida mtumiaji yeyote anaweza kutoa ruhusa kwa programu, ingawa hii inaweza kuwekwa ili watumiaji waweze kukubali tu programu kutoka kwa wachapishaji waliothibitishwa kwa ruhusa zilizochaguliwa au hata kuondoa ruhusa kwa watumiaji kukubali programu.
Ikiwa watumiaji hawawezi kukubali, wasimamizi kama GA
, Application Administrator
au Cloud Application
Administrator
wanaweza kukubali programu ambazo watumiaji wataweza kutumia.
Zaidi ya hayo, ikiwa watumiaji wanaweza kukubali tu programu zinazotumia ruhusa za hatari ndogo, ruhusa hizi kwa kawaida ni openid, profile, email, User.Read na offline_access, ingawa inawezekana kuongeza zaidi kwenye orodha hii.
Na ikiwa wanaweza kukubali programu zote, wanaweza kukubali programu zote.
Isiyo na uthibitisho: Kutoka kwa akaunti ya nje tengeneza programu yenye ruhusa za hatari ndogo User.Read
na User.ReadBasic.All
kwa mfano, phish mtumiaji, na utaweza kufikia taarifa za saraka.
Hii inahitaji mtumiaji aliye phished kuwa na uwezo wa kukubali programu za OAuth kutoka kwa mpangilio wa nje
Ikiwa mtumiaji aliye phished ni msimamizi ambaye anaweza kukubali programu yoyote yenye ruhusa yoyote, programu hiyo inaweza pia kuomba ruhusa za kipaumbele
Iliyothibitishwa: Baada ya kuathiri mtu mwenye ruhusa za kutosha, tengeneza programu ndani ya akaunti na phish mtumiaji aliye na ruhusa ambaye anaweza kukubali ruhusa za kipaumbele za OAuth.
Katika kesi hii tayari unaweza kufikia taarifa za saraka, hivyo ruhusa User.ReadBasic.All
si ya kuvutia tena.
Huenda unavutiwa na ruhusa zinazohitaji msimamizi kuzipatia, kwa sababu mtumiaji wa kawaida hawezi kutoa ruhusa yoyote kwa programu za OAuth, ndio maana unahitaji phish tu watumiaji hao (zaidi kuhusu ni nafasi/ruhusa zipi zinatoa kipaumbele hiki baadaye)
Kumbuka kwamba unahitaji kutekeleza amri hii kutoka kwa mtumiaji ndani ya mpangilio, huwezi kupata usanidi huu wa mpangilio kutoka kwa mpangilio wa nje. CLI ifuatayo inaweza kusaidia kuelewa ruhusa za watumiaji:
Watumiaji wanaweza kukubali programu zote: Ikiwa ndani ya permissionGrantPoliciesAssigned
unaweza kupata: ManagePermissionGrantsForSelf.microsoft-user-default-legacy
basi watumiaji wanaweza kukubali kila programu.
Watumiaji wanaweza kukubali programu kutoka kwa wachapishaji waliothibitishwa au shirika lako, lakini tu kwa ruhusa unazochagua: Ikiwa ndani ya permissionGrantPoliciesAssigned
unaweza kupata: ManagePermissionGrantsForOwnedResource.microsoft-dynamically-managed-permissions-for-team
basi watumiaji wanaweza kukubali kila programu.
Zima idhini ya mtumiaji: Ikiwa ndani ya permissionGrantPoliciesAssigned
unaweza tu kupata: ManagePermissionGrantsForOwnedResource.microsoft-dynamically-managed-permissions-for-chat
na ManagePermissionGrantsForOwnedResource.microsoft-dynamically-managed-permissions-for-team
basi watumiaji hawawezi kukubali chochote.
Inawezekana kupata maana ya kila sera iliyotajwa katika:
Angalia watumiaji wanaoonekana kama wasimamizi wa programu (wanaweza kukubali programu mpya):
Shambulio linajumuisha hatua kadhaa zinazolenga kampuni ya kawaida. Hapa kuna jinsi linavyoweza kuendelea:
Usajili wa Kikoa na Kuweka Programu: Mshambuliaji anasajili kikoa kinachofanana na tovuti ya kuaminika, kwa mfano, "safedomainlogin.com". Chini ya kikoa hiki, subdomain inaundwa (mfano, "companyname.safedomainlogin.com") ili kuweka programu iliyoundwa kukamata nambari za idhini na kuomba alama za ufikiaji.
Usajili wa Programu katika Azure AD: Mshambuliaji kisha anasajili Programu ya Multi-Tenant katika Azure AD Tenant yao, akiiita kwa jina la kampuni lengwa ili kuonekana halali. Wanatengeneza URL ya Redirect ya programu hiyo kuelekea subdomain inayohifadhi programu mbaya.
Kuweka Ruhusa: Mshambuliaji anapanga programu hiyo na ruhusa mbalimbali za API (mfano, Mail.Read
, Notes.Read.All
, Files.ReadWrite.All
, User.ReadBasic.All
, User.Read
). Ruhusa hizi, mara tu zinapopewa na mtumiaji, zinamruhusu mshambuliaji kutoa taarifa nyeti kwa niaba ya mtumiaji.
Kusambaza Viungo Mbaya: Mshambuliaji anaunda kiungo kinachokuwa na kitambulisho cha mteja wa programu mbaya na kukishiriki na watumiaji walengwa, akiwadanganya kuwapa idhini.
Sajili programu mpya. Inaweza kuwa tu kwa saraka ya sasa ikiwa unatumia mtumiaji kutoka saraka iliyoathiriwa au kwa saraka yoyote ikiwa hii ni shambulio la nje (kama katika picha ifuatayo).
Pia weka redirect URI kwa URL inayotarajiwa ambapo unataka kupokea nambari za kupata alama (http://localhost:8000/callback
kwa chaguo-msingi).
Kisha tengeneza siri ya programu:
Chagua ruhusa za API (mfano, Mail.Read
, Notes.Read.All
, Files.ReadWrite.All
, User.ReadBasic.All
, User.Read
)
Tekeleza ukurasa wa wavuti (azure_oauth_phishing_example) unaoomba ruhusa:
Tuma URL kwa mwathirika
Katika kesi hii http://localhost:8000
Waathirika wanahitaji kukubali ombi:
Tumia token ya ufikiaji kupata ruhusa zilizohitajika:
365-Stealer: Angalia https://www.alteredsecurity.com/post/introduction-to-365-stealer kujifunza jinsi ya kuikamilisha.
Kulingana na ruhusa zilizotolewa unaweza kuwa na uwezo wa kufikia data tofauti za mpangaji (orodha ya watumiaji, vikundi... au hata kubadilisha mipangilio) na taarifa za mtumiaji (faili, maelezo, barua pepe...). Kisha, unaweza kutumia ruhusa hizi kufanya vitendo hivyo.
Angalia sehemu za Maombi na Huduma Kuu za ukurasa:
Az - EntraID PrivescLearn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)