iOS Extracting Entitlements From Compiled Application
Sažetak stranice https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0069/#review-entitlements-embedded-in-the-compiled-app-binary
Izdvajanje privilegija i mobilnih provizionih fajlova
Kada se bavite IPA aplikacijom ili instaliranom aplikacijom na jailbroken uređaju, možda neće biti moguće pronaći .entitlements
fajlove ili embedded.mobileprovision
fajl direktno. Međutim, privilegije mogu biti izdvojene iz binarne aplikacije, prateći postupke opisane u poglavlju "iOS Basic Security Testing", posebno u odeljku "Acquiring the App Binary".
Čak i sa enkriptovanim binarnim fajlovima, određeni koraci mogu biti primenjeni za izdvajanje ovih fajlova. Ukoliko ovi koraci ne uspeju, može biti potrebno koristiti alate kao što su Clutch (ako je kompatibilan sa verzijom iOS-a), frida-ios-dump ili slični alati za dekripciju i izdvajanje aplikacije.
Izdvajanje Entitlements Plist fajla iz binarne aplikacije
Sa binarnom aplikacijom dostupnom na računaru, binwalk se može koristiti za izdvajanje svih XML fajlova. Sledeća komanda demonstrira kako to uraditi:
Alternativno, radare2 se može koristiti za tiho pokretanje komande i izlazak, pretražujući sve stringove u binarnom fajlu aplikacije koji sadrže "PropertyList":
Oba metoda, binwalk i radare2, omogućavaju ekstrakciju plist
datoteka, a pregled prvog (0x0015d2a4) otkriva uspešno vraćanje originalne datoteke privilegija iz Telegrama.
Za binarne aplikacije pristupljene na jailbroken uređajima (npr. putem SSH-a), komanda grep sa opcijom -a, --text
može se koristiti za tretiranje svih datoteka kao ASCII teksta:
Prilagođavanje zastavice -A num, --after-context=num
omogućava prikazivanje više ili manje linija. Ova metoda je primenjiva čak i na šifrovane binarne aplikacije i proverena je na više aplikacija iz App Store-a. Prethodno pomenuti alati takođe se mogu koristiti na jailbroken iOS uređajima u slične svrhe.
Napomena: Direktno korišćenje komande strings
nije preporučljivo za ovaj zadatak zbog ograničenja u pronalaženju relevantnih informacija. Umesto toga, preporučuje se korišćenje grep sa zastavicom -a
na binarnom fajlu ili korišćenje radare2 (izz
)/rabin2 (-zz
) za efikasnije rezultate.
Last updated