Az APK-fájlok belső szerkezete és az APK Info Viewer működése
Az Android-alkalmazások telepítőcsomagja, azaz az APK (Android Application Package) valójában egy speciálisan strukturált ZIP-archívum, amely tartalmazza az alkalmazás futtatásához szükséges összes kódot, erőforrást, eszközfájlt és metaadatot. Az APK Info Viewer egy olyan ingyenes online eszköz, amely lehetővé teszi ezen állományok részletes vizsgálatát még a telepítés előtt. A szoftver statikus elemző eszközként működik: anélkül olvassa be és rendszerezi a csomag technikai adatait, hogy az alkalmazást futtatná vagy telepítené az eszközre. Ez a megközelítés segít ellenőrizni a fájl valódiságát, és összevetni azt a fejlesztő hivatalos közleményeivel.
A vizsgálat indításához a felhasználónak egyetlen .apk kiterjesztésű fájlt kell biztosítania. Az eszköz a következő bemeneti határértékek szerint működik:
- Elfogadott formátum: Kizárólag
.apkkiterjesztésű fájlok. - Méretkorlát: Legfeljebb 500 MB.
- Mennyiségi korlát: Egyszerre csak egy fájl tölthető fel. Ha több fájlt húz a felületre, a rendszer az
Egyszerre csak egy fájl — az első kerül vizsgálatra.üzenet kíséretében kizárólag a legelsőt dolgozza fel.
A feldolgozás során a felületen folyamatos visszajelzések láthatók. A kezdeti Kész. Ejts ide egy APK-t az ellenőrzéshez. állapotot a fájl kiválasztása után a ‹name› olvasása… üzenet követi. Ezt követően a Fájlhash-ek számítása — ‹percent›%, majd a Csomag elemzése… fázis következik, végül a sikeres elemzést a Jelentés kész. felirat jelzi. A vizsgálat végeztével a Jelentés letöltése gombbal menthető az eredmény (ilyenkor a Jelentés letöltve. állapotüzenet jelenik meg), míg a Törlés gomb megnyomásával a felület visszaáll a Törölve. állapotba.
Helyi adatfeldolgozás és adatvédelem a böngészőben
Az APK Info Viewer kiemelt tulajdonsága, hogy a teljes elemzési folyamat helyben, a felhasználó böngészőjében futó helyi Worker (Web Worker) segítségével történik.
Ez a technológia garantálja a következő biztonsági feltételeket:
- A kiválasztott APK-fájl soha nem töltődik fel külső szerverre.
- A kriptográfiai hash-ek kiszámítása és a fájlok kicsomagolása közvetlenül a helyi memóriában történik.
- Az alkalmazás kódja nem fut le, és nem települ az elemzést végző eszközre.
Ez a lokális architektúra teszi lehetővé, hogy a nagyméretű, akár 500 MB-os fájlok vizsgálata is gyorsan, hálózati sávszélesség-pazarlás nélkül menjen végbe.
Az elemzési jelentés felépítése és kinyert adatai
A sikeres elemzést követően az APK Info Viewer strukturált szakaszokban jeleníti meg a csomagból kinyert technikai adatokat.
Követelmények (Követelmények)
Ez a rész az alkalmazás futtatásához szükséges Android-verziókat mutatja be:
Minimális Android: Az a legkorábbi operációs rendszer verzió, amelyen az app még elindul. Megjelenítési formátuma:Android ‹version› (API ‹level›)vagyAPI ‹level›.Célzott Android: Az az API-szint, amelyre a fejlesztő optimalizálta az alkalmazást. Megjelenítési formátuma:Android ‹version› (API ‹level›)vagyAPI ‹level›.max. SDK ‹n›: Ha a fejlesztő korlátozta a futtathatóság felső határát, ez a mező jelzi a maximális támogatott SDK-szintet.
Jogosultságok (Jogosultságok)
Az alkalmazás által igényelt engedélyek listája. Az Android rendszerben a felhasználói adatok védelme érdekében különbséget tesznek a normál és a magánjellegű adatokhoz hozzáférő jogosultságok között. A rendszer az utóbbi kategóriába eső engedélyek mellett egy piros Veszélyes jelvényt jelenít meg. A könnyebb áttekinthetőség érdekében a lista automatikusan rendezi az elemeket: a Veszélyes jelvénnyel ellátott jogosultságok mindig a lista tetejére kerülnek.
Komponensek (Komponensek)
Az Android-alkalmazások négy alapvető komponenstípusból épülnek fel, amelyeket az eszköz kategóriánként csoportosít, és legfeljebb 100 elemig listáz ki. Ha egy kategóriában ennél több elem található, a lista végén a +‹count› további jelzés látható.
Activityk: Az alkalmazás képernyői. Ha a komponens más appok számára is elérhető, azexportáltcímke jelzi ezt.Service-ek: A háttérben futó folyamatok. Szükség esetén azexportáltcímke itt is megjelenik.Receiverek: A rendszer szintű üzeneteket és eseményeket fogadó egységek, amelyek szintén megkaphatják azexportáltjelzést.Provider-ek: Az adatok megosztásáért felelős komponensek. Azexportáltcímke mellett a szolgáltatói azonosítót (authority) is mutatja a rendszer, vagy ennek hiányában aNincsfeliratot.
Natív kód (Natív kód)
Megjeleníti az alkalmazásban található natív könyvtárak számát, valamint a támogatott processzortípusokat (ABI-kat), mint például az ARM vagy x86 architektúrákat.
Erőforrások (Erőforrások)
Ez a szekció számszerűsíti a csomagban található fájlokat és erőforrás-típusokat:
Képernyősűrűségek: A támogatott kijelzőfelbontások típusai.Erőforrásfájlok: A beépített képek, elrendezések és XML-fájlok száma.Eszközfájlok: Azassetsmappában tárolt nyers fájlok mennyisége.Kód fájlok (.dex): A lefordított Java/Kotlin bájtkódot tartalmazó Dalvik Executable fájlok száma.Fájlok a csomagban: Az APK-ban található összes fájl összesített darabszáma.
Aláírások (Aláírások)
Az Android biztonsági modelljének alapja a kódaláírás. Az eszköz képes kinyerni az X.509 tanúsítványokat a v1-es PKCS#7 blokkokból, valamint a v2-es, v3-as és v3.1-es APK aláírási blokkokból. Minden egyes megtalált aláíróhoz a következő adatokat jeleníti meg:
‹n›. aláíró(az aláíró sorszáma)Alany(a tanúsítvány tulajdonosa)Kibocsátó(a tanúsítványt kiállító szerv)SorozatszámÉrvényesség kezdeteésÉrvényesség végeAláírási algoritmusésKulcsalgoritmus- MD5, SHA-1 és SHA-256 ujjlenyomatok
Ha a csomag nem tartalmaz érvényes aláírási blokkot, a Nem található felismert aláírási blokk – előfordulhat, hogy a csomag aláíratlan vagy újra van csomagolva. figyelmeztetés jelenik meg. Fontos megjegyezni, hogy az eszköz kizárólag a metaadatok kinyerését végzi el; nem hajt végre kriptográfiai integritás-ellenőrzést, nem ellenőrzi a tanúsítvány megbízhatósági láncát, és nem azonosítja a kiadó valós, fizikai személyazonosságát.
Fájlhash-ek (Fájlhash-ek)
A teljes APK-fájl egyedi azonosítására szolgáló kriptográfiai ujjlenyomatok:
- MD5
- SHA-1
- SHA-256
Hibakezelés és korlátozások
Az elemzés során előforduló hibákat az eszköz egyértelmű hibaüzenetekkel jelzi a felhasználónak:
| Hiba oka | Megjelenő hibaüzenet |
|---|---|
| A fájl mérete meghaladja az 500 MB-ot | Ez a fájl nagyobb, mint 500 MB — nagyobb annál, amit egy böngészőfül biztonságosan elemezni tud. |
| Split APK (XAPK, APKM) formátum | Ez egy XAPK csomag — több APK tárolója. Csomagofold ki az alap APK-t, és inkább azt a fájlt vizsgáld. |
| Android App Bundle (.aab) formátum | Ez egy Android App Bundle (.aab) — közzétételi formátum, nem pedig telepíthető APK. Inkább a lefordított APK-t vizsgáld. |
| Nem APK fájl (hiányzik a manifest) | Ez nem tűnik APK-nak: nem található olvasható AndroidManifest.xml benne. |
| Sérült vagy csonka fájl | A csomag sérültnek vagy csonkának tűnik, így a tartalmát nem sikerült beolvasni. |
| Általános beolvasási hiba | A fájlt nem sikerült beolvasni. Válaszd ki újra. |
| Egyéb elemzési hiba | A vizsgálat sikertelen. Próbálj meg egy másik fájlt. |
Gyakran Ismételt Kérdések
Mit tudhatok meg egy APK-ról anélkül, hogy telepíteném?
Elég sokat: az alkalmazás csomagnevét és verzióját, a szükséges Android-verziókat, az összes kért engedélyt, a deklarált képernyőket és háttérkomponenseket, a natív kódot támogató processzortípusokat, valamint a tanúsítványokat, amelyekkel aláírták.
Megmondja ez az eszköz, hogy egy APK kártékony-e?
Nem — és légy óvatos minden olyan eszközzel, amely egy gyors vizsgálat alapján biztos ítéletet ígér. Itt a tényeket kapod: engedélyek, komponensek, aláírók és hash-ek. Vesd össze ezeket a fejlesztő által közöltekkel, és ha váratlan engedélyeket vagy a hivatalostól eltérő aláírót találsz, az ok arra, hogy elállj a telepítéstől.
Milyen fájlok támogatottak?
Legfeljebb 500 MB méretű egyedi APK fájlok. A csomagok (XAPK, APKM) és az Android App Bundle (.aab) fájlok tárolók vagy közzétételi formátumok, nem pedig telepíthető csomagok, így ezeket egyértelmű üzenettel visszautasítjuk a zavaró jelentés helyett.
Mit árulnak el az aláírás adatai?
Minden Android-alkalmazás alá van írva, és a tanúsítvány azonosítja a kiadót. Láthatod, hogy a csomag milyen aláírási sémákat használ (v1, v2, v3), valamint az egyes aláírók alanyát, érvényességi idejét és MD5, SHA-1, valamint SHA-256 ujjlenyomatát. Két egyező ujjlenyomatú APK ugyanattól a kiadótól származik — hogy megbízob-e abban a kiadóban, azt neked kell eldöntened.
Mit jelent a „Veszélyes” jelvény egy engedély mellett?
Ez az Android saját besorolása: a veszélyes engedélyek hozzáférhetnek a magánjellegű adatokhoz (helyzet, névjegyek, kamera, mikrofon, tárhely), ezért a rendszer engedélyezés előtt megkérdezi a felhasználót. A jelvény nem vád; egy térképalkalmazás esetében a helyzetmeghatározás kérése természetes. Csak azt jelöli, hogy ezeket az engedelyeket érdemes kétszer is elolvasni.