Izvlačenje Ovlašćenja iz Kompajlirane Aplikacije
Reading time: 3 minutes
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Sažetak stranice https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0069/#review-entitlements-embedded-in-the-compiled-app-binary
Izvlačenje Ovlašćenja i Mobilnih Provision Fajlova
Kada se radi sa IPA aplikacijom ili instaliranom aplikacijom na jailbreak-ovanom uređaju, možda neće biti moguće direktno pronaći .entitlements
fajlove ili embedded.mobileprovision
fajl. Ipak, liste svojstava ovlašćenja se i dalje mogu izvući iz binarnog fajla aplikacije, prateći procedure opisane u poglavlju "Osnovno Bezbednosno Testiranje iOS-a", posebno u sekciji "Sticanje Binarne Aplikacije".
Čak i sa enkriptovanim binarnim fajlovima, određeni koraci se mogu primeniti za izvlačenje ovih fajlova. Ako ovi koraci ne uspeju, alati kao što su Clutch (ako je kompatibilan sa verzijom iOS-a), frida-ios-dump ili slične utilite mogu biti potrebni za dekripciju i ekstrakciju aplikacije.
Izvlačenje Plist-a Ovlašćenja iz Binarne Aplikacije
Sa binarnim fajlom aplikacije dostupnim na računaru, binwalk se može koristiti za izvlačenje svih XML fajlova. Komanda ispod prikazuje kako to učiniti:
$ binwalk -e -y=xml ./Telegram\ X
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
1430180 0x15D2A4 XML document, version: "1.0"
1458814 0x16427E XML document, version: "1.0"
Alternativno, radare2 se može koristiti za tiho izvršavanje komande i izlazak, pretražujući sve stringove u binarnom fajlu aplikacije koji sadrže "PropertyList":
$ r2 -qc 'izz~PropertyList' ./Telegram\ X
0x0015d2a4 ascii <?xml version="1.0" encoding="UTF-8" standalone="yes"?>...
0x0016427d ascii H<?xml version="1.0" encoding="UTF-8"?>...
Obe metode, binwalk i radare2, omogućavaju ekstrakciju plist
fajlova, pri čemu inspekcija prvog (0x0015d2a4) otkriva uspešno vraćanje originalnog fajla sa entitlements iz Telegrama.
Za binarne aplikacije pristupene na jailbroken uređajima (npr. putem SSH), grep komanda sa -a, --text
flagom može se koristiti da tretira sve fajlove kao ASCII tekst:
$ grep -a -A 5 'PropertyList' /var/containers/Bundle/Application/...
Podešavanje -A num, --after-context=num
opcije omogućava prikaz više ili manje linija. Ova metoda je izvodljiva čak i za enkriptovane aplikacione binarne datoteke i potvrđena je na više aplikacija iz App Store-a. Alati pomenuti ranije mogu se takođe koristiti na jailbreakovanim iOS uređajima u slične svrhe.
Napomena: Direktna upotreba strings
komande se ne preporučuje za ovaj zadatak zbog njenih ograničenja u pronalaženju relevantnih informacija. Umesto toga, preporučuje se korišćenje grep-a sa -a
opcijom na binarnoj datoteci ili korišćenje radare2 (izz
)/rabin2 (-zz
) za efikasnije rezultate.
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.