erdnaxe

[ROOT] Root du Rainbow Jam 4G

Recommended Posts

Suite à la lecture du code source du système, j'ai trouvé un moyen de rooter le Wiko Rainbow Jam 4G !

 

Prérequis :

1 - Paramétrage de adb :

  1. Aller dans "A propos du téléphone" dans les paramètres et spammer "Numéro de build"pour activer les options pour développeur,
  2. Ensuite aller dans "les options pour développeur" dans les paramètres et cocher "Débogage USB",
  3. Connecter le téléphone au PC et vérifier que la commande "adb device" marche (sans "no permissions").

2 - Installer SuperSu :

  1. Exécuter "adb shell setprop persist.tinno.debug 1". Cela a pour effet de passer adb en root,
  2. Après faite "adb shell" et voilà ! Vous avez un terminal root !
  3. Pour installer le binaire SU avec SuperSU, vous pouvez utiliser un script pour passer de KingoRoot à SuperSU (sur Google). Notez que KingoRoot n'est pas installé. Il n'est donc pas nécessaire de le supprimer !

Je vous conseille de mettre à jour le binaire SU via l'application SuperSU pour effectuer une installation propre.

-- erdnaxe

 

Edit : un script pour installer SuperSU à partir d'un shell root est disponible ici : http://www.w0lfdroid.com/2015/05/How-to-Remove-Replace-KingUser-KingRoot-with-SuperSU.html

Edited by erdnaxe
  • Like 1

Share this post


Link to post
Share on other sites

Bonjour,

Jolie astuce qui marche très bien, merci.

Mais là je suis en firmware V8 (celui livré sur le tél.). Je me demande si cela marchera encore en V12 ou V13 donc j'hésite à faire la mise à jour.


EDIT : correction, dans le build.prop on trouve V12, donc je pense que c'est une erreur d'affichage. Je serais donc déjà en V12.

Edited by Ultrix

Share this post


Link to post
Share on other sites

Je me réponds à moi-même : j'ai fait la m-a-j vers V13 et j'ai conservé mon adb shell root ?

Installation manuelle de SuperSU 2.79 depuis adb shell OK, root fonctionnel.

Share this post


Link to post
Share on other sites

Jolie découverte, cette astuce....

Moins stressant que les outils comme Kingoroot ou autres

Merci infiniment

 

Share this post


Link to post
Share on other sites
Le 13/02/2017 à 13:22, Ultrix a dit :

Installation manuelle de SuperSU 2.79 depuis adb shell OK, root fonctionnel.

Tu peux préciser comment tu as fait ?

Depuis le Play Store, on ne peut installer SuperSU... ?

Si je l'installe depuis adb, il me dit 'success' mais quand lje lance SiperSU, il affiche un message 'Aucun binaire SU n'est installé'....

 

et pourtant, j'ai bien mis un 'su' dans /system/xbin

 

Edited by Doume59249

Share this post


Link to post
Share on other sites

Je suis aller télécharger le zip de SuperSU qu'on est sensé installer depuis un recovery (UPDATE-SuperSU-vX.xx.zip), je l'ai envoyé sur le télephone par adb push UPDATE-SuperSU-vX.xx.zip /data/local/tmp, je l'ai dézippé sur place, j'ai analysé tout ce que fait update-script et j'ai fait à la main, depuis le shell root donné par adb shell ce qui est nécessaire sur le Rainbow Jam 4G en fonction de la version d'Android, du type de filesystem (ext4), de la présence ou pas de certains fichiers.

J'y ai passé une petite heure...

Je peux essayer de retrouver toutes les commandes tapées, mais il y en avait un paquet !

 

Il y a peut-être (sans doute ?) plus simple, mais comme je suis un inconditionnel de la ligne de commande Unix ça m'a amusé de le faire comme ça. Et ça marche.

 

Je ne me souviens plus de la version vX.xx que j'ai utilisée... v2.76 peut-être ? je confirmerai quand j'aurai ça sous les yeux.

Edited by Ultrix
  • Like 1

Share this post


Link to post
Share on other sites

Ok, compris, je vais essayer d'en faire autant

La ligne de commande Linux, aucun problème pour moi : J'ai fait ma carrière là-dessus (et je suis à la retraite, donc ça fait un moment 😁 )

Merci

 

Share this post


Link to post
Share on other sites

Bonjour,

Je déterre ce topic ;)

J'ai essayé les 2 versions supersu 2.0 & 2.4 de ce lien http://www.w0lfdroid.com/2015/05/How-to-Remove-Replace-KingUser-KingRoot-with-SuperSU.html
J'ai le message "aucun binaire SU n'est installé".

La seule solution est de passer le script update-binary du supersu2.79 dans le ADB shell à la main ligne par ligne?
Il n'y vraiment pas plus simple ?

 

Merci d'avance

 

Share this post


Link to post
Share on other sites
Posted (edited)

Hmmm... ça commence à faire un bail que je me suis penché là-dessus, il faut que je remette le nez dedans. Il me semble que j'avais écrit un .bat

Ne me dis pas que tu as rooté avec cette s...perie de Kingroot ? parce que là c'est le saut dans l'inconnu, ça peut être tout et n'importe quoi.

By the way, les versions de SuperSU que tu as essayées sont vraiment préhistoriques, même pour rooter un engin pas tout récent.

Edited by Ultrix

Share this post


Link to post
Share on other sites
Posted (edited)

Ah non, ça sera vraiment mon ultime recourt

1 hour ago, Ultrix said:

Ne me dis pas que tu as rooté avec cette s...perie de Kingroot ? parce que là c'est le saut dans l'inconnu, ça peut être tout et n'importe quoi.

 

Ah non, ça sera vraiment mon ultime recours.

Avec 2.79 ça devrait fonctionner ?

Edited by wadafukou

Share this post


Link to post
Share on other sites
Posted (edited)

Tu en es où avec ton root exactement ? parce que j'ai du mal à me faire une idée.

As-tu appliqué ce qui était donné dans le post #1 de ce sujet, mais qui ne fonctionne qu'en firmware V12 ? Wiko a "bouché le trou" dans la V13 mais si on rootait avant de faire la m-a-j en OTA, le root restait (ce que j'ai fait).

Tu ne rooteras pas ton Wiko avec SuperSU. Il faut le rooter avant. SuperSU c'est juste ce qui sert aux applications à utiliser le root, mais pour installer SuperSU il faut :

- soit le faire depuis TWRP en installant UPDATE-SuperSU-Vx.x.zip ce qui fait le root dans la foulée, mais je ne connais pas de TWRP pour le Rainbow Jam 4G

- soit plus ou moins (cf. plus bas) "à la main" depuis un shell root obtenu via ADB (invite = # et pas $)

J'ai retrouvé ce que j'avais fait. Je suis parti de UPDATE-SuperSU-V2.46.zip et j'ai fait un shell script install.sh à partir du update-binary. Ce script peut se lancer depuis un shell root (donc via ADB) sur le téléphone lui-même à condition d'y avoir extrait le zip (sur la SD par exemple) et il met en place tout ce qu'il faut : les binaires su, l'appli SuperSU.

Je peux mettre ça à disposition, mais encore une fois il te faut un shell root. C'est la condition préalable :

- si tu es encore en V12 (qui est affiché comme V8 dans les paramètres...à propos !), appliquer le post #1 de ce sujet

- si tu es en V13 ce trou est bouché donc il te faut un autre moyen

Edited by Ultrix

Share this post


Link to post
Share on other sites

Merci pour ton aide c'est sympa.

Mon téléphone indique que j'ai la V8 (Wiko rainbow jam 4g version 8).

J'ai bien réussi à faire le shell root sous adb : #

Concernant le script install.sh, c'est toi qui l'a fait ? je ne l'ai pas vu dans le dossier du 2.46.
Je le veux bien si tu l'as encore.

 

Share this post


Link to post
Share on other sites

Juste pour confirmer : que donne

adb shell id

Et si tu fais :

adb pull /system/build.prop

et que tu ouvres sur ton PC le build.prop récupéré (si Notepad ne l'ouvre pas correctement, utilise le freeware Notepad++) qu'est-ce que tu as à ces lignes :

ro.tcustom.build.version=WIKO RAINBOW JAM 4G Version 13
ro.custom.build.version=WIKO RAINBOW JAM 4G Version 8
ro.internal.build.version=L5251AE_MP_5.1_WIK_FR_14_13

 

Le script : oui c'est moi qui l'ai fait, il ne fait pas partie de SuperSU. J'ai fait un zip où j'ai ajouté ce script à lancer manuellement depuis adb shell

Pour être franc avec toi, je ne me souviens pas jusqu'à quel point je l'ai testé puisque j'avais fait ça manuellement. Si tu veux j'uploade le zip complet avec quelques instructions, mais c'est sans aucune garantie, pas même celle de ne pas briquer ton Wiko !

 

Share this post


Link to post
Share on other sites
Quote

root# adb shell id
uid=0(root) gid=0(root) groups=1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),2001(cache),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats) context=u:r:tinno_su:s0

 

Concernant le adb pull /system/build.prop ça me renvoie un device not found

 

Pas de pb, mon wiko est tout cassé et j'ai tout sauvegardé.

 

Share this post


Link to post
Share on other sites

Si adb pull ne marche pas, tu ne vas pas aller loin dans l'installation.

Quel message d'erreur exact ? c'est tout à fait anormal.

Share this post


Link to post
Share on other sites

Voici le message:

Quote

root@L5251:/ # adb pull /system/build.prop
* daemon not running. starting it now on port 5038 *
* daemon started successfully *
error: device not found
1|root@L5251:/ #

 

Share this post


Link to post
Share on other sites

Cette commande doit être lancée depuis l'invite de CMD (ou Powershell) de Windows, pas depuis le shell du smartphone !

On ne fait pas d'adb dans un shell adb.

Share this post


Link to post
Share on other sites

Ah sacré moi... j'avais essayé de spécifier un chemin après "adb pull /system/build.prop" pour que ça l'envoie sur mon linux.

 

Quote

ro.tcustom.build.version=WIKO RAINBOW JAM 4G Version 13
ro.custom.build.version=WIKO RAINBOW JAM 4G Version 8
ro.internal.build.version=L5251AE_MP_5.1_WIK_FR_14_13

 

Share this post


Link to post
Share on other sites

OK, tu est dans la même version que moi.

Voilà ce que je te propose : je te mets tout en vrac et ça va être à toi de te débrouiller, y compris si cela te plante ton Wiko ! Je pars en vacances et je vais donc être beaucoup moins souvent (voire pas du tout suivant la météo et mes occupations) sur ce forum

Première étape : envoyer ce zip : https://drive.google.com/open?id=1vYwpbuo-naFWywnpQwaeMbexCpcPQUT8 vers le Wiko dans /data/local/tmp

adb push SuperSU-v2.46+shell_installer.zip /data/local/tmp

Ensuite deux possibilités :

- soit tu as une appli pour le dézipper sur le smartphone, tu auras donc dans /data/local/tmp/ des dossiers et un script install.sh 

Dans ce cas suite plus bas après la ligne de séparation.

- soit tu ne l'as pas et il faut installer busybox (qui te rendra service après le root de toutes facons). Télécharge ceci : https://drive.google.com/open?id=1qc21o7QcaJOZGiv0TlW6NBsITUpUFha4 et extrais-en le fichier busybox-1.20.2r2

Puis envoie le vers /data/local/tmp

adb push busybox-1.20.2r2 /data/local/tmp

Obtiens un shell root sur le Wiko :

adb shell

Et dans ce shell root, tape les commandes suivantes :

mount -o remount,rw /system

cd /data/local/tmp

cp busybox.2r2 /system/xbin/busybox

chmod 755 /system/xbin/busybox

/system/xbin/busybox --install -s /system/xbin

Cela te donne toutes les commande de busybox, dont... unzip !

Suite :

cd /data/local/tmp

unzip SuperSU-v2.46+shell_installer.zip

-------------------------------------------------------------------------------------------------------------------------------------------------------

Dans un cas comme dans l'autre, tu le retrouves donc avec dans /data/local/tmp des dossiers et un fichier install.sh :

root@L5251:/data/local/tmp # ls -l
drwxr-xr-x root     root              2019-07-12 18:30 META-INF
-rw-rw-rw- root     root      4037125 2019-07-12 18:18 SuperSU-v2.46+shell_installer.zip
drwxr-xr-x root     root              2019-07-12 18:30 arm
drwxr-xr-x root     root              2019-07-12 18:30 arm64
drwxr-xr-x root     root              2019-07-12 18:30 armv7
-rw-rw-rw- root     root      1165484 2012-11-01 19:25 busybox-1.20.2r2
drwxr-xr-x root     root              2019-07-12 18:30 common
-rwxr-xr-x root     root        13818 2019-07-12 18:30 install.sh
drwxr-xr-x root     root              2019-07-12 18:30 mips
drwxr-xr-x root     root              2019-07-12 18:30 mips64
drwxrwxrwx root     root              2017-02-12 18:50 supersu
drwxr-xr-x root     root              2019-07-12 18:30 x64
drwxr-xr-x root     root              2019-07-12 18:30 x86

(plus d'autres choses qui y étaient avant, éventuellement)

Et là tu te lances :

./install.sh

Je ne l'ai pas fait sur mon Rainbow Jam 4G car il y a déjà tout ce qu'il faut (fait à la main).

 

Share this post


Link to post
Share on other sites

SUPER merci infiniment ! 😅

J'ai eu ce premier message:

  Usage: install.sh <path to system.img file>

j'ai bidouillé le script puis j'ai eu celui-ci:

ERROR: can't mount /system

Il va falloir que je comprenne comment fonctionne le script.

Merci pour le gros coup de pouce.

Bonnes vacances

Quote

 

Share this post


Link to post
Share on other sites
Posted (edited)

Hummm..... ça veut dire que ce script ne fait pas ce que je pensais qu'il faisait c-a-d modifier un système "live". Il est fait pour modifier un dump de la partition system (une image) dans le but de la reflasher après modification. Grosse différence. Maintenant ça me revient, c'est là-dessus que je travaillais, effectivement. Je t'avais prévenu, je ne me souvenais plus trop ce que j'avais fait ou pas dans ce "projet".

Différence notable, il faut faire tourner ce script sur un PC sous Linux où on a descendu le dump de la partition system du Wiko. Pas la même approche.

Il faut donc le modifier. Si j'ai un peu de temps aujourd'hui je regarderai. Les modifications ne sont pas profondes. Je pars demain.

P.S. L'autre approche est différente et beaucoup plus safe mais pas bien compliquée. Facile de faire un dump de la partition system puisqu'on a un shell root. Ensuite on patche cette image de dump et on la reflashe en mode fastboot. J'avais appliqué ça sur je ne sais quelle tablette achetée à l'époque qui donnait aussi un shell root par adb. 

Edited by Ultrix

Share this post


Link to post
Share on other sites
Posted (edited)

Pas pu résister longtemps, et les modifs sont vraiment mineures. J'ai aussi réalisé que je suis parti une vieille version de l'installer SuperSU qui ne supporte pas le mode systemless (modification de la partition de boot mais on ne touche pas à /system) possiblement nécessaire à partir d'Android 6.0. J'ai donc rajouté un test garde-fou. De toutes façons faire un install systemless sur un système "live" et pas sous un recovery est beaucoup plus compliqué et nécessiterait sans doute pas mal de modifications de l'installer SuperSU.

Nouvelle version du script incluse. En comparant les deux tu verras que les modifs sont minimes. Pas testée plus que l'autre.

EDIT : je te conseille vivement de faire un dump de ta partition system sur la SD externe avant.

Depuis un shell root sur le Rainbow

dd if=/dev/block/bootdevice/by-name/system of=/storage/sdcard1/system.img 

 

 

install.sh

Edited by Ultrix

Share this post


Link to post
Share on other sites

Ah il y a du nouveau avec ton nouveau script :

Il faut envoyer un 'su' dans /system/xbin  ?

Quote

root@L5251:/data/local/tmp # sh install.sh
*****************
SuperSU installer
*****************
- Mounting /system read-write
2+0 records in
2+0 records out
2 bytes transferred in 0.001 secs (2000 bytes/sec)
3+0 records in
3+0 records out
3 bytes transferred in 0.001 secs (3000 bytes/sec)
12+0 records in
12+0 records out
12 bytes transferred in 0.001 secs (12000 bytes/sec)
3+0 records in
3+0 records out
3 bytes transferred in 0.001 secs (3000 bytes/sec)
- Disabling OTA survival
chattr: stat /system/bin/su: No such file or directory
chattr: stat /system/sbin/su: No such file or directory
chattr: stat /vendor/sbin/su: No such file or directory
chattr: stat /vendor/bin/su: No such file or directory
chattr: stat /vendor/xbin/su: No such file or directory
chattr: stat /system/xbin/sugote_mksh: No such file or directory
chattr: stat /system/lib/libsupol.so: No such file or directory
chattr: stat /system/lib64/libsupol.so: No such file or directory
- Removing old files
- Placing files
mkdir failed for /system/bin/.ext, File exists
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
rm: /system/bin/.ext/.su: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
rm: /system/xbin/su: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
rm: /system/xbin/daemonsu: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
rm: /system/xbin/sugote: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
rm: /system/xbin/sugote-mksh: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
rm: /system/xbin/supolicy: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
chcon:  Could not label /libsupol.so with u:object_r:system_file:s0:  Operation not supported on transport endpoint
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
rm: /system/app/SuperSU/SuperSU.apk: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
rm: /system/etc/install-recovery.sh: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
rm: /system/etc/init.d/99SuperSUDaemon: No such file or directory
install.sh[355]: can't create /system/etc/init.d/99SuperSUDaemon: No such file or directory
chown: /system/etc/init.d/99SuperSUDaemon: No such file or directory
chown: /system/etc/init.d/99SuperSUDaemon: No such file or directory
Unable to open /system/etc/init.d/99SuperSUDaemon: No such file or directory
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
chcon:  Could not label /system/etc/init.d/99SuperSUDaemon with u:object_r:system_file:s0:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
chcon:  Could not label u:object_r:system_file:s0 with -h:  No such file or directory
usage:  chcon context path...
usage:  chcon context path...
usage:  chcon context path...
- Remounting /system read-only
- Done !
root@L5251:/data/local/tmp # sh install.sh

 

Share this post


Link to post
Share on other sites

Normalement le script fait tout le boulot, mais vu le nombre d'erreurs qu'il a craché, j'en doute un peu. Tous les chcon ont échoué et ça c'est pas bon signe si le firmware est en selinux enabled (me souviens plus)

Celle-ci m'inquiète particulièrement mkdir failed for /system/bin/.ext, File exists car elle indique qu'il reste des scories d'une tentative précédente...

Compare le résultat de ces commandes (depuis un "adb shell" donc un shell root sur le Wiko) pour voir ce qu'il a fait (ou pas) :

root@L5251:/data/local/tmp # ls -l /system/xbin/su
-rwxr-xr-x root     root        79468 2017-02-12 18:53 su

root@L5251:/data/local/tmp # ls -l /system/xbin/supolicy
-rwxr-xr-x root     root        38332 2017-02-12 18:56 supolicy

root@L5251:/data/local/tmp # ls -l /system/xbin/daemonsu
-rwxr-xr-x root     root        79468 2017-02-12 18:53 daemonsu

root@L5251:/data/local/tmp # ls -l /system/lib/libsupol.so
-rw-r--r-- root     root       203236 2017-02-12 18:59 libsupol.so

root@L5251:/data/local/tmp # cat /system/bin/install-recovery.sh
#!/system/bin/sh

# If you're implementing this in a custom kernel/firmware,
# I suggest you use a different script name, and add a service
# to launch it from init.rc

# Launches SuperSU in daemon mode only on Android 4.3+.
# Nothing will happen on 4.2.x or older, unless SELinux+Enforcing.
# If you want to force loading the daemon, use "--daemon" instead

/system/xbin/daemonsu --auto-daemon &

# Some apps like to run stuff from this script as well, that will
# obviously break root - in your code, just search this file
# for "install-recovery-2.sh", and if present, write there instead.

/system/etc/install-recovery-2.sh

root@L5251:/data/local/tmp # ls -l /system/app/SuperSU
-rw-r--r-- root     root      6581871 2017-02-12 19:02 Superuser.apk

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.