Az - Illicit Consent Grant
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)
Azure Applications zinaomba ruhusa za kufikia data za mtumiaji (maelezo ya msingi, lakini pia ufikiaji wa nyaraka, kutuma barua pepe...).
Ikiwa imekubaliwa, mtumiaji wa kawaida anaweza kutoa idhini tu kwa "ruhusa za Athari za Chini". Katika mambo mengine yote, idhini ya msimamizi inahitajika.
GA
, ApplicationAdministrator
, CloudApplication
Administrator
na jukumu maalum linalojumuisha ruhusa ya kutoa ruhusa kwa programu
linaweza kutoa idhini ya kiwango cha mpangilio.
Ruhusa pekee ambazo hazihitaji idhini ya msimamizi zinakisiwa kama athari za chini. Hizi ni ruhusa zinazohitajika kwa kuingia kwa msingi ni openid, profile, email, User.Read na offline_access. Ikiwa taasisi inaweza kutoa idhini ya mtumiaji kwa programu zote, mfanyakazi anaweza kutoa idhini kwa programu ili kusoma yaliyo hapo juu kutoka kwa wasifu wao.
Hivyo, mshambuliaji anaweza kuandaa Programu mbaya na kwa phishing, kumfanya mtumiaji akubali Programu na kuiba data yake.
Isiyo na uthibitisho: Kutoka kwa akaunti ya nje tengeneza programu yenye ruhusa User.Read
na User.ReadBasic.All
kwa mfano, phish mtumiaji, na utaweza kufikia taarifa za directory.
Hii inahitaji mtumiaji aliye phished kuwa na uwezo wa kukubali programu za OAuth kutoka kwa mazingira ya nje!
Iliyothibitishwa: Baada ya kuathiri mtu mwenye mamlaka ya kutosha, tengeneza programu ndani ya akaunti na phish mtumiaji mwenye mamlaka ambaye anaweza kukubali ruhusa za OAuth zenye mamlaka.
Katika kesi hii tayari unaweza kufikia taarifa za directory, 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 kuphish tu watumiaji hao (zaidi kuhusu ni ni majukumu/ruhusa zipi zinatoa haki hii baadaye)
Amri ifuatayo ya PowerShell inatumika kuangalia usanidi wa idhini kwa watumiaji katika Azure Active Directory (Azure AD) kuhusu uwezo wao wa kutoa idhini kwa programu:
Zima idhini ya mtumiaji: Mipangilio hii inakataza watumiaji kutoa ruhusa kwa programu. Hakuna idhini ya mtumiaji kwa programu inaruhusiwa.
Watumiaji wanaweza kutoa idhini kwa programu kutoka kwa wachapishaji waliothibitishwa au shirika lako, lakini tu kwa ruhusa unazochagua: Mipangilio hii inaruhusu watumiaji wote kutoa idhini tu kwa programu ambazo zimetolewa na mchapishaji aliyeidhinishwa na programu zilizosajiliwa katika tenant yako mwenyewe. Inaleta kiwango cha udhibiti kwa kuruhusu idhini tu kwa ruhusa maalum.
Watumiaji wanaweza kutoa idhini kwa programu zote: Mipangilio hii ni ya kuruhusu zaidi na inaruhusu watumiaji wote kutoa idhini kwa ruhusa yoyote kwa programu, mradi ruhusa hizo hazihitaji idhini ya kiutawala.
Sera ya idhini ya programu maalum: Mipangilio hii inaonyesha kuwa sera maalum ipo, ambayo inaweza kubadilishwa kulingana na mahitaji maalum ya shirika na inaweza kujumuisha mchanganyiko wa vizuizi kulingana na mchapishaji wa programu, ruhusa ambazo programu inahitaji, na mambo mengine.
Katika shambulio la idhini isiyo halali, washambuliaji wanawadanganya watumiaji wa mwisho kutoa ruhusa kwa programu mbaya iliyosajiliwa na Azure. Hii inafanywa kwa kufanya programu ionekane halali, ikiwafanya wahanga kubofya kitufe cha "Kubali" bila kujua. Kama matokeo, Azure AD inatoa token kwa tovuti ya mshambuliaji, ikiwaruhusu kufikia na kubadilisha data ya mhanga, kama kusoma au kutuma barua pepe na kufikia faili, bila kuhitaji akaunti ya shirika.
Shambulio linajumuisha hatua kadhaa zinazolenga kampuni ya kawaida. Hapa kuna jinsi inaweza 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 token za ufikiaji.
Usajili wa Programu katika Azure AD: Mshambuliaji kisha anasajili Programu ya Multi-Tenant katika Tenant yake ya Azure AD, akiiita kwa jina la kampuni lengwa ili ionekane halali. Wanatengeneza URL ya Redirect ya programu 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 kinachojumuisha kitambulisho cha mteja wa programu mbaya na kukishiriki na watumiaji walengwa, akiwadanganya kutoa idhini.
Shambulio linaweza kuwezeshwa kwa kutumia zana kama 365-Stealer.
Ikiwa mshambuliaji ana kiwango fulani cha ufikiaji kwa mtumiaji katika shirika la mhanga, wanaweza kuangalia ikiwa sera ya shirika inaruhusu mtumiaji kukubali programu:
Kwa kutekeleza shambulio, mshambuliaji atahitaji kuunda App mpya katika Azure Tenant yao (katika Usajili wa App), iliyowekwa na ruhusa:
User.ReadBasic.All
iko ndani ya Microsoft Graph
katika Ruhusa za Delegated
. (Ruhusa za Maombi daima zitahitaji idhini ya ziada).
User.ReadBasic.All
ni ruhusa ambayo itakuruhusu kusoma taarifa za watumiaji wote katika shirika ikiwa itatolewa.
Kumbuka kwamba ni GA
, ApplicationAdministrator
, CloudApplication
Administrator
na jukumu maalum linalojumuisha ruhusa ya kutoa ruhusa kwa maombi
pekee ndizo zinaweza kutoa idhini ya kiwango cha tenant. Hivyo, unapaswa kufanya udukuzi wa mtumiaji mwenye mojawapo ya majukumu hayo ikiwa unataka amuondoe App inayohitaji idhini ya msimamizi.
Unaweza pia kuunda App kupitia cli kwa:
Check https://www.alteredsecurity.com/post/introduction-to-365-stealer kujifunza jinsi ya kuikamilisha.
Kumbuka kwamba token ya ufikiaji iliyopatikana itakuwa kwa graph endpoint na mipaka: User.Read
na User.ReadBasic.All
(idhini zilizohitajika). Hutaweza kufanya vitendo vingine (lakini hivyo vinatosha kupakua taarifa kuhusu watumiaji wote katika shirika).
Unaweza pia kutumia chombo hiki kufanya shambulio hili.
Mara tu unapopata ufikiaji wa mtumiaji unaweza kufanya mambo kama kuiba nyaraka nyeti na hata kupakia tena faili za nyaraka zenye backdoor.
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)