GPS - Google Password Sync
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)
Hii ni binary na huduma ambayo Google inatoa ili kuhifadhi nywila za watumiaji zikiwa sambamba kati ya AD na Workspace. Kila wakati mtumiaji anapobadilisha nywila yake katika AD, inakabidhiwa kwa Google.
Inasakinishwa katika C:\Program Files\Google\Password Sync
ambapo unaweza kupata binary PasswordSync.exe
ili kuikamilisha na password_sync_service.exe
(huduma ambayo itaendelea kufanya kazi).
Ili kuunda usanidi wa binary hii (na huduma), inahitajika kumpatia ufikiaji wa Super Admin principal katika Workspace:
Ingia kupitia OAuth na Google kisha itahifadhi token katika rejista (imefichwa)
Inapatikana tu katika Domain Controllers zenye GUI
Kutoa baadhi ya akidi za Akaunti ya Huduma kutoka GCP (faili ya json) zenye ruhusa za kusimamia watumiaji wa Workspace
Wazo mbaya sana kwani akidi hizo hazikuwahi kuisha na zinaweza kutumika vibaya
Wazo mbaya sana kumpatia SA ufikiaji juu ya workspace kwani SA inaweza kuathiriwa katika GCP na itakuwa rahisi kuhamasisha kwa Workspace
Google inahitaji hivyo kwa kudhibiti kikoa bila GUI
Akidi hizi pia zinahifadhiwa katika rejista
Kuhusu AD, inawezekana kuonyesha kutumia muktadha wa sasa wa programu, bila jina au akidi maalum. Ikiwa chaguo la akidi limechaguliwa, jina la mtumiaji linahifadhiwa ndani ya faili katika disk na nywila inafichwa na kuhifadhiwa katika rejista.
Note that Winpeas is capable to detect GPS, get information about the configuration and even decrypt the password and token.
Katika faili C:\ProgramData\Google\Google Apps Password Sync\config.xml
inawezekana kupata sehemu ya usanidi kama baseDN
ya AD iliyowekwa na username
ambayo akidi zake zinatumika.
Katika rejista HKLM\Software\Google\Google Apps Password Sync
inawezekana kupata token ya kusasisha iliyofichwa na nywila iliyofichwa kwa mtumiaji wa AD (ikiwa ipo). Zaidi ya hayo, ikiwa badala ya token, baadhi ya akidi za SA zinatumika, pia inawezekana kupata hizo zikiwa zimefichwa katika anwani hiyo ya rejista. Thamani ndani ya rejista hii zinapatikana tu kwa Wasimamizi.
Nywila iliyofichwa (ikiwa ipo) iko ndani ya ufunguo ADPassword
na imefichwa kwa kutumia CryptProtectData
API. Ili kuifichua, unahitaji kuwa mtumiaji yule yule aliyekamilisha usanidi wa nywila na kutumia entropy hii unapofanya CryptUnprotectData
: byte[] entropyBytes = new byte[] { 0xda, 0xfc, 0xb2, 0x8d, 0xa0, 0xd5, 0xa8, 0x7c, 0x88, 0x8b, 0x29, 0x51, 0x34, 0xcb, 0xae, 0xe9 };
Token iliyofichwa (ikiwa ipo) iko ndani ya ufunguo AuthToken
na imefichwa kwa kutumia CryptProtectData
API. Ili kuifichua, unahitaji kuwa mtumiaji yule yule aliyekamilisha usanidi wa nywila na kutumia entropy hii unapofanya CryptUnprotectData
: byte[] entropyBytes = new byte[] { 0x00, 0x14, 0x0b, 0x7e, 0x8b, 0x18, 0x8f, 0x7e, 0xc5, 0xf2, 0x2d, 0x6e, 0xdb, 0x95, 0xb8, 0x5b };
Zaidi ya hayo, pia imeandikwa kwa kutumia base32hex na kamusi 0123456789abcdefghijklmnopqrstv
.
Thamani za entropy zilipatikana kwa kutumia zana. Ilipangwa kufuatilia simu za CryptUnprotectData
na CryptProtectData
na kisha zana hiyo ilitumika kuzindua na kufuatilia PasswordSync.exe
ambayo itafichua nywila iliyowekwa na token ya uthibitishaji mwanzoni na zana hiyo it onyesha thamani za entropy zilizotumika katika hali zote mbili:
Kumbuka kwamba pia inawezekana kuona thamani zilizofichuliwa katika ingizo au pato la simu hizi za API pia (ikiwa kwa bahati mbaya Winpeas itakoma kufanya kazi).
Iwapo Password Sync ilikamilishwa na akidi za SA, pia itahifadhiwa katika funguo ndani ya rejista HKLM\Software\Google\Google Apps Password Sync
.
Kama ilivyo na GCPW, inawezekana kutoa kumbukumbu ya mchakato wa PasswordSync.exe
na mchakato wa password_sync_service.exe
na utaweza kupata token za kusasisha na za ufikiaji (ikiwa tayari zimeundwa).
Nadhani unaweza pia kupata akidi za AD zilizowekwa.