iOS Basic Testing Operations
Muhtasari wa Utambuzi wa Kifaa cha iOS na Ufikiaji
Kuutambua UDID wa Kifaa cha iOS
Ili kutambua kifaa cha iOS kwa kipekee, mfuatano wa tarakimu 40 unaojulikana kama UDID unatumika. Kwenye macOS Catalina au toleo jipya, hii inaweza kupatikana kwenye app ya Finder, kwani iTunes haipo tena. Kifaa, kinapounganishwa kupitia USB na kuchaguliwa kwenye Finder, kinaonyesha UDID yake pamoja na taarifa nyingine wakati maelezo chini ya jina lake yanapobofya.
Kwa matoleo ya macOS kabla ya Catalina, iTunes inarahisisha kugundua UDID. Maelekezo ya kina yanaweza kupatikana hapa.
Zana za mstari wa amri zinatoa njia mbadala za kupata UDID:
Kutumia zana ya I/O Registry Explorer
ioreg
:
Kutumia
ideviceinstaller
kwa macOS (na Linux):
Kutumia
system_profiler
:
Kutumia
instruments
kuorodhesha vifaa:
Kupata Ufikiaji wa Shell ya Kifaa
Ufikiaji wa SSH umewezeshwa kwa kufunga pakiti ya OpenSSH baada ya jailbreak, kuruhusu muunganisho kupitia ssh root@<device_ip_address>
. Ni muhimu kubadilisha nywila za msingi (alpine
) kwa watumiaji root
na mobile
ili kulinda kifaa.
SSH kupitia USB inakuwa muhimu pindi Wi-Fi haitapatikana, kwa kutumia iproxy
kuunganisha bandari za kifaa kwa muunganisho wa SSH. Mpangilio huu unaruhusu ufikiaji wa SSH kupitia USB kwa kukimbia:
On-device shell applications, kama NewTerm 2, hurahisisha mwingiliano wa moja kwa moja na kifaa, hasa ni muhimu kwa ajili ya kutatua matatizo. Reverse SSH shells pia zinaweza kuanzishwa kwa ufikiaji wa mbali kutoka kwa kompyuta mwenyeji.
Kurekebisha Nywila Iliyosahaulika
Ili kurekebisha nywila iliyosahaulika kurudi kwenye chaguo-msingi (alpine
), kuhariri faili ya /private/etc/master.passwd
ni muhimu. Hii inahusisha kubadilisha hash iliyopo na hash ya alpine
karibu na entries za mtumiaji root
na mobile
.
Mbinu za Uhamasishaji wa Data
Kuhamisha Faili za Data za Programu
Archiving and Retrieval via SSH and SCP: Ni rahisi kuhifadhi saraka ya Data ya programu kwa kutumia tar
na kisha kuhamasisha kwa kutumia scp
. Amri iliyo hapa chini inahifadhi saraka ya Data katika faili ya .tgz, ambayo kisha inavutwa kutoka kwa kifaa:
Zana za Kiolesura cha Mtumiaji
Kutumia iFunbox na iExplorer: Zana hizi za GUI ni muhimu kwa usimamizi wa faili kwenye vifaa vya iOS. Hata hivyo, kuanzia iOS 8.4, Apple ilipunguza ufikiaji wa zana hizi kwenye sandbox ya programu isipokuwa kifaa kimefanywa jailbroken.
Kutumia Objection kwa Usimamizi wa Faili
Shell ya Kihusiano na Objection: Kuanzisha objection kunatoa ufikiaji wa saraka ya Bundle ya programu. Kutoka hapa, unaweza kuhamasisha kwenye saraka ya Hati za programu na kusimamia faili, ikiwa ni pamoja na kupakua na kupakia faili hizo kutoka na kwenda kwenye kifaa cha iOS.
Kupata na Kutolewa kwa Programu
Kupata Faili la IPA
Kiungo cha Usambazaji Juu ya Hewa (OTA): Programu zinazotolewa kwa ajili ya majaribio kupitia OTA zinaweza kupakuliwa kwa kutumia chombo cha kupakua mali za huduma za ITMS, ambacho kimewekwa kupitia npm na kinatumika kuhifadhi faili la IPA kwenye kifaa.
Kutoa Binary ya App
Kutoka kwa IPA: Fungua IPA ili kufikia binary ya app iliyotolewa.
Kutoka kwa Kifaa kilichovunjwa: Sakinisha app na toa binary iliyotolewa kutoka kwenye kumbukumbu.
Mchakato wa Kufungua
Muhtasari wa Kufungua kwa Mikono: Binary za app za iOS zimefungwa na Apple kwa kutumia FairPlay. Ili kufanya reverse-engineering, lazima utoe binary iliyotolewa kutoka kwenye kumbukumbu. Mchakato wa kufungua unajumuisha kuangalia bendera ya PIE, kurekebisha bendera za kumbukumbu, kubaini sehemu iliyofungwa, na kisha kutoa na kubadilisha sehemu hii na fomu yake iliyotolewa.
Kuangalia na Kubadilisha Bendera ya PIE:
Kutambua Sehemu Iliyosimbwa na Kutupa Kumbukumbu:
Tathmini anwani za mwanzo na mwisho za sehemu iliyosimbwa kwa kutumia otool
na utupe kumbukumbu kutoka kwa kifaa kilichovunjwa kwa kutumia gdb.
Kufuta Sehemu Iliyoandikwa kwa Siri:
Badilisha sehemu iliyokuwa imeandikwa kwa siri katika programu asilia na dump iliyotolewa.
Kumaliza Kufichua: Badilisha metadata ya binary ili kuonyesha kutokuwepo kwa usimbuaji kwa kutumia zana kama MachOView, ukipanga cryptid
kuwa 0.
Kufichua (Kiotomatiki)
frida-ios-dump
Zana ya frida-ios-dump inatumika kwa kufichua na kutoa programu kiotomatiki kutoka kwa vifaa vya iOS. Kwanza, mtu anapaswa kuunda dump.py
kuungana na kifaa cha iOS, ambayo inaweza kufanywa kupitia localhost kwenye bandari 2222 kupitia iproxy au moja kwa moja kupitia anwani ya IP ya kifaa na bandari.
Programu zilizowekwa kwenye kifaa zinaweza kuorodheshwa kwa amri:
Ili kudump programu maalum, kama Telegram, amri ifuatayo inatumika:
Hii amri inaanzisha upakuaji wa programu, na kusababisha kuundwa kwa faili ya Telegram.ipa
katika saraka ya sasa. Mchakato huu unafaa kwa vifaa vilivyovunjwa, kwani programu zisizosainiwa au zisizo sahihi zinaweza kufungwa upya kwa kutumia zana kama ios-deploy.
flexdecrypt
Zana ya flexdecrypt, pamoja na kifungashio chake flexdump, inaruhusu kutoa faili za IPA kutoka kwa programu zilizowekwa. Amri za usakinishaji za flexdecrypt kwenye kifaa zinajumuisha kupakua na kusakinisha kifurushi cha .deb
. flexdump inaweza kutumika kuorodhesha na kupakua programu, kama inavyoonyeshwa katika amri zilizo hapa chini:
bagbak
bagbak, chombo kingine kinachotumia Frida, kinahitaji kifaa kilichovunjwa ili kufungua programu:
r2flutch
r2flutch, ikitumia radare na frida, inatumika kwa ajili ya ufichuzi wa programu na dumping. Taarifa zaidi zinaweza kupatikana kwenye GitHub page.
Kuweka Programu
Sideloading inamaanisha kufunga programu nje ya Duka rasmi la Programu. Mchakato huu unashughulikiwa na installd daemon na unahitaji programu zisainiwe kwa cheti kilichotolewa na Apple. Vifaa vilivyofanywa jailbroken vinaweza kupita hili kupitia AppSync, kuruhusu ufungaji wa pakiti za IPA zenye sahihi bandia.
Zana za Sideloading
Cydia Impactor: Zana ya kusaini na kufunga faili za IPA kwenye iOS na faili za APK kwenye Android. Miongozo na ufumbuzi wa matatizo yanaweza kupatikana kwenye yalujailbreak.net.
libimobiledevice: Maktaba kwa ajili ya Linux na macOS kuwasiliana na vifaa vya iOS. Amri za ufungaji na mifano ya matumizi ya ideviceinstaller zinatolewa kwa ajili ya kufunga programu kupitia USB.
ipainstaller: Zana hii ya mstari wa amri inaruhusu ufungaji wa moja kwa moja wa programu kwenye vifaa vya iOS.
ios-deploy: Kwa watumiaji wa macOS, ios-deploy inafunga programu za iOS kutoka kwenye mstari wa amri. Kufungua IPA na kutumia lipo
-m
kwa ajili ya uzinduzi wa moja kwa moja wa programu ni sehemu ya mchakato.Xcode: Tumia Xcode kufunga programu kwa kuingia kwenye Window/Devices and Simulators na kuongeza programu kwenye Installed Apps.
Ruhusu Ufunguzi wa Programu kwenye Vifaa Visivyo vya iPad
Ili kufunga programu maalum za iPad kwenye vifaa vya iPhone au iPod touch, thamani ya UIDeviceFamily katika faili ya Info.plist inahitaji kubadilishwa kuwa 1. Marekebisho haya, hata hivyo, yanahitaji kusaini tena faili ya IPA kutokana na ukaguzi wa uthibitisho wa sahihi.
Kumbuka: Njia hii inaweza kushindwa ikiwa programu inahitaji uwezo wa kipekee kwa mifano mipya ya iPad wakati ikitumia iPhone au iPod touch ya zamani.
Marejeo
Last updated