[TUTO] HTC One M8 : Sous KitKat 4.4.2 comment contourner la nouvelle stratégie de sécurité des fichiers sur la carte SD
Avertissement
Attention :
Ces opérations ne sont pas sans risque.
Ni le Forum, ni moi-même ne pourront être tenu pour responsable des éventuels plantages, dommages ou brick du téléphone
Pré-requis
• Avoir un bootloader déverrouillé.
• Avoir un Recovery custom pour installation (j’utilise CWM, je n’ai pas testé avec TWRP, ça devrait fonctionner mais soyez prudent quand même).
• Avoir un M8 rooté.
• Si vous voulez utiliser ADB, assurez-vous d'avoir:
-Android SDK dernière version
-Htc Drivers dernière version
Description
La version Android KitKat 4.4.2 introduit une modification qui interdit aux applications l’écriture de données en dehors de leur répertoire automatiquement déterminé. La moitié des utilisateurs est pour et l’autre contre. Je ne me prononcerai pas sur le fond, bien que je ne pense pas que cette modif améliore fondamentalement la sécurité, mais la manière dont cela est introduit pour le moins « dictatoriale » n’est pas sans impact sur le fonctionnement de nos appareils.
La conséquence est surtout que la plupart des applications n’est pas modifiée pour s’adapter à ces nouvelles conditions et on constate des dysfonctionnements de toutes natures. Certaines applis ne seront jamais modifiées et il faut bien continuer à les faire fonctionner.
Il semble que certaines marques aient modifiées ce nouveau comportement, mais pas HTC.
Une fois le bootloader déverrouillé, un custom recovery installé et le téléphone rooté, il faut disposer d’outils nécessaires à l’utilisation root et notamment la BusyBox qui introduit les commandes Unix nécessaires (qui existent en grande partie sur Linux, mais n’existent pas sous Android). Le premier problème vient du fait que la BusyBox ne s’installe pas correctement sur KitKat 4.4.2, ensuite il faudra neutraliser la sécurité pour l’écriture sur la SD, car sinon on ne peut même pas renommer un fichier avec un « file explorer » ou encore on doit installer les dossiers de fichiers de navigateurs GPS sur la mémoire interne du téléphone.
Pour cette dernière mod j’ai beaucoup galéré, car la plupart des applis du Google Play ne marchent que partiellement ou de manière aléatoire ou même pas du tout. Avec celle que je vous propose plus loin, je n'ai jamais rencontré de problème et tous les programmes et utilitaires que j'utilisais avant sur mon S3 fonctionnent correctement sur le HTC one M8.
C'est parti !
Si l’on tente d’installer BusyBox (gratuit ou payant) sur KitKat, l'installation se déroule correctement, mais dès qu’un programme veut utiliser des fonctions Unix (par ex Onandroid qui permet de faire un backup Nandroid sans rebooter) rien ne fonctionne normalement. La solution est d'installer une version flashable, ce qui permet de contourner les différentes restrictions de KitKat. On peut la trouver ici :
Version 1.21.1 stericson (c’est celle que j’utilise car j’avais l’habitude de celle de Stericson)
Version 1.22.1 Bionic (peut-être plus avancée mais je ne la connais pas)
1) Installation de la BusyBox :
-Télécharger la version choisie et la placer à la racine de la carte SD,
-Redémarrer le M8 en mode bootloader:
==> Soit avec ADB:
=> Connecter le M8 avec une câble USB à votre PC,
=> Ouvrir une session en ligne de commande comme administrateur,
=> Changer le directory courant par celui des outils ADB,
=> Taper la commande ADB reboot bootloader,
=> Après une bref instant le menu du bootloader apparait sur le M8.
Windows Console ADB :
==> Soit, directement sur le M8, appuyer longuement sur « power on » et « volume bas » simultanément, jusqu'à apparition du menu du Bootloader.
Ensuite, sur le menu du Bootloader:
-Sélectionner recovery, puis
-Sélectionner « Install ZIP », puis
-Sélectionner « Choose zip from /storage/sdcard1 »
- (Attention, en fait il y a plusieurs SD sur les systèmes actuels, la mémoire utilisateur à laquelle le système ne devrait pas toucher (ce n'est pas à 100% vrai) s'appelle généralement Sdcard ou Sdcard0, il faut faire la différence entre cette Sdcard interne et Sdcard externe qui est la carte SD physiquement démontable dont le nom varie en fonction des téléphones/tablettes, marques et même des versions. Mon conseil : dès que vous êtes root, créer des simlinks à la racine pour adresser ces mémoires directement sans passer par les points de montage fournis, comme ça vous utiliserez toujours les mêmes noms).
-Puis suivre l'arborescence et sélectionner le fichier téléchargé précédemment
-Puis confirmer l'install
==> la fin se termine par « install from sdcard complete »
Rebooter le téléphone.
Pour contrôler que tout se soit bien passé, lancer une session en terminal émulateur, taper SU pour acquérir les droits root, puis busybox et les commandes disponibles sont alors listées.
Vous pouvez aussi le faire via ADB :
En ligne de commande Windows :
ADB SHELL
SU
BUSYBOX
Windows console log :
==> Fin de la première étape.
2° Modif accès en ecriture à la Carte SD :
Maintenant nous allons appliquer le patch de contournement de la sécurité, qui consiste en un remplacement du fichier etc/platform/permission.xml. Nous allons le flasher car comme la BusyBox, nous ne pourrions toucher à ce fichier système de la racine, sans bypasser les mécanisme de protection du système.
-Télécharger le fichier « extsdcardfix-flashable.zip » qui se trouve ICI. Attention, il faut cliquer sur le l'icône de téléchargement de la première ligne (flèche vers le bas), juste avant l'icône "trois points".
L'installer de la même manière que la BusyBox installé précédemment.
Voilà, ces modifs vont permettre de retrouver le fonctionnement des releases précédentes.
Pour conclure, comme je l'ai dit en introduction, il faudra probablement améliorer la sécurité mais certainement pas avec des décisions qui semblent prises sur un coin de table comme cela semble avoir été fait et surtout avec l'adhésion des développeurs et, mais là ce sera plus dur, des utilisateurs.
Dernière édition par Vampirex le Mar 12 Aoû 2014 - 11:46, édité 3 fois