Magazine Conso

Make my life easier : les fichiers SHSH, c’est quoi ? et comment les sauvegarder ?

Publié le 03 novembre 2010 par Iphonezine.fr

Cet article s’adresse aux débutants, qui découvrent Cydia et le jailbreak pour la première fois. Il permet également de faire un petit rappel sur le sujet si vous ne suivez pas régulièrement iPhonezine, car nous avons déjà parlé de ces fameux fichiers SHSH à maintes reprises sur notre site (lire par exemple cet article, ou encore celui-là).

Make my life easier : les fichiers SHSH, c’est quoi ? et comment les sauvegarder ?

Depuis l’iOS 3 et l’iPhone 3GS, Apple a mis en place sur tous ses nouveaux iDevices (iPhone 3GS, 4, iPod touch 3G, 4G et iPad) un système de contrôle des firmwares par signature électronique. Quand vous restaurez un firmware sur un de ces appareils, iTunes vérifie tout d’abord l’intégrité du firmware chargé en établissant une connexion vers un serveur d’Apple (gs.apple.com). Au cours de cette connexion, le numéro ECID unique à l’appareil ainsi que 17 fichiers qui identifient le firmware que vous voulez restaurer sont envoyés par iTunes au serveur. En retour, le serveur transmet à iTunes des fichiers de signature SHSH, un fichier SHSH pour chaque paire (ECID/fichier du firmware). L’ensemble de ces fichiers SHSH constituent une empreinte digitale ou signature SHSH pour le firmware en question. Cette signature est alors utilisée pour vérifier l’authenticité et l’intégrité du firmware, décidant ainsi si votre appareil peut être restauré ou pas avec ce firmware.

En résumé, la signature SHSH d’un firmware est fournie par Apple et dépend du numéro d’ECID de votre iDevice. Comme chaque iDevice possède un unique ECID, un même firmware sur deux appareils iOS différents aura deux signatures différentes. A chaque sortie d’un nouveau firmware, Apple cesse de fournir les signatures SHSH pour l’ancien firmware, dans le but de forcer les utilisateurs à mettre à jour leurs terminaux. Vous devez donc toujours posséder la signature SHSH d’un ancien firmware pour votre iDevice si vous voulez un jour restaurer ce dernier avec cet ancien firmware.

Apple durcit encore plus sa politique de sécurité en imposant une vérification de la signature au niveau du bootrom sur tous ses derniers modèles (iPhone 3GS nouveau bootrom et 4, iPod touch 2G modèle MC, 3G et 4G et iPad). Plus récemment, avec l’arrivée de l’iOS 4, le système de sécurité ECID/SHSH est généralisé sur les iPhone 3G et iPod touch 2G, mais il est bien moins restrictif car il ne concerne que les nouveaux firmwares à partir du 4.0 et il est toujours possible sur ces deux anciens modèles d’appareils iOS d’utiliser redsn0w ou PwnageTool pour contourner les erreurs d’iTunes lors d’une restauration même si vous ne disposez pas de signature SHSH. A noter que vous pouvez restaurer à votre aise un firmware 3.** sur un iPhone 3G ou un iPod touch 2G sans aucune restriction, et pour les iPhone 2G et iPod touch 1G, Apple s’en moque comme de colin-tampon !

Au niveau protocolaire, la connexion entre iTunes sur votre ordinateur et le serveur d’Apple pour obtenir la signature SHSH utilise un protocole spécifique non crypté, facilitant le décorticage de la procédure en sniffant les échanges de données sur le réseau. De plus les fichiers SHSH n’ont pas de marquage particulier, par exemple temporel comme la date de création. Il est donc tout à fait possible d’utiliser une attaque par rejeu consistant pour une personne à « se mettre au milieu » (entre iTunes et Apple) et à intercepter ces fameux fichiers SHSH et à les rejouer, c’est-à-dire les retransmettre tels quel à iTunes. C’est ce qui a permis à Saurik, le développeur de Cydia, de mettre en place un serveur pour sauvegarder tous vos fichiers SHSH via Cydia, vous permettant d’utiliser son serveur plutôt que celui d’Apple lors de la restauration de votre iDevice (pour cela, il suffit de modifier le fichier hosts de votre PC/Mac pour rediriger les connexions sortantes sur l’adresse IP du serveur d’Apple vers l’adresse IP du serveur de Saurik, cf notre tutoriel).

Comment sauvegarder donc la signature SHSH sur Cydia ?

Quand vous lancez Cydia pour la première fois sur votre iDevice (par exemple, vous venez d’acquérir un nouvel iPhone neuf ou un iPhone d’occasion qui n’a jamais été jailbreaké, et vous lancez Cydia pour la toute première fois sur cet iPhone), l’application identifie et mémorise dans sa base de données le numéro ECID de votre iDevice, et vous propose alors cette page d’accueil très particulière :

Make my life easier : les fichiers SHSH, c’est quoi ? et comment les sauvegarder ?

Le numéro ECID de votre appareil est ainsi affiché sur la page d’accueil de Cydia, ainsi qu’une longue explication sur les fichiers SHSH, et à la fin de cette explication, vous verrez alors la ligne Make my life easier, thanks! avec un petit cœur devant. Cliquez donc impérativement et immédiatement sur cet onglet Make my life easier, thanks! si vous voulez laisser Cydia enregistrer vos fichiers SHSH. Si vous faîtes une erreur, ou ne faites rien, ou cliquez par mégarde sur « I hate jailbreaking. Go away. », Cydia ne sauvegardera pas vos fichiers SHSH, et ne vous reposera plus la question : vous ne pourrez alors plus jamais revenir en arrière ! Le petit coeur avec « Make my life easier » n’apparait qu’une fois ! Donc faîtes bien attention et n’oubliez pas de cliquer dessus !

Cydia sauvegardera alors automatiquement sur son serveur la signature SHSH du firmware actuellement sur votre iDevice, mais également pour tous les prochains firmwares à venir (même si ces firmwares ne sont pas installés sur votre iDevice !). Pour vous rappeler, Cydia vous liste ensuite en haut de sa page d’accueil sur une ligne écrite en vert les firmwares pour lesquels vous disposez de fichiers SHSH. Par exemple, sur mon iPhone, j’ai les fichiers SHSH pour les firmwares 4.0.1, 4.0.2 et 4.1, alors que je n’ai jamais installé le firmware 4.0.2 ! (je suis passé directement du 4.0.1 à 4.1) :

Make my life easier : les fichiers SHSH, c’est quoi ? et comment les sauvegarder ?

Si vous ne voyez pas cette petite ligne écrite en vert, cela veut dire que Cydia n’a rien sauvegardé pour vous ! (et oui, peut-être que vous n’avez pas bien cliqué sur Make my life easier ! et maintenant c’est trop tard pour revenir en arrière, vous devez utiliser TinyUmbrella !)

Pourquoi je n’ai pas la ligne « Make my life easier, thanks! » avec le petit coeur sur la page d’accueil de Cydia ?

1ère réponse : Le petit coeur avec « Make my life easier » n’apparait qu’une fois, la première fois que Cydia détecte votre iDevice ! Etes-vous bien sûr à 100% que vous êtes la première personne à lancer Cydia sur votre iDevice ? Si vous avez un iDevice d’occasion ou un iDevice de refurb récupéré via le service de garantie d’Apple, il y a de fortes chances que cet appareil soit déjà jailbreaké par son ancien propriétaire ! Maintenant si ce dernier a bien cliqué sur Make my life easier, vous devez alors voir apparaître la ligne verte avec la liste des iOS ayant les fichiers SHSH sauvegardés (comme sur la capture d’écran ci-dessus de mon iPhone).

2ème réponse : Le numéro ECID de votre appareil est affiché sur la page d’accueil de Cydia, ainsi qu’une longue explication sur les fichiers SHSH, et à la fin de cette explication, se trouve alors la ligne « Make my life easier, thanks! » avec un petit cœur devant. La hauteur de l’écran de l’iPhone étant petite, avez-vous pensé à scroller la page d’accueil vers le bas pour voir apparaître la ligne « Make my life easier, thanks! » ?…

Que faire si Cydia ne sauvegarde pas vos fichiers SHSH ?

Rien n’est perdu, il vous suffit d’utiliser TinyUmbrella pour sauvegarder vous-même les fichiers SHSH sur votre ordinateur ! (Lire cet article et ce tutoriel).
Laissez TinyUmbrella identifier votre appareil iOS la première fois, et à chaque sortie d’un nouveau firmware, il vous suffit de lancer le logiciel pour récupérer la nouvelle signature SHSH sans avoir à connecter votre iDevice à votre ordinateur (et donc sans avoir à mettre ce firmware sur votre iDevice !).

Cydia ou TinyUmbrella ? quoi chosir ?

Si Cydia sauvegarde déjà vos fichiers SHSH, il ne sert strictement à rien d’utiliser TinyUmbrella ! TinyUmbrella fait exactement la même chose que Cydia, et de plus TinyUmbrella peut également, si besoin, rapatrier sur votre PC tous vos fichiers SHSH stockés sur le serveur de Cydia !

Au final, les fichiers SHSH servent à quoi plus concrètement ?

Pour l’instant, les fichiers SHSH nous sont seulement utiles pour downgrader le firmware d’un iDevice (par exemple, pour restaurer un iPhone 3GS au firmware 3.1.3, vous devez posséder le fichier SHSH pour ce firmware). Les choses semblent cependant changer, d’après Comex : ces fichiers pourraient également nous servir pour avoir le jailbreak untethered de l’iOS 4.2 ! (lire cet article).

iphonezine-tag


Retour à La Une de Logo Paperblog

A propos de l’auteur


Iphonezine.fr 1907 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Magazines