Funcionament de l'analitzador estàtic d'APK
L'APK Info Viewer és una eina en línia gratuïta dissenyada per inspeccionar el contingut i les metadades d'un fitxer de paquet d'aplicació d'Android (APK) abans de procedir a la seva instal·lació. L'eina s'executa completament dins del navegador web de l'usuari, on extreu i mostra els detalls tècnics clau del paquet sense necessitat d'executar ni d'instal·lar l'aplicació en el dispositiu.
Aquesta utilitat d'anàlisi estàtica permet verificar les dades reals d'un fitxer APK i comparar-les amb les versions oficials distribuïdes pels desenvolupadors. El procés de lectura, càlcul de hash i anàlisi es realitza de manera local mitjançant un Worker en el navegador web de l'usuari. Aquest mètode garanteix que cap fitxer ni dada es pugi a un servidor extern, i que l'APK no s'instal·li ni s'executi mai en el sistema de l'usuari.
L'eina admet un únic fitxer amb l'extensió .apk i un límit de mida de fins a 500 MB. Si s'intenta pujar més d'un fitxer alhora, el sistema processa únicament el primer i mostra l'advertiment "Només un fitxer a la vegada; s'està inspeccionant el primer.".
Estructura interna d'un APK i gestió de formats
Un fitxer APK és un paquet que conté tots els elements necessaris perquè una aplicació d'Android s'executi en un dispositiu. A l'interior d'aquest paquet es troben fitxers de codi executable (.dex), recursos gràfics, actius i el fitxer de configuració essencial AndroidManifest.xml. L'APK Info Viewer llegeix aquesta estructura interna per extreure'n la informació, aplicant regles estrictes davant de formats no compatibles o fitxers malmesos:
- Mida de fitxer excedida: Si el fitxer supera els 500 MB, es rebutja amb el missatge d'error:
"Aquest fitxer supera els 500 MB, un volum massa gran perquè una pestanya del navegador el pugui inspeccionar amb seguretat.". - Paquets dividits: Els formats com XAPK o APKM són contenidors que agrupen diversos APK. Si s'introdueixen en l'eina, es genera l'error:
"Aquest és un paquet dividit XAPK, un contenidor de diversos APK. Extreu l'APK base i inspecciona aquell fitxer.". - Android App Bundles: El format
.aabés un format de publicació per a botigues d'aplicacions i no un fitxer instal·lable directament. L'eina el rebutja amb el missatge:"Aquest és un Android App Bundle (.aab), un format de publicació, no un APK instal·lable. Inspecciona l'APK compilat en lloc d'aquest.". - Fitxers no vàlids: Si s'introdueix un fitxer que no és un APK, es mostra el missatge:
"Això no sembla pas un APK: no s'ha trobat cap AndroidManifest.xml llegible a l'interior.". - Fitxers danyats: Els paquets incomplets o corruptes activen l'avís:
"El paquet sembla danyat o truncat, per la qual cosa no se n'han pogut llegir els continguts.". - Errors de lectura generals: Qualsevol problema físic de lectura del fitxer mostra
"No s'ha pogut llegir el fitxer. Torna a seleccionar-lo.", mentre que altres errors d'inspecció genèrics mostren"La inspecció ha fallat. Prova amb un altre fitxer.".
Requisits de l'SDK i compatibilitat d'Android
L'eina desglossa les especificacions de compatibilitat del paquet dins de la secció Requisits. Aquestes dades defineixen com es comportarà l'aplicació en les diferents versions del sistema operatiu Android:
| Camp a l'interfície | Format de visualització | Descripció |
|---|---|---|
| Android mínim | Android ‹version› (API ‹level›) o API ‹level› |
La versió mínima d'Android que requereix el fitxer per poder-se instal·lar. |
| Android destinació | Android ‹version› (API ‹level›) o API ‹level› |
La versió de l'SDK per a la qual s'ha dissenyat i provat l'aplicació, que determina els comportaments de seguretat actius. |
max SDK ‹n› |
SDK màx. ‹n› |
El límit màxim de la versió de l'SDK d'Android en què es pot executar el paquet, si s'ha definit. |
Permisos i components de l'aplicació
La secció Permisos (Permisos) llista totes les sol·licituds d'accés que l'aplicació declara en el seu manifest. L'APK Info Viewer ordena aquesta llista prioritzant a la part superior aquells permisos que Android classifica com a perillosos per a la privadesa de les dades de l'usuari. Aquests permisos es marquen de manera destacada amb l'etiqueta Perillós (Perillós).
A la secció Components (Components), l'eina organitza els elements interns de l'aplicació en quatre categories definides pel sistema Android:
- Activitats (
Activitats): Les pantalles de la interfície d'usuari de l'aplicació. - Serveis (
Serveis): Els processos que s'executen en segon pla sense interfície directa. - Receptors (
Receptors): Els components que reben i reaccionen a missatges de difusió del sistema o d'altres aplicacions. - Proveïdors (
Proveïdors): Els components que gestionen i comparteixen l'accés a bases de dades o fitxers.
Cada component llistat pot mostrar l'etiqueta exportat (exportat) si està configurat per rebre interaccions d'aplicacions externes. En el cas dels proveïdors, es mostra l'autoritat del proveïdor o el valor Cap (Cap) si no escau. Per evitar la saturació de la interfície, es mostra un màxim de 100 entrades per a cada categoria de component; si se supera aquest límit, s'afegeix l'etiqueta +‹count› més (+‹count› més).
Recursos, codi natiu i signatures de seguretat
L'informe generat detalla l'arquitectura de maquinari i els recursos inclosos en el fitxer a través de les seccions següents:
Codi natiu (Codi natiu)
Mostra els tipus de processador compatibles (ABIs) i el recompte de biblioteques natives incloses en el paquet.
Recursos (Recursos)
Aquesta secció agrupa les dades estructurals del fitxer sota les etiquetes següents:
Densitats de pantallaFitxers de recursosFitxers d'actiusFitxers de codi (.dex)Fitxers del paquet
Signatures (Signatures)
Android requereix que tots els paquets estiguin signats digitalment per identificar-ne el desenvolupador. L'eina extreu les metadades dels certificats X.509 dels blocs de signatura v1 (PKCS#7) i dels blocs de signatura d'APK (v2, v3 i v3.1). Per a cada signant detectat, es mostra:
Signant ‹n›AssumpteEmès perNúmero de sèrieVàlid des deiVàlid fins alAlgoritme de signaturaiAlgoritme de clau- Les empremtes digitals MD5, SHA-1 i SHA-256 del certificat.
Si no es detecta cap bloc de signatura vàlid, es mostra el missatge: \"No s'ha trobat cap bloc de signatura reconegut; el paquet pot estar sense signar o haver estat reempaquetat.\". L'eina només extreu i mostra aquestes metadades; no realitza cap verificació criptogràfica de la integritat de les signatures, no valida la cadena de confiança del certificat ni comprova la identitat real de l'emissor en el món real.
Hàshes del fitxer (Hàshes del fitxer)
Es calculen i es mostren els hash MD5, SHA-1 i SHA-256 del fitxer APK complet per permetre la verificació de la integritat del fitxer descarregat.
Preguntes freqüents
Què es pot saber d'un APK sense instal·lar-lo?
Bastantes coses: el nom i la versió del paquet de l'aplicació, les versions d'Android que necessita, tots els permisos que sol·licita, les pantalles i els components en segon pla que declara, els tipus de processador per als quals inclou codi natiu i els certificats amb què s'ha signat.
Aquesta eina pot dir-me si un APK és programari maliciós?
No, i desconfia de qualsevol eina que prometi un veredicte a partir d'una anàlisi ràpida. Aquí obtens els fets: permisos, components, signataris i hash. Compara'ls amb el que publica el desenvolupador, i pren com a motius per descartar-ho uns permisos inesperats o un signatari diferent del de la versió oficial.
Quins fitxers són compatibles?
Fitxers APK regiments individuals de fins a 500 MB. Els paquets dividits (XAPK, APKM) i els Android App Bundles (.aab) són contenidors o formats de publicació en lloc d'un paquet instal·lable, per la qual cosa es rebutgen amb un missatge clar en lloc d'un informe confús.
Què indiquen els detalls de la signatura?
Totes les aplicacions d'Android estan signades, i el certificat identifica qui l'ha publicada. Veuràs quins esquemes de signatura inclou el paquet (v1, v2, v3) i el subjecte, el període de validesa i les empremtes MD5, SHA-1 i SHA-256 de cada signatari. Dos APK amb empremtes coincidents provenen del mateix editor; si confies en aquest editor ja depèn de tu.
Què significa l'etiqueta “Perillós” en un permís?
És la classificació pròpia d'Android: els permisos perillosos poden accedir a dades privades (ubicació, contactes, càmera, micròfon, emmagatzematge), de manera que el sistema demana permisió a l'usuari abans de concedir-los. L'etiqueta no és cap acusació; que una aplicació de mapes demani la ubicació és normal. Simplement assenyala els permisos que val la pena llegir dues vegades.