5 KiB
Google CTF 2018 - Je, Tucheze Mchezo?
Jifunze kuhusu udukuzi wa AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!
Njia nyingine za kusaidia HackTricks:
- Ikiwa unataka kuona kampuni yako ikitangazwa kwenye HackTricks au kupakua HackTricks kwa PDF Angalia MIPANGO YA KUJIUNGA!
- Pata bidhaa rasmi za PEASS & HackTricks
- Gundua Familia ya PEASS, mkusanyiko wetu wa NFTs ya kipekee
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @carlospolopm.
- Shiriki mbinu zako za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Pakua APK hapa:
Ninaenda kupakia APK kwenye https://appetize.io/ (akaunti ya bure) kuona jinsi apk inavyotenda:
Inaonekana unahitaji kushinda mara 1000000 kupata bendera.
Kufuata hatua kutoka udukuzi wa Android unaweza kudecompile programu kupata nambari ya smali na kusoma nambari ya Java kwa kutumia jadx.
Kusoma nambari ya java:
Inaonekana kama kazi ambayo itachapisha bendera ni m().
Mabadiliko ya Smali
Piga simu kwa m() mara ya kwanza
Tufanye programu ipige simu kwa m() ikiwa kigezo this.o != 1000000 ili kufanya hivyo, tuibadilishe hali:
if-ne v0, v9, :cond_2
to:
Google CTF 2018: Je, Tucheze Mchezo?
Timu ya Google iliongeza programu ya Android kwa mchezo wa CTF wakati wa mashindano ya Google CTF 2018. Kwa kuchunguza programu hiyo, wachezaji waligundua kuwa kuna faili ya flag
iliyofichwa kwenye programu. Kwa kufanya uchambuzi wa kina, waligundua kuwa programu inatumia WebView
kuonyesha tovuti ya mchezo. Kwa kuchunguza zaidi, waligundua kuwa programu inatumia JavaScript
kufanya mawasiliano ya mtandao. Kwa kufanya ufuatiliaji wa trafiki, waligundua kuwa programu inatumia HTTP
badala ya HTTPS
kufanya mawasiliano na seva ya mchezo. Hii iliwawezesha kugundua flag
iliyokuwa ikitumwa kwa wazi kwenye mtandao. Hatimaye, wachezaji walifanikiwa kupata flag
na kumaliza changamoto hiyo.
if-eq v0, v9, :cond_2
Fuata hatua za pentest Android kurekebisha na kusaini APK. Kisha, pakia kwenye https://appetize.io/ na tazama kinachotokea:
Inaonekana bendera imeandikwa bila kufunguliwa kabisa. Labda kazi ya m() inapaswa kuitwa mara 1000000.
Njia nyingine ya kufanya hii ni kubadilisha maagizo ya kulinganisha:
Njia nyingine ni badala ya kulinganisha na 1000000, weka thamani kuwa 1 ili this.o ilinganishwe na 1:
Njia ya nne ni kuongeza maagizo ya kuhamisha thamani ya v9(1000000) kwenda v0 (this.o):
Suluhisho
Fanya programu iendeshe mzunguko mara 100000 unaposhinda mara ya kwanza. Ili kufanya hivyo, unahitaji tu kuunda mzunguko wa :goto_6 na kufanya programu ikimbie hapo ikiwa this.o
haifai thamani 100000:
Unahitaji kufanya hivi kwenye kifaa halisi kwani (sijui kwa nini) hii haifanyi kazi kwenye kifaa kilichoiga.
Jifunze kuhusu kuvamia AWS kutoka mwanzo hadi kuwa shujaa na htARTE (HackTricks AWS Red Team Expert)!
Njia nyingine za kusaidia HackTricks:
- Ikiwa unataka kuona kampuni yako ikitangazwa kwenye HackTricks au kupakua HackTricks kwa PDF Angalia MIPANGO YA KUJIUNGA!
- Pata bidhaa rasmi za PEASS & HackTricks
- Gundua Familia ya PEASS, mkusanyiko wetu wa NFTs ya kipekee
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @carlospolopm.
- Shiriki mbinu zako za kuvamia kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud github repos.