
Ngayon ay nabubuhay tayo na may libu-libong app sa ating mga mobile phone, ngunit kakaunti lamang ang mga taong talagang nakakaalam kung paano gamitin ang mga ito. Ano nga ba ang eksaktong ginagawa ng bawat Android app sa loob?Anong mga pahintulot ang ginagamit nito, o paano nito naaapektuhan ang performance at seguridad ng device? Para sa mga developer, security auditor, at marketing team, hindi na opsyonal ang pag-unawa at pagsusuri ng mga Android app: isa itong mahalagang bahagi para sa paglikha ng maaasahan, mabilis, at epektibong mga produkto. igalang ang privacy.
Sa artikulong ito, makikita mo ang kumpletong pangkalahatang-ideya ng Pagsusuri ng Android app mula sa maraming angguloMga kagamitan para sa pag-inspeksyon ng mga APK at naka-install na app, mga development utility tulad ng Android Studio APK Analyzer, mga auditing framework tulad ng Inspeckage, mga metodolohiya sa seguridad tulad ng OWASP MAS, at isang komprehensibong pangkalahatang-ideya ng mga pangunahing mobile analytics platform (Firebase, Contentsquare, Mixpanel, Countly, Localytics, RevenueCat, AppDynamics, at AppsFlyer). Lahat ay ipinaliwanag sa Espanyol (Espanya), nang may palakaibigang tono, ngunit hindi isinasakripisyo ang teknikal na kahusayan.
Ano ang pagsusuri ng Android app at para saan ito ginagamit?
Kapag pinag-uusapan natin ang pagsusuri ng mga aplikasyon sa Android, maaari nating tukuyin ang pareho teknikal na pagsusuri sa APK (mga pahintulot, code, manifest, mga serbisyo, atbp.) pati na rin ang pag-aaral ng mga sukatan ng paggamit, pag-uugali ng gumagamit, pagganap, mga error, o kahit na pandaraya sa advertising. Ang mga ito ay dalawang magkaibang ngunit komplementaryong mundo: tinitiyak ng teknikal na aspeto na ang app ay ligtas at matatag; ang aspeto ng product analytics ay nagbibigay-daan sa iyo upang maunawaan kung natutugunan ng app na iyon ang mga layunin nito sa negosyo.
Mula sa teknikal na pananaw, ang pagsusuri ay maaaring hatiin sa estatikong pagsusuri at dinamikong pagsusuriPinag-aaralan ng static monitoring ang APK o code nang hindi ito isinasagawa (decompilation, pagsusuri ng pahintulot, pagsusuri ng AndroidManifest.xml, atbp.). Inoobserbahan ng dynamic monitoring ang kilos ng app habang tumatakbo ito, tinatala ang trapiko sa network, mga tawag sa mga sensitibong API, paggamit ng cryptography, o paggawa ng file.
Sa larangan ng karanasan ng gumagamit at business analytics, ang pokus ay sa Pag-unawa kung paano ginagamit ng mga tao ang app, kung saan sila natigil, at kung bakit nila ito kino-convert o iniiwanDito pumapasok ang mga event tracking system, heat map, session recording, revenue dashboard, conversion funnel, at mobile marketing tools.
Mga tool para sa pagsusuri ng mga APK at naka-install na app
Para masimulan ang pag-unawa sa ginagawa ng isang Android app sa loob ng bahay, may mga espesyal na utility na nagbibigay-daan sa iyong siyasatin ang mga naka-install na APK o nakaimbak na .apk file sa device. Ipinapakita ng mga tool na ito ang lahat mula sa pangunahing data (pangalan, bersyon, laki) hanggang sa napakaliit na detalye tulad ng mga pahintulot, mga serbisyo sa background, o digital na lagda.
Isa sa mga pinakasikat na app sa larangang ito ay isang open-source APK analyzer na ipinagmamalaki ang pagiging ang pinakana-download na APK analysis app sa Google PlayBinibigyang-daan ka ng tool na ito na bumuo ng isang kumpletong ulat ng parehong naka-install nang mga application at mga .apk file na hindi pa naka-install, na mainam para sa pagsusuri ng isang app bago ito bigyan ng access sa device.
Ang karaniwang ulat ay naglalaman ng impormasyon tulad ng pangalan ng app, bersyon, minimum at target na mga bersyon ng AndroidMga petsa ng pag-install at pag-update, datos ng sertipiko at paglagda, mga pahintulot na ginamit (kasama ang paglalarawan), mga aktibidad, serbisyo, mga broadcast receiver, at mga provider ng nilalaman. Dinedetalye rin nito ang mga kinakailangan sa hardware (mandatory at opsyonal) at nag-aalok ng buong bersyon ng AndroidManifest.xml file na may opsyon na i-save ito sa format na nababasa ng tao.
Ang isa pang pangunahing function ay ang kakayahang kunin ang APK ng naka-install na app at i-save ito sa storage ng device, pati na rin i-export ang icon. Ito ay kapaki-pakinabang para sa pag-audit, paggawa ng mga backup, pagsubok sa mga nakahiwalay na kapaligiran, o simpleng pagsusuri ng isang partikular na bersyon bago mag-update.
Ang ganitong uri ng analyzer ay karaniwang may kasamang mga partikular na seksyon para sa mga pahintulot at pinagsama-samang istatistikaSa isang banda, pinapayagan ka nitong ilista ang lahat ng pahintulot na hinihiling ng mga application ng device, tingnan kung aling mga app ang humihiling ng bawat pahintulot, tingnan ang deskripsyon at antas ng proteksyon, at madaling mahanap ang mga app na pinaka-uhaw sa pribilehiyo. Sa kabilang banda, nag-aalok ito ng mga istatistika sa koleksyon ng naka-install na app: distribusyon ng mga target na bersyon ng Android, mga uri ng lagda, average na bilang ng mga aktibidad o pahintulot bawat application, atbp.
Android Studio APK Analyzer at tool na apkanalyzer
Para sa mga nagde-develop sa Android Studio, ang sariling platform ng Google ay may kasamang Mabisang APK analyzer na isinama sa development environmentMaaaring buksan ang tool na ito sa pamamagitan ng pag-drag ng APK o App Bundle papunta sa editor window, pag-double click sa APK sa build folder, o mula sa Build menu sa ilalim ng opsyong "Analyze APK". Mayroon din itong command-line na bersyon na tinatawag na apkanalyzer.
Binibigyang-daan ka ng APK Analyzer na tuklasin ang mga nilalaman ng file nang hierarchical, na sa loob ay katulad ng isang ZIP file na may organisadong mga folder at fileIpinapakita ng bawat entity (folder o file) ang raw file size nito at ang pagtatantya ng compressed download size na inihahatid ng Google Play, kasama ang porsyentong kinakatawan nito sa kabuuang laki. Nakakatulong ito na mabilis na matukoy kung aling mga resource, library, o DEX file ang kumukunsumo ng pinakamaraming espasyo.
Isang lubhang kawili-wiling punto ay ang paraan kung paano ginagamit ng APK Analyzer Muling buuin ang panghuling AndroidManifest.xmlSa mga proyektong may maraming variant ng produkto o mga library na may kanya-kanyang manifest, lahat ng mga file na iyon ay pinagsasama-sama sa isang file habang kino-compile. Ang APK ay nananatili sa binary format, ngunit kino-convert ito muli ng parser sa nababasang XML, na ipinapakita nang eksakto ang manifest na makikita ng system sa device at ginagawang mas madaling matukoy ang mga pagbabagong ipinakilala ng proseso ng pagbuo.
Isinasama rin ng manifesto viewer na ito ang mga kakayahan sa lintInaalerto ka nito sa mga error at babala, tulad ng mga hindi nakikilalang XML schema. Ang ilang alerto (halimbawa, ang mga para sa mga hindi rehistradong schema) ay ligtas na balewalain at maaaring pigilan sa pamamagitan ng pagdaragdag ng schema sa listahan ng hindi pinapansin sa mga kagustuhan ng Android Studio.
Ang isa pang pangunahing bahagi ng APK Analyzer ay ang DEX file viewer, na nag-aalok ng mga counter para sa mga klase, pakete, mga tinukoy at isinangguniang pamamaraanIto ay kapaki-pakinabang, bukod sa iba pang mga bagay, para sa pagsuri kung papalapit ka na sa limitasyon ng 64K na pamamaraan bawat DEX, pagpapasya kung paganahin ang multidex, o kung kailangang alisin ang mga dependency.
Ipinapakita ng class tree ang mga method na tinukoy sa DEX at mga referenced method (kabilang ang mga mula sa mga third-party library at mga karaniwang Android at Java API). Pinag-iiba ng tool ang dalawa, na tumutulong upang maunawaan kung anong bahagi ng badyet ng method ang dahil sa custom code at kung anong bahagi ang dahil sa mga dependency.
Nagtatampok din ang DEX view ng mga filter upang ipakita o itago ang mga field, method, at mga referenced methodKapag nagpapalawak ng isang klase, maaari mong piliin kung titingnan lamang ang mga lokal na kahulugan o lahat ng panlabas na sanggunian. Ang mga elementong ipinapakita nang naka-italiko ay nagpapahiwatig ng mga sanggunian na walang kahulugan sa DEX na iyon; ibig sabihin, mga pamamaraan o field na nasa iba pang mga DEX file o sa framework.
Para sa mga proyektong gumagamit ng obfuscation at code reduction gamit ang ProGuard o R8, pinapayagan ng analyzer ang paglo-load mga file ng pagmamapa (mapping.txt), seeds.txt, at usage.txt nagmumula sa parehong build. Kapag na-import na, pinapagana ang mga karagdagang function: pag-deobfuscate ng mga pangalan upang mabawi ang mga orihinal na klase at pamamaraan, pag-highlight ng mga node na hindi maaaring tanggalin (mga buto), at pagpapakita ng mga node na tinanggal habang isinasagawa ang proseso ng pagbabawas.
Ang dialog ng pag-upload ng file ay karaniwang awtomatikong tumuturo sa karaniwang path (app/build/outputs/mappings/release/at naghahanap ng eksaktong mga pangalan o mga pangalang naglalaman ng "mapping", "usage", o "seeds" na nagtatapos sa .txt. Gamit ang impormasyong ito, maaaring ipakita ng analyzer ang mga protektadong elemento na naka-bold at strikethrough ang mga wala na sa huling DEX.
Kasama rin sa DEX viewer ang isang context menu na may napakalakas na mga function: Tingnan ang bytecode (smali), maghanap ng mga paggamit, at bumuo ng mga panuntunan sa pangangalaga ng ProGuard.Sa pamamagitan ng pagpili ng klase, pamamaraan, o field, maaari kang magbukas ng dialog na may code sa representasyon ng smali, maghanap kung saan ginagamit ang simbolong iyon sa buong DEX, o awtomatikong bumuo ng keep rule upang maiwasan itong mabawasan sa mga susunod na build.
Bukod sa code, pinapayagan ka rin ng APK Analyzer na suriin ang pinal na bersyon ng maraming resources, tulad ng mga imahe, layout, o ang mismong resources.arsc fileHalimbawa, maaari mong tingnan ang mga naisalokal na string sa iba't ibang wika at mga configuration, suriin kung aling resource ang nag-overwrite ng kung alin sa isang partikular na variant, o tingnan ang mga nilalaman ng mga binary file na hindi karaniwang binubuksan nang manu-mano.
Panghuli, ang tool ay may kasamang isang kapaki-pakinabang na tampok para sa pagsusuri ng mga build: paghambingin ang dalawang APK o App BundleAng paglo-load ng kasalukuyang bersyon at paghahambing nito sa isang naunang nailathalang artifact ay nagbibigay ng pananaw sa mga pagkakaiba sa laki sa bawat entity, na mainam para sa pag-unawa kung saan nagmula ang pagtaas ng timbang sa pagitan ng mga bersyon (mga bagong mapagkukunan ng imahe, mga karagdagang library, mga pagbabago sa code, atbp.).
Paggamit ng mobile analytics upang maunawaan ang karanasan ng gumagamit
Higit pa sa purong teknikal na pagsusuri, mahalagang magkaroon ng mga kagamitan na nagbibigay-daan sa amin upang masukat kung ano ang ginagawa ng mga user sa loob ng appPaano ginagamit ng mga user ang mga screen, saan nangyayari ang mga error, kung aling mga campaign ang nagdadala ng de-kalidad na trapiko at alin ang hindi. Malawak ang sakop ng mga mobile analytics platform, kaya mahalagang malinaw na tukuyin ang mga pangangailangan ng iyong negosyo bago pumili ng isa.
Ang unang filter ay kinabibilangan ng pagtatanong sa iyong sarili kung, bukod sa pagkuha ng mga sukatan ng paggamit at pagganap, kailangan mo ba ang tool itaguyod ang pakikipagtulungan sa pagitan ng mga koponan (produkto, marketing, UX, development, suporta) o na nagbibigay-daan sa iyong sabay-sabay na suriin ang data ng app at mobile web. Ang isa pang mahalagang pamantayan ay ang integrasyon sa iba pang mga solusyon na ginagamit mo na, tulad ng mga CRM, mga tool sa automation ng marketing, o mga platform ng eksperimento.
Kabilang sa mga pinakamalawak na ginagamit na solusyon sa ecosystem ng Android, ang Firebase ay namumukod-tangi bilang plataporma ng nababaluktot na pag-develop, pagho-host at pinagsamang analyticsBinibigyang-daan ka ng Firebase na lumikha ng mga application para sa Android, iOS, at web sa pamamagitan ng paggamit ng database at authentication infrastructure nito, habang nag-aalok din ng isang mahusay na sistema para sa analytics at pag-uulat ng pagkabigo.
Sa tungkulin nito bilang isang tool sa analytics, pinapayagan ng Firebase ang mangolekta ng dami ng datos tungkol sa paggamit, trapiko, at interaksyon, bumuo ng mga awtomatiko at na-customize na kaganapan (hanggang ilang daan), subaybayan kung saan at gaano kadalas nabibigo ang app, at suportahan ang mga desisyon sa marketing o produkto gamit ang obhetibong datos sa halip na mga pagpapalagay.
Ang isa pang plataporma na lubos na nakatuon sa produkto at digital na karanasan ay ang Contentsquare, na higit pa sa mga klasikong sukatan at alok. detalyadong pagmamapa ng paglalakbay ng customer, mga heat map, mga replay ng sesyon, at pagsusuri ng errorAng layunin nito ay makatulong na maunawaan hindi lamang kung ano ang nangyayari sa app, kundi pati na rin kung bakit nangyayari ang ilang partikular na pag-uugali: kung saan natigil ang mga user, aling mga bahagi ng interface ang hindi nila pinapansin, o aling mga elemento ang nagdudulot ng pagkadismaya.
Ang mga modyul tulad ng Journeys ay nagbibigay ng pandaigdigang pananaw sa kumpletong mga paglalakbay mula pagpasok ng gumagamit hanggang sa pag-alis nila Sinusuri ang app o mobile site, na tumutukoy sa mga pangunahing ruta na dapat i-optimize. Isinasalarawan ng mga heatmap ang mga lugar na may pinakamaraming naki-click o hindi pinapansin, sinusuri ng Session Replay ang mga indibidwal na session upang matukoy ang mga pattern (halimbawa, paulit-ulit na mga pag-click dahil sa galit sa parehong CTA), at sinusuri ng Product Analytics ang mga sukatan tulad ng pag-aampon ng feature, conversion rate, pagkuha, at napansing pagsisikap.
Kasama rin sa Contentsquare ang isang modyul ng Pagsusuri ng Error na pangkatin ang mga teknikal at functional na error ayon sa impactTumutulong sa pagbibigay-priyoridad kung alin ang unang aayusin, at ang Impact Quantication ay gumagana upang isalin ang mga problemang iyon sa mga pagkalugi sa conversion, kita o pagpapanatili, isang bagay na lubhang kapaki-pakinabang kapag binibigyang-katwiran ang mga pagbabago sa mga stakeholder.
Isang kawili-wiling pag-aaral ng kaso ang ginawa ng isang pangkat na, gamit ang ganitong uri ng product analytics, ay nagpatunay sa kanilang hinala na Nakalilito para sa mga gumagamit ang signature screen sa mga mobile device.Nang ihambing ang web at mobile data, nakita nila na malinaw na mas mababa ang mga mobile conversion, siniyasat nang detalyado ang karanasan sa mobile, muling idinisenyo ang signature page gamit ang mobile-first na diskarte, at nagawang mapabuti nang malaki ang pag-aangkop sa iba't ibang device.
Mas mataas na segmentasyon ng gumagamit at pagsusuri ng pag-uugali
Para mas masusing suriin ang kilos ng mga gumagamit, ang ilang platform ay lubos na dalubhasa sa segmentasyon at paglikha ng cohortAng Mixpanel ay isa sa mga pinakakilalang halimbawa, na idinisenyo para sa parehong produkto at marketing, at nakatuon sa pagpapakita ng mga landas patungo sa conversion at pagsusuri kung paano kumikilos ang iba't ibang grupo ng gumagamit.
Sa Mixpanel, maaaring pangkatin ang mga user sa mga cohort ayon sa mga kilos na isinagawa o mga katangiang ibinahagiHalimbawa, ang mga taong nagsimula ng plano sa pagbabayad sa nakalipas na 30 araw, mga user na sumubok ng isang partikular na feature, o mga customer na bumili nang hindi bababa sa dalawang beses. Ang kalakasan ng system ay nasa mga custom properties at segmentation logic nito, na nagbibigay-daan para sa paglikha ng mga kumplikadong segment.
Maaaring pagsamahin ang mga pasadyang katangian mga katangian ng mga kaganapan, mga gumagamit o mga grupo sa mga bago at mas pangkalahatang katangian. Halimbawa, ang pagpapangkat-pangkat ng iba't ibang pinagmumulan ng UTM ng social media (Facebook, Instagram, Twitter) sa ilalim ng isang katangiang "Social" upang suriin ang kanilang pinagsamang pag-uugali. Ang lohika ng segmentasyon ay nagbibigay-daan sa iyong lumikha ng mga segment na nagsagawa ng mga partikular na kumbinasyon ng mga aksyon, tulad ng pagbili ng parehong produkto A at produkto B.
Isa pang natatanging tool, sa pagkakataong ito na may matinding pokus sa privacy, ay ang Countly, isang mobile, web, at desktop analytics solution na maaaring i-deploy sa sariling imprastraktura ng kumpanya, na nagbibigay ng ganap na kontrol sa datosIto ay lalong kawili-wili para sa mga regulated na sektor o mga kumpanya na may mahigpit na mga kinakailangan sa pagsunod.
Nag-aalok ang Countly ng pinahusay na seguridad, real-time na access sa detalyadong data (mga rich profile, mga indibidwal na antas ng pakikipag-ugnayan), at mga module na nakatuon sa suriin ang katapatan ng customer at tukuyin ang mga churnAng "Compliance Hub" nito ay nagbibigay-daan sa iyong pamahalaan ang pangongolekta ng datos ayon sa mga pahintulot, pati na rin ang mga kahilingan para sa pag-export o pagbura, na naaayon sa mga regulasyon sa proteksyon ng datos.
Mga platform ng marketing at subscription na may integrated analytics
Kapag ang pangunahing layunin ay mobile marketing, may mga partikular na solusyon na pinagsasama ang pagsukat, segmentasyon at pagpapatupad ng kampanya sa iisang plataporma. Ang Localytics ay isang magandang halimbawa: isinasama nito ang application analytics sa mga tool sa pagmemensahe at pag-personalize, na ginagawa itong lubhang kaakit-akit sa mga marketing team na nangangailangan ng isang pinag-isang sistema.
Nag-aalok ang Localytics ng mga detalyadong ulat ng kampanya para matingnan Aling mga aksyon ang may pinakamalaking epekto sa conversion, retention, ROI, churn, at mga pag-uninstall?Ang mga kakayahan nito sa predictive analytics ay nakakatulong na matukoy ang mga user na may mataas na posibilidad na mag-convert o umalis, na nagbibigay-daan sa pagpapadala ng mga personalized na mensahe sa tamang sandali.
Kasama rin sa platform ang mga smart customization module para sa lumikha ng mga segment batay sa profile, pag-uugali at kasaysayan at mula roon, maglulunsad ng mga kampanya at karanasan na iniangkop sa konteksto ng gumagamit, na lubos na nagpapabuti sa kaugnayan ng mga mensahe.
Sa larangan ng subscription app, ang RevenueCat ay naging isang mahalagang kagamitan para sa maraming koponan. Gamit ang isang medyo madaling i-integrate na SDK, pinapayagan nito ang pamahalaan ang mga mobile subscription, mangolekta ng mga naka-target na analytics, at maging ang pagsubok ng mga paywall nang hindi kinakailangang muling likhain ang gulong sa bawat proyekto.
Nagbibigay ang RevenueCat ng dashboard na nakatuon sa mga sukatan ng subscription: mga aktibong pagsubok, mga conversion sa pagsubok, mga aktibong user, kita, at MRR. Nag-aalok din ito ng napapasadyang mga tsart na may mga filter at segmentasyon upang makita, halimbawa, kung paano ipinamamahagi ang paulit-ulit na kita ayon sa bansa o ayon sa uri ng plano.
Isa sa mga kalakasan nito ay ang A/B testing ng mga presyo at paywalls, na nagbibigay-daan sa Subukan ang iba't ibang kombinasyon ng mga presyo, pakete, at promosyon at sukatin ang epekto ng bawat variant sa buong funnel ng subscription, mula sa unang pagbisita sa paywall hanggang sa pangmatagalang pagpapanatili.
Para sa kakayahang maobserbahan ang mga kumplikadong aplikasyon, nag-aalok ang AppDynamics ng isang full-stack monitoring approach, na sumasaklaw sa lahat mula sa mga microservice at serverless function hanggang sa mga pampubliko at pribadong API, at maging ang mga mobile app mismo. Ang layunin nito ay mabilis na matukoy ang mga problema sa pagganap at matukoy ang ugat ng sanhinasa code man ito, nasa dependency, o nasa external service.
Binibigyang-daan ka ng AppDynamics na iugnay ang data mula sa mga mobile device, browser, at mga custom na user upang Paghambingin ang karanasan sa pagitan ng iba't ibang bersyon ng app at tingnan kung saan naghihirap ang UX. Nagtatampok ito ng mga handa nang gamiting widget para sa pagbuo ng mga detalyadong dashboard at isang sintetikong module ng pagsubaybay na ginagaya ang mga daloy ng user at mga tawag sa API, na tumutukoy sa mga error bago pa man ito makaapekto sa mga totoong tao.
Panghuli, ang AppsFlyer ay partikular na nakatuon sa mga pangkat ng marketing na kailangang sukatin, i-attribute, at protektahan ang kanilang mga mobile campaign. Nag-aalok ito ng mga solusyon mula sa basic analytics hanggang sa mga advanced na feature, na may partikular na pokus sa... pagtuklas ng pandaraya sa advertising (halimbawa, mga bot na lumilikha ng mga pekeng pag-click).
Bukod sa proteksyon sa pandaraya, pinapayagan ka ng AppsFlyer na tukuyin mga pasadyang kaganapan sa loob ng app upang iugnay ang mga KPI tulad ng ROI o lifetime value sa mga partikular na aksyon ng user. Kasama rin dito ang mga incrementality test upang tantyahin kung gaano karaming mga conversion ang makakamit nang walang mga bayad na kampanya at sa gayon ay masukat ang tunay na epekto ng pamumuhunan sa advertising.
Bilang pandagdag sa lahat ng kwantitatibong pagsusuring ito, mahalagang isaalang-alang ang mga kagamitan tulad ng AppFollow, na nakatuon sa Subaybayan ang mga rating at review sa App Store at Google PlayDahil sa pagsusuri ng damdamin, posibleng makita ang ebolusyon ng tono ng mga review at paghambingin ang mga panahon, na makakakuha ng malinaw na mga pahiwatig kung paano nakikita ng mga user ang kalidad at karanasan ng application.
Pag-audit ng seguridad at advanced na pagsusuri gamit ang Inspeckage
Kapag ang layunin ay hindi gaanong marketing o produkto, kundi i-audit ang seguridad, suriin ang malware, o suriin ang panloob na pag-uugali ng isang appMay mga mas espesipikong balangkas na ginagamit. Isa sa mga pinakakawili-wili sa ecosystem ng Android ay ang Inspeckage (Android Package Inspector), na gumaganap bilang isang Xposed module.
Nagse-set up ang Inspeckage ng server sa mismong Android device, na maa-access sa pamamagitan ng adb mula sa computer, at nagbibigay-daan sa iyong makita mga real-time na kaganapan na nagaganap sa device habang tumatakbo ang appHindi tulad ng ibang mga kapaligiran sa pagsusuri tulad ng MobSF o AppMon, ang malaking bentahe nito ay nagbibigay-daan sa iyong obserbahan ang mga kaganapan nang hindi hinihinto ang dynamic analysis at madaling i-configure ang mga hook sa mga partikular na pamamaraan.
Ang code ng tool ay makukuha sa GitHub at maaari ring makuha bilang isang APK mula sa Play Store o sa Xposed repository. Kapag na-install na ang module, ito ay pinagana sa Xposed at makikita sa pangunahing interface. ang katayuan ng server, interface ng network, port, at utos ng adb kinakailangan upang kumonekta mula sa lokal na makina.
Nagpapakita ang app ng listahan ng mga app sa device, na may opsyong pumili lamang ng mga app para sa user o isama rin ang mga app para sa system. Makikita ito sa side menu. I-configure ang interface at port, paganahin ang authentication gamit ang username at password at isaayos ang iba pang mga parameter ng server.
Pagkatapos pumili at maglunsad ng app, magsisimula ang dynamic analysis. Isang webpage na naka-host sa device ang ia-access mula sa browser ng computer, kung saan ipapakita ang isang menu na may mga button para sa [hindi malinaw - posibleng "mga oportunidad" o "mga function"]. I-download ang APK o data mula sa internal storage, kumuha ng mga screenshot, maglapat ng iba't ibang configuration (tulad ng pag-disable sa FLAG_SECURE, pag-restart ng application, pagpili ng proxy, o pagpili kung aling mga uri ng event ang ire-record) at i-refresh ang mga resulta nang real time.
Nag-aalok din ang Inspeckage ng mga shortcut para magbukas ng tab gamit ang LogCat, tingnan kung tumatakbo ang app o module, at itago o ipakita ang mga detail panel. Ipinapakita ng panel ng impormasyon ng app pangalan ng pakete, UID, GUID, katayuan ng backup at isang uri ng TreeView na access sa internal storage, kung saan maaaring i-download ang mga file sa isang click lang.
Ang pangunahing katawan ng ulat ay nakaayos sa iba't ibang mga tab: isa na may mga aktibidad, pahintulot, serbisyo, tagapagbigay ng nilalaman, tagatanggap ng broadcast, at mga nakabahaging library, na may mga opsyon para maglunsad ng mga aktibidad o kumonsulta sa mga provider; isa pa ay nakalaan para sa SharedPreferences, na maaaring tingnan kapwa sa log format (upang maunawaan ang mga pagbabago sa mga baryabol sa paglipas ng panahon) at sa kasalukuyang estado ng file.
Isang napakalakas na tampok ay ang pagtatala ng lahat ng aktibidad na kriptograpiya ng aplikasyonIpinapakita ng seksyong ito ang mga algorithm, key, at naka-encrypt na impormasyong ginamit. Ang tab na "Hash" ay naglalaman ng lahat ng mga halaga kung saan inilalapat ang mga hash function at ang uri ng function na ginamit sa bawat kaso.
Inililista ng seksyong "File System" ang lahat ng file na nakipag-ugnayan sa app, na kapaki-pakinabang para sa pagtukoy kung lumilikha ito ng mga kahina-hinalang file o nagda-download ng mga application mula sa mga hindi opisyal na mapagkukunan. Ipinapakita ng tab na "IPC" ang mga pagtatangka sa komunikasyon sa pagitan ng mga proseso gamit ang mga intent.
Pinagsasama-sama ng tab na "Mga Hooks" ang aktibidad ng lahat ng mga pamamaraan kung saan na-configure ang mga custom na hook. Ang paglikha ng mga ito ay medyo simple salamat sa isang graphical interface kung saan maaari mong Ipahiwatig ang paraan ng pag-intercept at ang uri ng hookMaaaring tukuyin ang mga hook na nagbabago sa mga input parameter o return value ng method, na nagbubukas ng pinto sa maraming test scenario.
Makikita ang mga karagdagang function sa side menu. manipulahin ang mga halaga ng fingerprinting ng device o mga coordinate ng GPSNakakatulong ito na maiwasan ang mga mekanismo ng pagtukoy ng emulator o location spoofing. Bukod pa sa mga nabanggit, maaaring i-log ng Inspeckage ang mga query sa database, trapiko sa network, WebView, at iba pang mga mapagkukunang na-access ng mga Content Provider.
Dahil sa malawak na hanay ng mga kakayahang ito, ang Inspeckage ay itinuturing na isang Isang napakakomprehensibong kasangkapan para mabawasan ang oras ng pagsusuri ng sample, lalong kapaki-pakinabang para sa mga nagsisimula pa lamang sa pagsusuri ng mobile malware o mga pag-audit ng seguridad ng Android app.
Mga metodolohiya sa seguridad, mga banta, at laboratoryo ng pagsubok
Ang kasalukuyang konteksto, kasama ang bilyun-bilyong aktibong Android device at application na humahawak ng sensitibong data (pagbabangko, kalusugan, edukasyon, atbp.), ay ginagawang mahalaga ang pagsasagawa ng seguridad sa buong lifecycle ng appHindi lamang ito tungkol sa pag-iwas sa mga halatang pagkakamali, kundi tungkol din sa pagsunod sa mga regulasyon tulad ng GDPR o mga pamantayan ng industriya tulad ng PCI DSS kapag nagpoproseso ng mga pagbabayad.
Ang mga aplikasyon ng Android ay nalalantad sa maraming banta, na marami sa mga ito ay tinutugunan sa mga proyekto tulad ng Nangungunang 10 ng OWASP MobileKabilang sa mga pinakamahalagang isyu, maaari nating i-highlight ang maling paggamit ng platform (hindi paggamit ng mga native security mechanism, hindi maayos na pamamahala ng mga pahintulot, pang-aabuso sa mga nakalantad na API), hindi ligtas na pag-iimbak ng data (mga hindi naka-encrypt na database, mga log na may sensitibong impormasyon, hindi maayos na protektadong cookies), o ang mga komunikasyon na hindi ligtas (paggamit ng mga lumang protocol o hindi naka-encrypt na trapiko).
Mga problema sa mahinang pagpapatotoo at pamamahala ng sesyon (mahihinang password, mga sesyon na hindi nag-e-expire, mga token na hindi maayos ang proteksyon), hindi sapat na pag-encrypt na nagpapahintulot sa pag-access sa data ng mga pisikal na umaatake o malware, at mga pagkabigo sa awtorisasyon na nagbubukas ng pinto sa mga pagtaas ng pribilehiyo sa pamamagitan ng mga awtomatikong pag-atake.
Sa panig ng pag-develop, ang kalidad ng client-side code ay mahalaga: masasamang gawi, kawalan ng kontrol sa error, o hindi maayos na pagpapatupad ng mga tungkulin sa seguridad Maaari itong humantong sa mga buffer overflow at iba pang mga kahinaan. Dagdag pa rito ang panganib ng pagbabago ng code (mga malisyosong binary patch, binagong resources, atbp.). mga pekeng app na nagpapanggap na lehitimo), reverse engineering ng APK at pagkakaroon ng mga "nakatagong" o debugging functionality na hindi naka-disable sa produksyon.
Upang matugunan ang mga bantang ito, ang proyektong OWASP Mobile Application Security (MAS) ay nagmumungkahi ng isang metodolohiya at checklist ng mga kinakailangan sa seguridad sumasaklaw sa ilang mga larangan: ligtas na arkitektura at disenyo, privacy at pag-iimbak ng datos, wastong kriptograpiya, pagpapatotoo at pamamahala ng sesyon, ligtas na komunikasyon sa network, interaksyon ng platform, kalidad ng code at configuration ng build, at mga mekanismo ng katatagan sa panig ng kliyente.
Ang pagsusuri ng mga kinakailangang ito ay karaniwang pinagsasama ang estatiko at dinamikong pagsusuri. Sa estatikong bahagi, ang mga artifact tulad ng source code, na-decompile na code, mga binary at mga kaugnay na file Kung hindi pinapatakbo ang app, maaaring mahinuha ang mga potensyal na kahinaan mula sa metadata, mga function call, at daloy ng programa. Ang mga tool tulad ng Mara (isang analysis framework na nagbibigay-daan sa pag-disassemble at pag-decompile ng mga APK, defuzzification, string analysis, permission extraction, atbp.), ang APK Analyzer mismo, at mga solusyon tulad ng JAADAS para sa static IPC analysis ay partikular na kapaki-pakinabang sa yugtong ito.
Sa dynamic analysis, sa kabilang banda, ang app ay tumatakbo sa isang kontroladong kapaligiran at ang kilos nito ay naoobserbahan sa ilalim ng iba't ibang mga kondisyon. Dito ginagamit ang mga tool tulad ng Drozer, na nakikipag-ugnayan sa Dalvik virtual machine, sa mga IPC endpoint, at sa operating system para mahanap ang mga kahinaan; Burp Suite, na gumagana bilang isang web proxy para makuha at manipulahin ang trapiko sa pagitan ng app at server; at Inspeckage, na idinisenyo upang i-instrument at obserbahan ang app nang real time gamit ang mga hook sa Android API.
Mayroon ding mga hybrid framework tulad ng Mobile Security Framework (MobSF), na pinagsasama ang static at dynamic analysis at tumutulong sa mag-organisa ng mas komprehensibong mga pag-audit mula sa iisang kagamitan. Para sa mga gustong magsanay, ang isang napakaepektibong paraan upang matuto ay ang paggamit ng mga sadyang mahinang aplikasyon.
Kabilang sa mga praktikal na app na ito ang mga proyektong tulad ng InsecureShop (isang online store na madaling maapektuhan na may halos dalawampung posibleng depekto, karamihan ay hindi nangangailangan ng root), AndroGoat (ang unang app na madaling maapektuhan na binuo sa Kotlin, na may ilang dosenang iba't ibang kahinaan), InsecureBank V2 (isang banking app na may Python backend, na dinisenyo na may maraming kahinaan) at ang Crackmes mula mismo sa proyektong MAS, na nakabalangkas sa ilang antas ng kahirapan na uri ng CTF.
Sa madaling salita, ang pagsusuri ng Android app ay higit pa sa pagtingin lamang sa mga pahintulot o pagbibilang ng mga download. Kabilang dito ang pagsasama-sama ng Mga tool sa inspeksyon ng APK, mga kapaligirang dynamic analysis, mga metodolohiya sa seguridad, at mga platform ng analytics ng produkto at marketingKapag ang lahat ng mga piyesang ito ay isinama sa lifecycle ng app, ang resulta ay mas ligtas at mahusay na mga aplikasyon na naaayon sa mga totoong pangangailangan ng mga gumagamit at ng negosyo.