Teljes körű útmutató az Android alkalmazások elemzéséhez

  • Az Android alkalmazáselemzés ötvözi a technikai APK-ellenőrzést, a biztonsági auditálást, valamint a használati és üzleti elemzéseket.
  • Az olyan eszközök, mint az APK Analyzer, az Android Studio, az Inspeckage és az OWASP MAS keretrendszerek lehetővé teszik a hibák észlelését és a kód optimalizálását.
  • A mobilanalitikai platformok (Firebase, Contentsquare, Mixpanel stb.) segítenek megérteni a viselkedést, a konverziót és a teljesítményt.
  • A biztonság, a megfigyelhetőség és a termékmutatók integrálása az alkalmazás életciklusába javítja a minőséget, a megfelelőséget és a befektetés megtérülését (ROI).

Android alkalmazáselemzés

Manapság több ezer alkalmazás van a mobiltelefonjainkon, mégis kevesen tudják, hogyan kell használni őket. Pontosan mit csinálnak az egyes Android alkalmazások belül?Milyen jogosultságokat használ, vagy hogyan befolyásolja az eszköz teljesítményét és biztonságát? A fejlesztők, biztonsági auditorok és marketingcsapatok számára az Android-alkalmazások megértése és elemzése már nem opcionális: kulcsfontosságú eleme a megbízható, gyors és hatékony termékek létrehozásának. tiszteletben tartja a magánéletet.

Ebben a cikkben teljes áttekintést találsz a következőkről: Android alkalmazás elemzés több szempontbólEszközök APK-k és telepített alkalmazások vizsgálatára, fejlesztői segédprogramok, mint például az Android Studio APK Analyzer, auditálási keretrendszerek, mint például az Inspeckage, biztonsági módszertanok, mint például az OWASP MAS, valamint a főbb mobilanalitikai platformok (Firebase, Contentsquare, Mixpanel, Countly, Localytics, RevenueCat, AppDynamics és AppsFlyer) átfogó áttekintése. Mindez spanyolul (spanyolországi nyelven), barátságos hangnemben, de a technikai szigorúság feláldozása nélkül.

Mi az az Android alkalmazáselemzés és mire használják?

Amikor Android-alkalmazások elemzéséről beszélünk, mindkettőre utalhatunk technikailag elemezze az APK-t (engedélyek, kód, manifest, szolgáltatások stb.), valamint a használati mutatók, a felhasználói viselkedés, a teljesítmény, a hibák vagy akár a hirdetési csalások tanulmányozása. Két különálló, de egymást kiegészítő világról van szó: a technikai oldal biztosítja az alkalmazás biztonságát és robusztusságát; a termékanalitikai oldal lehetővé teszi annak megértését, hogy az alkalmazás megfelel-e üzleti céljainak.

Technikai szempontból az elemzés felosztható statikus analízis és dinamikus analízisA statikus monitorozás a APK-t vagy a kódot futtatás nélkül vizsgálja (dekompilálás, jogosultságelemzés, AndroidManifest.xml áttekintése stb.). A dinamikus monitorozás az alkalmazás viselkedését figyeli futás közben, naplózza a hálózati forgalmat, hívja az érzékeny API-kat, használja a kriptográfiát vagy hoz létre fájlokat.

A felhasználói élmény és az üzleti elemzés területén a hangsúly a következőkön van: Megértjük, hogyan használják az emberek az alkalmazást, hol akadnak el, és miért konvertálnak vagy hagyják elItt jönnek képbe az eseménykövető rendszerek, a hőtérképek, a munkamenet-rögzítés, a bevételi irányítópultok, a konverziós csatornák és a mobilmarketing eszközök.

Eszközök APK-k és telepített alkalmazások elemzéséhez

Ahhoz, hogy elkezdhesd megérteni, mit csinál egy Android alkalmazás belsőleg, léteznek speciális segédprogramok, amelyek lehetővé teszik, hogy telepített APK-k vagy tárolt .apk fájlok ellenőrzése az eszközön. Ezek az eszközök mindent megjelenítenek az alapvető adatoktól (név, verzió, méret) kezdve az olyan apró részletekig, mint az engedélyek, a háttérszolgáltatások vagy a digitális aláírás.

Az egyik legnépszerűbb alkalmazás ezen a területen egy nyílt forráskódú APK-analizátor, amely azzal büszkélkedhet, hogy a legtöbbet letöltött APK elemző alkalmazás a Google PlayenEz az eszköz lehetővé teszi, hogy nagyon teljes körű jelentést készíts mind a már telepített alkalmazásokról, mind a még nem telepített .apk fájlokról, ami nagyszerű egy alkalmazás ellenőrzésére, mielőtt hozzáférést adna neki az eszközhöz.

A tipikus jelentés olyan információkat tartalmaz, mint például alkalmazás neve, verziója, az Android minimális és célverzióiTelepítési és frissítési dátumok, tanúsítvány- és aláírási adatok, használt engedélyek (leírással), tevékenységek, szolgáltatások, műsorszóró vevők és tartalomszolgáltatók. Részletesen ismerteti a hardverkövetelményeket (kötelező és opcionális), és az AndroidManifest.xml fájl teljes verzióját kínálja azzal a lehetőséggel, hogy ember által olvasható formátumban menthető.

Egy másik kulcsfontosságú funkció az a képesség, hogy telepített alkalmazás APK-jának kibontása és mentse el az eszköz tárhelyére, valamint exportálja az ikont. Ez hasznos auditáláshoz, biztonsági mentések készítéséhez, elszigetelt környezetekben való teszteléshez, vagy egyszerűen egy adott verzió frissítés előtti áttekintéséhez.

Ez a fajta analizátor általában külön részeket is tartalmaz a következőkhöz: engedélyek és összesített statisztikákEgyrészt lehetővé teszi az eszköz alkalmazásai által kért összes engedély listázását, az egyes engedélyeket kérő alkalmazások megtekintését, a leírás és a védelmi szint megtekintését, valamint a legtöbb jogosultságra éhes alkalmazások egyszerű megtalálását. Másrészt statisztikákat kínál a telepített alkalmazásgyűjteményről: a célzott Android-verziók eloszlása, az aláírás-típusok, az alkalmazásokonkénti átlagos tevékenységek vagy engedélyek száma stb.

Android Studio APK elemző és apkanalyzer eszköz

Azok számára, akik az Android Studio-ban fejlesztenek, a Google saját platformja tartalmaz egy Hatékony APK-elemző, amely integrálva van a fejlesztői környezetbeEz az eszköz megnyitható egy APK vagy alkalmazáscsomag szerkesztőablakba húzásával, az APK dupla kattintásával a build mappában, vagy a Build menü „APK elemzése” opciójának kiválasztásával. Parancssori verziója is van, melynek neve apcsatorna-analizátor.

Az APK Analyzer lehetővé teszi a fájl tartalmának hierarchikus vizsgálatát, ami belsőleg hasonló egy ZIP fájl rendezett mappákkal és fájlokkalMinden entitás (mappa vagy fájl) megjeleníti a nyers fájlméretét és a Google Play által biztosított tömörített letöltési méret becsült értékét, valamint a teljes méret százalékos arányát. Ez segít gyorsan azonosítani, hogy mely erőforrások, könyvtárak vagy DEX fájlok foglalják a legtöbb helyet.

Egy nagyon érdekes szempont az APK Analyzer működése. Építsd újra a végleges AndroidManifest.xml fájltTöbb termékváltozattal vagy saját manifesttel rendelkező könyvtárral rendelkező projektekben az összes fájlt egyetlen fájlba egyesítik a fordítás során. Az APK bináris formátumban marad, de az elemző visszaalakítja olvasható XML-lé, pontosan azt a manifestet jelenítve meg, amelyet a rendszer látni fog az eszközön, és megkönnyítve a build folyamat által bevezetett változtatások észlelését.

Ez a manifesztó-megjelenítő a következőket is tartalmazza: szöszölési képességekEz hibákra és figyelmeztetésekre figyelmeztet, például a felismeretlen XML-sémákra. Egyes riasztások (például a nem regisztrált sémákra vonatkozóak) biztonságosan figyelmen kívül hagyhatók, és letilthatók, ha a sémát hozzáadjuk a figyelmen kívül hagyandók listájához az Android Studio beállításaiban.

Az APK Analyzer egy másik alapvető összetevője a DEX fájlmegjelenítő, amely a következőket kínálja: számlálók osztályokhoz, csomagokhoz, definiált és hivatkozott metódusokhozEz többek között hasznos annak ellenőrzésére, hogy közeledik-e a DEX-enkénti 64K-s metóduskorlát, annak eldöntésére, hogy engedélyezze-e a multidexet, vagy hogy el kell-e távolítani a függőségeket.

Az osztályfa a DEX-ben definiált és a hivatkozott metódusokat jeleníti meg (beleértve a harmadik féltől származó könyvtárakból és a szabványos Android és Java API-kból származókat is). Az eszköz különbséget tesz a kettő között, segítve megérteni, hogy a metódus költségvetésének mekkora része köszönhető az egyéni kódnak, és mekkora része a függőségeknek.

A DEX nézet ezenkívül a következő funkciókat is kínálja: szűrők mezők, metódusok és hivatkozott metódusok megjelenítéséhez vagy elrejtéséhezEgy osztály kibontásakor kiválaszthatjuk, hogy csak a helyi definíciókat vagy az összes külső hivatkozást szeretnénk-e megtekinteni. A dőlt betűvel szedett elemek olyan hivatkozásokat jelölnek, amelyekhez nem tartozik definíció az adott DEX-ben; azaz olyan metódusokat vagy mezőket, amelyek más DEX fájlokban vagy a keretrendszerben találhatók.

Az olyan projektek esetében, amelyek ProGuard vagy R8 segítségével obfuszkálást és kódcsökkentést alkalmaznak, az analizátor lehetővé teszi a betöltést leképezési fájlok (mapping.txt), seeds.txt és usage.txt ugyanabból a buildből származnak. Importálás után további funkciók engedélyezettek: a nevek deobfuszkálása az eredeti osztályok és metódusok visszaállításához, a nem törölhető csomópontok (vetőmagok) kiemelése, és a redukciós folyamat során törölt csomópontok megjelenítése.

A fájlfeltöltési párbeszédpanel általában automatikusan a szokásos elérési útra mutat (alkalmazás/build/kimenetek/leképezések/kiadás/és pontos neveket, vagy olyan neveket keres, amelyek tartalmazzák a „mapping”, „usage” vagy „seeds” szavakat, és .txt végződésűek. Ezen információk birtokában az analizátor félkövérrel jelenítheti meg a védett elemeket, és áthúzhatja azokat, amelyek már nem szerepelnek a végső DEX-ben.

A DEX megjelenítő egy nagyon hatékony funkciókkal rendelkező helyi menüt is tartalmaz: Tekintse meg a bájtkódot (smali), keressen felhasználási módokat, és generáljon ProGuard megőrzési szabályokat.Egy osztály, metódus vagy mező kiválasztásával megnyithatsz egy párbeszédablakot a kóddal smali reprezentációban, elindíthatsz egy keresést, hogy megtudd, hol fordul elő az adott szimbólum a DEX-ben, vagy automatikusan generálhatsz egy megtartási szabályt, hogy megakadályozd a szimbólum redukálását a jövőbeli buildekben.

A kódon túl az APK Analyzer lehetővé teszi számos erőforrás végleges verziójának ellenőrzését is, például képek, elrendezések vagy maga a resources.arsc fájlPéldául megtekintheti a lokalizált karakterláncokat különböző nyelveken és konfigurációkban, ellenőrizheti, hogy melyik erőforrás melyiket írta felül egy adott változatban, vagy megtekintheti a manuálisan általában nem megnyitott bináris fájlok tartalmát.

Végül, az eszköz egy nagyon hasznos funkciót is tartalmaz a buildek áttekintéséhez: két APK vagy alkalmazáscsomag összehasonlításaAz aktuális verzió betöltése és összehasonlítása egy korábban közzétett műtermékkel áttekintést nyújt az entitások méretbeli különbségeiről, ami ideális annak megértéséhez, hogy honnan ered a verziók közötti súlynövekedés (új képi erőforrások, további könyvtárak, kódmódosítások stb.).

Mobilanalitika felhasználása a felhasználói élmény megértéséhez

A pusztán technikai elemzésen túl elengedhetetlenek azok az eszközök, amelyek lehetővé teszik számunkra, hogy mérjük, mit csinálnak a felhasználók az alkalmazáson belülHogyan navigálnak a felhasználók a képernyőkön, hol fordulnak elő hibák, mely kampányok hoznak minőségi forgalmat és melyek nem. A mobilanalitikai platformok kínálata hatalmas, ezért elengedhetetlen, hogy a választás előtt egyértelműen meghatározzuk üzleti igényeinket.

Az első szűrő az, hogy megkérdezzük magunktól, hogy a használati és teljesítménymutatók megszerzése mellett szükségünk van-e az eszközre elősegíti a csapatok közötti együttműködést (termék, marketing, UX, fejlesztés, támogatás), vagy amely lehetővé teszi az alkalmazás- és mobilwebes adatok egyidejű elemzését. Egy másik fontos kritérium az integráció a már használt más megoldásokkal, például CRM-ekkel, marketingautomatizáló eszközökkel vagy kísérleti platformokkal.

Az Android ökoszisztéma legszélesebb körben használt megoldásai közül a Firebase kiemelkedik, mivel rugalmas fejlesztőplatform, tárhely és integrált analitikaA Firebase lehetővé teszi Android, iOS és webes alkalmazások létrehozását az adatbázis- és hitelesítési infrastruktúra kihasználásával, miközben robusztus rendszert kínál az elemzéshez és a hibajelentésekhez.

Elemzőeszközként a Firebase lehetővé teszi a következőket: mennyiségi adatokat gyűjtsön a használatról, a forgalomról és az interakciókról, automatikus és testreszabott eseményeket generálhatnak (akár több százat is), figyelemmel kísérhetik, hogy az alkalmazás hol és milyen gyakran hibázik, valamint feltételezések helyett objektív adatokkal támogassa a marketing- vagy termékdöntéseket.

Egy másik, a termék- és digitális élményre fókuszáló platform a Contentsquare, amely túlmutat a klasszikus mérőszámokon, és a következőket kínálja: részletes ügyfélút-térképezés, hőtérképek, munkamenet-visszajátszások és hibaelemzésCélja nemcsak az alkalmazásban történő események megértése, hanem bizonyos viselkedések okának megértése is: hol akadnak el a felhasználók, a felület mely területeit hagyják figyelmen kívül, vagy mely elemek okoznak frusztrációt.

Az olyan modulok, mint az Utazások, globális képet adnak a teljes utazások a felhasználó belépésétől a távozásáig Az alkalmazást vagy mobilwebhelyet elemzik, azonosítva az optimalizálásra érdemes fő útvonalakat. A hőtérképek vizualizálják a legtöbb kattintást kapott vagy figyelmen kívül hagyott területeket, a munkamenet-visszajátszás áttekinti az egyes munkameneteket a minták (például ugyanazon cselekvésre ösztönzésre irányuló ismételt kattintások) észlelése érdekében, a termékanalitika pedig olyan mutatókat elemez, mint a funkciók bevezetése, a konverziós arány, az ügyfélszerzés és az érzékelt erőfeszítés.

A Contentsquare tartalmaz egy hibaelemző modult is, amely csoportosítsa a technikai és funkcionális hibákat hatás szerintsegít rangsorolni, hogy melyeket kell először kijavítani, a hatásszámítás pedig ezeket a problémákat konverziós, bevételi vagy megtartási veszteségekké alakítja, ami nagyon hasznos a változtatások érdekelt felek felé történő indoklásakor.

Egy érdekes esettanulmány egy olyan csapatról szól, amely az ilyen típusú termékelemzés segítségével megerősítette a gyanúját, miszerint A mobil eszközökön megjelenő aláírásképernyő zavaró volt a felhasználók számára.A webes és mobil adatok összehasonlításakor azt látták, hogy a mobilkonverziók száma egyértelműen alacsonyabb volt, részletesen megvizsgálták a mobilélményt, mobil-első megközelítéssel újratervezték az aláírási oldalt, és jelentősen javították a különböző eszközökhöz való alkalmazkodást.

Speciális felhasználói szegmentáció és viselkedéselemzés

A felhasználói viselkedés mélyebb feltárása érdekében egyes platformok erősen specializálódtak a következőkre: szegmentálás és kohorsz létrehozásaA Mixpanel az egyik legismertebb példa, amelyet mind termék-, mind marketingstratégiákhoz terveztek, és a konverzióhoz vezető utak vizualizálására, valamint a különböző felhasználói csoportok viselkedésének elemzésére összpontosít.

A Mixpanelben a felhasználók csoportokba csoportosíthatók a következők szerint: végrehajtott műveletek vagy megosztott attribútumokPéldául olyan emberek, akik az elmúlt 30 napban fizetési konstrukciót indítottak, olyan felhasználók, akik kipróbáltak egy adott funkciót, vagy olyan ügyfelek, akik legalább két vásárlást végrehajtottak. A rendszer erőssége az egyéni tulajdonságaiban és a szegmentálási logikájában rejlik, amely lehetővé teszi összetett szegmensek létrehozását.

Az egyéni tulajdonságok kombinálhatók események, felhasználók vagy csoportok attribútumai új, általánosabb tulajdonságokban. Például különböző közösségi média UTM-források (Facebook, Instagram, Twitter) csoportosítása egy „Közösségi” tulajdonság alá, hogy elemezhessük azok együttes viselkedését. A szegmentációs logika lehetővé teszi olyan szegmensek létrehozását, amelyek meghatározott műveletkombinációkat hajtottak végre, például mind az A, mind a B terméket megvásárolták.

Egy másik kiemelkedő eszköz, amely ezúttal erősen az adatvédelemre összpontosít, a Countly, egy mobil, webes és asztali elemző megoldás, amely a vállalat saját infrastruktúráján telepíthető, és biztosítja a következőket: abszolút kontroll az adatok felettEz különösen érdekes a szabályozott ágazatok vagy a szigorú megfelelési követelményekkel rendelkező vállalatok számára.

A Countly fokozott biztonságot, valós idejű hozzáférést biztosít a részletes adatokhoz (gazdag profilok, egyéni szintű elköteleződési mutatók), és a következőkre szabott modulokat kínál: az ügyfélhűség elemzése és az ügyfélelvándorlás észleléseA „Compliance Hub” lehetővé teszi az adatgyűjtés kezelését a hozzájárulások, valamint az exportálási vagy törlési kérelmek alapján, az adatvédelmi előírásokkal összhangban.

Marketing és előfizetési platformok integrált elemzéssel

Amikor a fő cél a mobilmarketing, vannak olyan speciális megoldások, amelyek ötvözik a következőket: mérés, szegmentálás és kampányvégrehajtás egyetlen platformon. A Localytics jó példa erre: integrálja az alkalmazásanalitikát az üzenetküldési és személyre szabási eszközökkel, így nagyon vonzóvá teszi azokat a marketingcsapatokat, amelyeknek egységes rendszerre van szükségük.

A Localytics részletes kampányjelentéseket kínál megtekintésre Mely műveleteknek van a legnagyobb hatása a konverzióra, a megtartásra, a megtérülésre, a lemorzsolódásra és az eltávolításokra?Prediktív elemzési képességei segítenek azonosítani azokat a felhasználókat, akiknél nagy a konverzió vagy az elhagyás valószínűsége, lehetővé téve a személyre szabott üzenetek küldését a megfelelő pillanatban.

A platform intelligens testreszabási modulokat is tartalmaz a következőkhöz: szegmensek létrehozása profil, viselkedés és előzmények alapján és onnantól kezdve a felhasználói kontextushoz igazított kampányokat és élményeket indít, ami jelentősen javítja az üzenetek relevanciáját.

Az előfizetéses alkalmazások világában a RevenueCat számos csapat kulcsfontosságú eszközévé vált. Viszonylag könnyen integrálható SDK-jával lehetővé teszi a következőket: mobil-előfizetések kezelése, célzott elemzések gyűjtése, sőt fizetős falak tesztelése is anélkül, hogy minden projektben újra fel kellene találni a spanyolviaszt.

A RevenueCat egy olyan irányítópultot biztosít, amely az előfizetési mutatókra összpontosít: aktív próbaverziók, próbakonverziók, aktív felhasználók, bevétel és MRR. Ezenkívül a következőket is kínálja: testreszabható diagramok szűrőkkel és szegmentálással például, hogy lássa, hogyan oszlanak meg az ismétlődő bevételek országonként vagy tervtípusonként.

Az egyik erőssége az árak és a fizetőfalak A/B tesztelése, amely lehetővé teszi Teszteljen különböző ár-, csomag- és promóciókombinációkat és mérje meg az egyes változatok hatását a teljes előfizetési folyamatra, a fizetős oldalra való első látogatástól a hosszú távú megtartásig.

Az összetett alkalmazások megfigyelhetőségének biztosításához az AppDynamics teljes körű monitorozási megközelítést kínál, amely mindent magában foglal a mikroszolgáltatásoktól és a szerver nélküli függvényektől kezdve a nyilvános és privát API-kon át egészen magukig a mobilalkalmazásokig. Célja, hogy gyorsan észleli a teljesítményproblémákat és meghatározza a kiváltó okotakár a kódban, egy függőségben vagy egy külső szolgáltatásban van.

Az AppDynamics lehetővé teszi a mobileszközökről, böngészőkből és egyéni felhasználókból származó adatok összefüggésbe hozását Hasonlítsa össze az alkalmazás különböző verzióinak felhasználói élményét és nézd meg, hol szenved a UX. Használható widgeteket tartalmaz részletes irányítópultok készítéséhez, valamint egy szintetikus monitorozó modult, amely szimulálja a felhasználói folyamatokat és az API-hívásokat, és a hibákat még azelőtt észleli, hogy azok a valódi embereket érintenék.

Végül, az AppsFlyer kifejezetten azokra a marketingcsapatokra összpontosít, akiknek mérniük, attribútálniuk és védeniük kell mobilkampányaikat. Megoldásokat kínál az alapvető elemzésektől a fejlett funkciókig, különös tekintettel a... reklámcsalások felderítése (például hamis kattintásokat generáló botok).

A csalás elleni védelem mellett az AppsFlyer lehetővé teszi a következők meghatározását: egyéni alkalmazáson belüli események hogy olyan KPI-okat, mint a ROI vagy az élettartamra vonatkozó érték, konkrét felhasználói műveletekhez kössön. Tartalmaz továbbá fokozatossági teszteket is annak becslésére, hogy hány konverziót sikerült volna elérni fizetett kampányok nélkül, és így mérje a hirdetési befektetések valós hatását.

Mindezen kvantitatív elemzés kiegészítéseként érdemes megfontolni olyan eszközöket, mint az AppFollow, amelyek a következőkre összpontosítanak: Figyelemmel kísérheti az értékeléseket és véleményeket az App Store-ban és a Google PlayenA hangulatelemzésnek köszönhetően megfigyelhető a vélemények hangvételének alakulása, és összehasonlíthatók az időszakok, így egyértelmű képet kaphatunk arról, hogyan érzékelik a felhasználók az alkalmazás minőségét és az alkalmazással kapcsolatos élményt.

Biztonsági audit és fejlett elemzés az Inspeckage segítségével

Amikor a cél nem annyira a marketing vagy a termék, hanem biztonsági auditálás, rosszindulatú programok elemzése vagy egy alkalmazás belső viselkedésének áttekintéseSpecifikusabb keretrendszerek jönnek szóba. Az Android ökoszisztéma egyik legérdekesebb keretrendszere az Inspeckage (Android Package Inspector), amely Xposed modulként működik.

Az Inspeckage beállít egy szervert magán az Android-eszközön, amely ADB-n keresztül érhető el a számítógépről, és lehetővé teszi a következők megtekintését: valós idejű események, amelyek az eszközön történnek az alkalmazás futása közbenMás elemzési környezetekkel, mint például a MobSF vagy az AppMon, ellentétben, nagy előnye, hogy lehetővé teszi az események megfigyelését a dinamikus elemzés leállítása nélkül, és könnyen konfigurálhatóak vele hookok bizonyos metódusokon.

Az eszköz kódja elérhető a GitHubon, valamint APK formátumban a Play Áruházból vagy az Xposed repositoryból is letölthető. A modul telepítése után engedélyezve van az Xposedben, és látható a fő felületen. a szerver állapota, hálózati csatoló, port és az adb parancs szükséges a helyi gépről való csatlakozáshoz.

Az alkalmazás megjeleníti az eszközön található alkalmazások listáját, azzal a lehetőséggel, hogy csak felhasználói alkalmazásokat válasszon, vagy rendszeralkalmazásokat is szeretne megjeleníteni. Ez az oldalsó menüben érhető el. Interfész és port konfigurálása, hitelesítés engedélyezése felhasználónévvel és jelszóval és módosítsa a többi szerverparamétert.

Egy alkalmazás kiválasztása és elindítása után megkezdődik a dinamikus elemzés. A számítógép böngészőjéből elérhető az eszköz által üzemeltetett weboldal, ahol egy menü jelenik meg a [nem egyértelmű - esetleg "lehetőségek" vagy "funkciók"] gombokkal. Töltsd le az APK-t vagy az adatokat a belső tárhelyről, képernyőképeket készíthet, különböző konfigurációkat alkalmazhat (például a FLAG_SECURE letiltását, az alkalmazás újraindítását, proxy kiválasztását vagy a rögzíteni kívánt eseménytípusok kiválasztását), és valós időben frissítheti az eredményeket.

Az Inspeckage emellett gyorsbillentyűket is kínál egy lap megnyitásához a LogCat segítségével, az alkalmazás vagy modul futásának ellenőrzéséhez, valamint a részletes panelek elrejtéséhez vagy megjelenítéséhez. Az alkalmazás információs panelje megjelenik. csomag neve, UID, GUID, biztonsági mentés állapota és egy TreeView típusú hozzáférés a belső tárhelyhez, ahonnan egyetlen kattintással letölthetők a fájlok.

A jelentés fő része különböző fülekre van tagolva: az egyik a következővel rendelkezik: tevékenységek, engedélyek, szolgáltatások, tartalomszolgáltatók, műsorszóró vevők és megosztott könyvtárak, tevékenységek indítására vagy szolgáltatókkal való konzultációra szolgáló lehetőségekkel; egy másik, a SharedPreferences-nek szentelt mappát, amely naplóformátumban (a változók időbeli változásainak áttekintése érdekében) és a fájl aktuális állapotában is megtekinthető.

Az egyik nagyon hatékony funkció az összes adat rögzítése. az alkalmazás kriptográfiai tevékenységeEz a szakasz a használt algoritmusokat, kulcsokat és titkosított információkat jeleníti meg. A „Hash” fül tartalmazza az összes olyan értéket, amelyre a hash függvényeket alkalmazzák, valamint az egyes esetekben használt függvények típusát.

A „Fájlrendszer” rész felsorolja az alkalmazás által korábban használt összes fájlt, ami hasznos annak észlelésére, hogy gyanús fájlokat hoz-e létre, vagy nem hivatalos forrásokból tölt-e le alkalmazásokat. Az „IPC” lap a folyamatok közötti kommunikációs kísérleteket jeleníti meg szándékok használatával.

A „Hookok” fül összegyűjti az összes olyan metódus tevékenységét, amelyen egyéni hookok vannak konfigurálva. Létrehozásuk viszonylag egyszerű a grafikus felületnek köszönhetően, ahol a következőket teheti: Jelölje meg az elfogás módját és a horog típusátHookok definiálhatók, amelyek módosítják a metódus bemeneti paramétereit vagy visszatérési értékét, megnyitva az utat számos tesztelési forgatókönyv előtt.

További funkciók az oldalsó menüben találhatók. eszköz ujjlenyomat-értékeinek vagy GPS-koordinátáinak manipulálásaEz segít megkerülni az emulátor-észlelési mechanizmusokat vagy a helymeghatározás-hamisítást. A fentieken túlmenően az Inspeckage naplózni tudja az adatbázis-lekérdezéseket, a hálózati forgalmat, a WebView-ket és a tartalomszolgáltatók által elért egyéb erőforrásokat.

Ennek a kiterjedt képességeknek köszönhetően az Inspeckage-t a legjobbnak tartják. Egy nagyon átfogó eszköz a mintaelemzési idők csökkentésére, különösen hasznos azok számára, akik most ismerkednek a mobil kártevő-elemzéssel vagy az Android-alkalmazások biztonsági auditjaival.

Biztonsági módszertanok, fenyegetések és tesztelő laboratórium

A jelenlegi helyzet, amelyben több milliárd aktív Android-eszköz és alkalmazás kezel érzékeny adatokat (banki, egészségügyi, oktatási stb.), elengedhetetlenné teszi, hogy megtegyük a szükséges lépéseket. biztonság az alkalmazás teljes életciklusa alattNem csak a nyilvánvaló hibák elkerüléséről van szó, hanem a GDPR-hoz hasonló szabályozások vagy az olyan iparági szabványok betartásáról is, mint a PCI DSS a fizetések feldolgozása során.

Az Android-alkalmazások számos fenyegetésnek vannak kitéve, amelyek közül sokat olyan projektekben kezelnek, mint például OWASP Mobil Top 10A legkritikusabb problémák közül kiemelhetjük a platform helytelen használatát (a natív biztonsági mechanizmusok kihasználásának elmulasztása, rosszul kezelt jogosultságok, a veszélyeztetett API-k visszaélése), a nem biztonságos adattárolást (titkosítatlan adatbázisok, érzékeny információkat tartalmazó naplók, rosszul védett sütik), vagy a nem biztonságos kommunikáció (elavult protokollok vagy titkosítatlan forgalom használata).

Problémák a következővel: rossz hitelesítés és munkamenet-kezelés (gyenge jelszavak, le nem járó munkamenetek, rosszul védett tokenek), nem megfelelő titkosítás, amely lehetővé teszi a fizikai támadók vagy rosszindulatú programok számára az adatokhoz való hozzáférést, valamint jogosultságvesztések, amelyek megnyitják az utat a privilégiumok eszkalációjához automatizált támadásokon keresztül.

A fejlesztési oldalon a kliensoldali kód minősége kulcsfontosságú: rossz gyakorlatok, a hibakezelés hiánya vagy rosszul megvalósított biztonsági funkciók Ezek puffer túlcsordulásokhoz és egyéb sebezhetőségekhez vezethetnek. Ehhez jön még a kódmódosítás kockázata (rosszindulatú bináris javítások, módosított erőforrások stb.). hamis alkalmazások, amelyek a valódi alkalmazásokat adják ki), a APK visszafejtése és az éles környezetben nem letiltott „rejtett” vagy hibakeresési funkciók jelenléte.

Ezen fenyegetések kezelésére az OWASP mobilalkalmazás-biztonsági (MAS) projekt a következőket javasolja: módszertan és biztonsági követelmények ellenőrzőlistája több területet is lefedve: biztonságos architektúra és tervezés, adatvédelem és adattárolás, megfelelő titkosítás, hitelesítés és munkamenet-kezelés, biztonságos hálózati kommunikáció, platform interakció, kódminőség és build konfiguráció, valamint kliensoldali rugalmassági mechanizmusok.

Ezen követelmények értékelése jellemzően statikus és dinamikus elemzést ötvöz. A statikus részben olyan műtermékeket vizsgálnak, mint például forráskód, dekompilált kód, bináris fájlok és a kapcsolódó fájlok Az alkalmazás futtatása nélkül a metaadatokból, függvényhívásokból és a programfolyamatból kikövetkeztethetők a potenciális sebezhetőségek. Az olyan eszközök, mint a Mara (egy elemző keretrendszer, amely lehetővé teszi az APK-k szétszerelését és visszafordítását, defuzzifikálást, karakterlánc-elemzést, jogosultságok kinyerését stb.), maga az APK Analyzer, valamint a statikus IPC-elemzéshez hasonló megoldások, mint a JAADAS, különösen hasznosak ebben a szakaszban.

A dinamikus elemzés során ezzel szemben az alkalmazás ellenőrzött környezetben fut, és viselkedését különböző körülmények között figyelik meg. Itt jönnek szóba olyan eszközökről, mint a Drozer, amely a Dalvik virtuális géppel, az IPC végpontokkal és az operációs rendszerrel kommunikál a sebezhetőségek felkutatására; a Burp Suite, amely webes proxyként működik az alkalmazás és a szerver közötti forgalom rögzítésére és manipulálására; valamint az Inspeckage, amely az alkalmazás valós idejű műszerezésére és megfigyelésére szolgál az Android API hookjainak használatával.

Léteznek hibrid keretrendszerek is, mint például a Mobile Security Framework (MobSF), amelyek ötvözik a statikus és dinamikus elemzést, és segítenek... átfogóbb auditok lebonyolítása egyetlen eszközből. Azok számára, akik gyakorolni szeretnének, a tanulás nagyon hatékony módja a szándékosan sebezhető alkalmazásokkal való munka.

Ezen gyakorlóalkalmazások között olyan projektek találhatók, mint az InsecureShop (egy sebezhető online áruház közel húsz kihasználható hibával, legtöbbjük root nélkül), az AndroGoat (az első Kotlinban fejlesztett sebezhető alkalmazás, több tucat különböző sebezhetőséggel), az InsecureBank V2 (egy Python backenddel rendelkező banki alkalmazás, számos gyengeséggel tervezve) és maga a MAS projekt Crackmes-e, több CTF-típusú nehézségi szintre strukturálva.

Röviden, az Android alkalmazások elemzése sokkal többet foglal magában, mint pusztán az engedélyek vizsgálatát vagy a letöltések számlálását. Magában foglalja az összevonást is. APK-ellenőrző eszközök, dinamikus elemző környezetek, biztonsági módszertanok, valamint termék- és marketinganalitikai platformokAmikor mindezeket az elemeket integráljuk az alkalmazás életciklusába, az eredmény biztonságosabb és hatékonyabb alkalmazások, amelyek összhangban vannak a felhasználók és az üzleti élet valós igényeivel.

Kapcsolódó cikk:
Hogyan készítsünk nagyszerű Android -alkalmazást?