Qu'est-ce que superuser.apk et su exactement?


32

J'ai beaucoup lu sur l'enracinement des appareils Android. Je veux vraiment savoir exactement ce qui se passe à chaque étape avant de m'engager dans le processus.

Je suis un peu confus quant à la provenance des fichiers superuser.apk et su. Il ne semble pas que ce soient des fichiers Google officiels, mais des fichiers créés par un individu (aléatoire). Cela dit, dans quelle mesure ces fichiers sont-ils sûrs?

De la recherche, j'ai une compréhension générale de leur objectif. Je me demandais si quelqu'un savait en quoi consistaient ces fichiers (exécutables? Scripts?), Leur contenu et leur fonctionnement général.

Merci!


Réponses:


32

su(abréviation de Switch User) est un exécutable binaire. Il est utilisé par Android et d'autres systèmes basés sur * nix pour permettre à un processus de changer le compte d'utilisateur auquel il est associé. La raison pour laquelle il est important du point de vue de l’enracinement est que, susans aucun autre paramètre, l’utilisateur root sera basculé, ce qui signifie que les processus nécessitant une autorisation root pour leur fonctionnalité doivent être appelés su(étant donné que par défaut, ils ne sont pas exécutés par root).

Superuser est une application Android (.apk est un package d'application Android). Cela fonctionne comme une sorte de "gardien" du subinaire. Les applications qui tentent d’appeler suseront forcées de router par le biais de Superuser, qui informera ensuite l’utilisateur si cette application est inconnue ou nouvelle. L'utilisateur a ensuite la possibilité d'approuver ou de refuser l'accès à suet, éventuellement, de laisser le super-utilisateur se souvenir de sa décision afin qu'il puisse l'appliquer automatiquement pour les appels suivants de cette application. Ce faisant, les seules applications pour lesquelles des autorisations racine sont accordées sont celles que l'utilisateur choisit.

La source des deux applications est disponible sur Github et peut être examinée / vérifiée par toute personne désireuse de la consulter (superutilisateur ici , su ici ).

Vous pouvez trouver plus de détails - ainsi que des changelogs - sur le site de Superuser .

Autres questions connexes sur les amateurs d'Android:


1
J'apprécie vraiment la réponse détaillée et les liens! Merci!
Kaspnord

1
Existe-t-il des alternatives / équivalents à ces fichiers aux fins de l’enracinement sous Android?
Kaspnord

1
@kaspnord: Non, sule même fichier est-il utilisé pour d'autres systèmes d'exploitation Linux / Unix, et il n'y a pas d'alternative à cela, mais il peut y en avoir pour superuser.apk. Pourquoi voulez-vous une alternative?
Kyrias

3
Je suis simplement curieux car ces fichiers, bien que bénis par la communauté open source, ne semblent pas avoir un standard de quelque sorte que ce soit (c'est-à-dire pas officiellement Google). Cela me porte donc à penser qu'il est possible pour d'autres personnes de créer d'autres variantes des mêmes fichiers. Pour moi personnellement, je veux savoir exactement ce que j'utilise et ce que je mets dans mon appareil plutôt que de compter sur des solutions de tiers où je ne peux pas savoir avec une certitude totale le contenu des fichiers.
Kaspnord

11

Le code source de Superuser est disponible sur github. Les auteurs principaux de Superuser sont Adam Shanks ( ChainsDD ) et Koushik Dutta ( koush , également auteur de Clockwork Recovery).

Koushik Dutta a expliqué dans son blog le fonctionnement de Superuser.apk ; Notez que la publication date de la toute première incarnation de l'application Superuser. Beaucoup de choses ont changé depuis et une partie de ce qui a été écrit ne s'applique plus à la mise en œuvre de superutilisateur / su moderne, mais les bases doivent rester les mêmes.

Les options su et superutilisateur peuvent certes être remplacées par des alternatives, mais cela ne ferait pas grand-chose, car la fonction utilisée par su (c'est-à-dire les appels système exec () et setuid ()) est disponible pour tous les exécutables, car l'exécutable avait le bits d'autorisation (c'est-à-dire que le bit setuid est défini sur la racine). Au fond, su est un programme très simple, il engendre simplement un processus en tant qu'utilisateur différent; le véritable contrôle de sécurité est effectué par le noyau.

Donc, tant que vous obtenez l'application officielle et non modifiée su et super-utilisateur et qu'elle est correctement installée avec l'autorisation appropriée, vous n'avez rien à craindre, elle est open source et sûre, vous pouvez vérifier le code source code toi à github. Cependant, il est certainement possible d’obtenir un binaire superutilisateur / su de cheval de Troie, alors assurez-vous que chaque fois que vous obtenez votre binaire superutilisateur / su est digne de confiance (ou compilez vous-même / superutilisateur si vous êtes vraiment paranoïaque).

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.