0 votes

Les signatures de deux applications différentes sont comparées dans le code d'une application.

Pour une application mobile particulière, j'essaie de comprendre le code côté client d'un apk en décompilant l'apk à l'aide de Jadx-GUI. En parcourant le code, j'ai trouvé un extrait de code intéressant (montré dans l'image). La signature de l'application existante est comparée à celle de l'application nommée "Android".

Screenshot of a code snippet J'ai observé ce type de comparaison dans plus d'une application. J'ai récupéré les détails du certificat et j'ai découvert qu'ils sont tous deux différents et que les certificats sont auto-signés (ils n'utilisent pas Google Play Signing).

Donc, ma question est la suivante : pourquoi les développeurs comparent-ils la signature de deux applications différentes ? Dans quels scénarios ce type de vérification de signature est-il utile ?

0voto

pr0nin Points 353

L'extrait de code ne compare pas la signature de la propre application à celle d'une application ordinaire, mais il la compare au package android plus connu sous le nom de "système Android".

Comme son nom l'indique, "Android System" est une application système signée avec la clé de signature système de la ROM. Par conséquent, l'extrait de code que vous avez trouvé compare si l'application spécifiée par son nom de paquet dans le paramètre str a été signé par la clé du système.

Je suppose que l'application qui contient ce code obtient d'abord la liste de tous les paquets installés, puis appelle cette méthode pour chaque nom de paquet installé.

Au final, cela permettrait d'identifier toutes les applications qui ont des permissions système. Ce qui ne peut pas être déterminé par le code est la raison pour laquelle cette liste est générée. Cela pourrait être pour des raisons de sécurité afin de vérifier s'il y a des "applications étranges" avec des permissions système ou alternativement, la construction de la liste des applications système pourrait être la première étape d'une application qui tente d'attaquer le système en essayant de trouver des vulnérabilités dans les applications système.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X