Objection Tutorial
Bugsbounty wenk: teken aan vir Intigriti, 'n premium bugsbounty platform geskep deur hackers, vir hackers! Sluit by ons aan by https://go.intigriti.com/hacktricks vandag, en begin om belonings te verdien tot $100,000!
Inleiding
objection - Runtime Mobile Exploration
Objection is 'n runtime mobiele verkenningstoolkit, aangedryf deur Frida. Dit is gebou met die doel om te help om mobiele aansoeke en hul sekuriteitspostuur te assesseer sonder die nodigheid van 'n gejailbreakte of gewortelde mobiele toestel.
Nota: Dit is nie 'n vorm van jailbreak / wortel omseil nie. Deur objection
te gebruik, is jy steeds beperk deur al die beperkings wat deur die toepaslike sandboks wat jy in die gesig staar, opgelê word.
Hervat
Die doel van objection is om die gebruiker die hoofaksies wat Frida bied, te laat aanroep. Andersins sal die gebruiker 'n enkele skrips vir elke aansoek wat hy wil toets, moet skep.
Tutoriaal
Vir hierdie tutoriaal gaan ek die APK gebruik wat jy hier kan aflaai:
Of vanaf sy oorspronklike bewaarplek (laai app-release.apk af)
Installasie
Verbinding
Maak 'n gewone ADB-verbinding en begin die frida-bediener op die toestel (en kontroleer dat frida in beide die klient en die bediener werk).
As jy 'n ge-root toestel gebruik, is dit nodig om die aansoek te kies wat jy binne die --gadget opsie wil toets. in hierdie geval:
Basiese Aksies
Nie alle moontlike bevele van besware sal in hierdie handleiding gelys word nie, slegs diegene wat ek meer nuttig gevind het.
Omgewing
Sommige interessante inligting (soos wagwoorde of paaie) kan binne die omgewing gevind word.
Frida Inligting
Oplaai/Aflaai
Voer frida-skrip in
SSLPinning
Wortelopsporing
Uitvoer Bevel
Skermskote
Statische analise gemaak Dinamies
In 'n werklike toepassing behoort ons al die inligting wat in hierdie deel ontdek is te ken voordat ons objeksie gebruik danksy statische analise. Hoe dan ook, op hierdie manier kan jy dalk iets nuuts sien aangesien jy hier slegs 'n volledige lys van klasse, metodes en uitgevoerde objekte sal hê.
Dit is ook nuttig as jy op een of ander manier nie 'n leesbare bronkode kan kry van die program nie.
Lys aktiwiteite, ontvangers en dienste
Frida sal 'n fout lewer as geen gevind word
Kry huidige aktiwiteit
Soek Klas
Laten ons begin om vir klasse binne ons aansoek te soek
Soekmetodes van 'n klas
Nou laat ons die metodes binne die klas MainActivity onttrek:
Lys gedeclareerde Metodes van 'n klas met hul parameters
Laat ons uitsorteer watter parameters die metodes van die klas benodig:
Lys klasse
Jy kan ook al die klasse lys wat gelaai is binne die huidige toepassing:
Dit is baie nuttig as jy die metode van 'n klas wil hook en jy weet net die naam van die klas. Jy kan hierdie funksie gebruik om te soek watter module die klas besit en dan sy metode te hook.
Hooking is maklik
Hooking ('watching') 'n metode
Van die bronkode van die aansoek weet ons dat die funksie sum() van MainActivity elke sekonde uitgevoer word. Laat ons probeer om alle moontlike inligting elke keer as die funksie aangeroep word te dump (argumente, terugkeerwaarde en terugsporing):
Aanhaking (kyk) van 'n hele klas
Eintlik vind ek al die metodes van die klas MainActivity regtig interessant, laat ons hulle almal aanhaak. Wees versigtig, dit kan 'n aansoek laat vasloop.
Indien jy speel met die aansoek terwyl die klas gehook is, sal jy sien wanneer elke funksie aangeroep word, sy argumente en die terugkeer waarde.
Verandering van die booleaanse terugkeerwaarde van 'n funksie
Vanuit die bronkode kan jy sien dat die funksie checkPin 'n String as argument kry en 'n boolean teruggee. Laat ons die funksie altyd waar teruggee:
Nou, as jy enigiets in die tekskas vir die PIN-kode skryf, sal jy sien dat enigiets geldig is:
Klasinstansies
Soek na en druk lewende instansies van 'n spesifieke Java-klas uit, gespesifiseer deur 'n ten volle gekwalifiseerde klasnaam. Uit is die resultaat van 'n poging om 'n stringwaarde vir 'n ontdekte beswaar te kry wat tipies eiendomswaardes vir die objek sou bevat.
Sleutelkluis/Intents
Jy kan speel met die sleutelkluis en intents deur:
Geheue
Uitlek
Lys
Aan die onderkant van die lys kan jy frida sien:
Laat ons kyk wat frida uitvoer:
Soek/Skryf
Jy kan ook binne die geheue soek en skryf met objection:
SQLite
Jy kan die opdrag sqlite
gebruik om met sqlite-databasisse te interageer.
Uitgang
Wat ek mis in Objection
Die hooking metodes laat soms die aansoek vasloop (dit is ook as gevolg van Frida).
Jy kan nie die instansies van die klasse gebruik om funksies van die instansie te roep nie. En jy kan nie nuwe instansies van klasse skep en hulle gebruik om funksies te roep nie.
Daar is nie 'n kortpad (soos dié vir sslpinnin) om al die algemene kriptografie metodes wat deur die aansoek gebruik word te hook om gesifreerde teks, plat teks, sleutels, IV's en algoritmes wat gebruik word, te sien.
Bug bounty wenk: teken aan vir Intigriti, 'n premium bug bounty platform geskep deur hackers, vir hackers! Sluit by ons aan by https://go.intigriti.com/hacktricks vandag, en begin om belonings te verdien tot $100,000!
Last updated