Obtention de la racine en modifiant default.prop (ro.secure)?

14

Pour obtenir un shell privilégié, vous devez modifier les lignes suivantes aux valeurs données dans le fichier default.prop ro.secure = 0

ro.debuggable = 1

persist.service.adb.enable = 1

J'ai extrait l'image de récupération de mon modèle de téléphone: il est donc possible de modifier les valeurs suivantes dans le fichier default.prop, de remballer l'image et de la flasher à l'aide de fastboot (le chargeur de démarrage est déverrouillé) pour obtenir un shell privilégié, puis de copier le su binaire après remontage du système en lecture / écriture?

Dois-je modifier d'autres valeurs dans l'un des fichiers? Et cela fonctionnera-t-il, du moins en théorie?

Kedar
la source
Avant de réinventer la roue, avez-vous vérifié les développeurs xda pour une méthode racine officielle pour votre appareil?
Mihic
2
Oui, il n'y a pas de méthodes "officielles" et je voulais le faire moi-même pour une fois, c'est un appareil chinois renommé, donc pas beaucoup de support là-bas,
Kedar
Quel appareil voulez-vous rooter?
Flow
@Flow Karbonn A9 / K-Touch W680. Mise à jour: L'approche ci-dessus n'a pas fonctionné, soit parce que l'image n'était pas une récupération de stock en premier lieu ou ce n'est pas si simple. Le téléphone est enraciné maintenant.
Kedar
default.prop est situé dans ramdisk, qui est "réinitialisé" à chaque démarrage
trogper

Réponses:

13

Cette approche va travailler ( à condition qu'il n'y a pas de serrures drôles propriétaires en place partout), mais la partition de récupération est pas partie depuis le début. Le fichier default.prop est écrasé au démarrage, copié à partir de la partition de démarrage, qui n'est pas un système de fichiers directement accessible. Vous avez besoin d'une image de la partition de démarrage, que vous allez ensuite décompresser, effectuer la modification et reconditionner.

En supposant que vous savez comment faire tout cela (puisque vous dites que vous l'avez essayé avec la récupération), je dois avertir à l'avance qu'il est souvent nécessaire d'inclure l'adresse de base lors de la création de l'image avec mkbootimg. Il n'y a aucun moyen de savoir quand cela est nécessaire, il est donc sûr d'inclure toujours une adresse de base. Vous pouvez suivre un tutoriel ici:

www.freeyourandroid.com/guide/extract-edit-repack-boot-img-windows

Le script comprend la commande od avec laquelle vous pouvez obtenir l'adresse de base, au cas où vous souhaiteriez créer votre propre script. Pour en savoir plus sur les étapes manuelles (pour reproduire sur GNU / Linux):

android-dls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_Re-Pack_Boot_Images

Je ne recommande pas l'utilisation des scripts de décompression / reconditionnement, car ils ont des lignes codées en dur non portables dans les cas. Utilisez split_bootimg.pl, puis extrayez gunzip et cpio, après quoi vous utiliserez à nouveau cpio et gzip, suivi de la commande mkbootimg. La seule exception concerne les appareils MTK65xx, où vous aurez besoin des outils de décompression / reconditionnement appropriés (car ils ont des décalages très différents; vous sauterez également le mkbootimg comme le script de reconditionnement le fait pour vous):

github.com/bgcngm/mtk-tools

Et voici un exemple en cours d'un téléphone rebaptisé chinois passant par la même chose pour enfin se rooter:

forum.xda-developers.com/showthread.php?t=1818146&page=5

Je suis désolé de devoir supprimer les liens appropriés, mais je suis apparemment considéré comme un spam potentiel. De plus, je n'ai pas été assez approfondi parce que je ne suis pas vraiment sûr que vous voudriez plus de verbosité.

hattorihanzo
la source
Pouvez-vous créer un lien vers ou expliquer comment extraire le fichier recovery.img ou boot.img du téléphone (sans avoir déjà root)? Merci!
user29020
2

L'approche ci-dessus ne semble pas fonctionner.

Soit parce que la récupération de stock mise en place n'était pas destinée à l'appareil ou que la méthode n'est pas aussi simple et peut impliquer d'apporter d'autres modifications. Le téléphone n'entrerait pas en mode de récupération, qui est le seul mode dans lequel vous obtiendriez un shell privilégié pour effectuer les opérations nécessaires pour obtenir une racine permanente.

Une autre méthode serait de modifier le build.prop dans l'image de démarrage elle-même, de la remballer puis de la flasher et de l' adb pour obtenir un shell privilégié en mode de fonctionnement normal.

Mieux vaut suivre la procédure de quelqu'un d'autre lorsque vous n'êtes pas trop sûr de la vôtre.

Kedar
la source
Cela ne fonctionne pas car la version ADB livrée ne prend pas en charge root. (J'ai recherché le fichier make et la source ADB, je sais de quoi je parle)
Orri