Dans ce post je vais expliquer comment installer et utiliser TSSchecker écrit par Tihmstar pour OS X et modifié par moi-même pour GNU/Linux.
TSSchecker
Tout d’abord un bref tour de ce que permet TSSchecker : Comme son nom l’indique il verifie auprès du TSS Server la validité de la signature d’une version d’iOS. Vous pouvez verifier la signature d’une version d’iOS en fonction de l’appareil ou de l’ECID de celui-ci.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Usage: tsschecker [OPTIONS]
Checks (real) signing status of device/firmware
-d, --device MODEL specific device by its MODEL (eg. iPhone4,1)
-i, --ios VERSION specific iOS version (eg. 6.1.3)
-h, --help prints usage information
-o, --ota check OTA signing status, instead of normal restore
-b, --no-baseband don't check baseband signing status. Request a ticket without baseband
-e, --ecid ECID manually specify ECID to be used for fetching blobs, instead of using random ones
ECID must be either dec or hex eg. 5482657301265 or ab46efcbf71
--beta request ticket for beta instead of normal relase (use with -o)
--list-devices list all known devices
--list-ios list all known ios versions
--build-manifest manually specify buildmanifest. (can be used with -d)
--nocache ignore caches and redownload required files
--print-tss-request
--print-tss-response
Voici un exemple ci-dessous avec l’iPhone 5C comme appareil et iOS 7.1.1
Les dépendances
Avant de pouvoir compiler TSSchecker, il vous faudra quelques librairies dont celles de libimobiledevice, libcrippy ainsi que libpartialzip.
Libimobiledevice
Libimobiledevice est assez long à installer, mais très pratique pour la suite. Le code source est disponible sur leur page Github. Il vous suffit ensuite de suivre les instructions dans les README.
Pour les débutants (ou les flemmards) je vous conseil de lire mon post sur easymobiledevice qui founit un script complêt pour installer ces fameuses libraries et les dépendances.
En plus de libimobiledevice, il faudra installer libcrippy puis libpartialzip.
Pour installer ces deux libs executez cette commande dans le dossier de celles-ci : ./autogen.sh && make && sudo make install
Si cette commande vous renvoie cette erreur : -bash: ./autogen.sh: Permission denied
Executez cette commande : chmod +x autogen.sh
Compilation et installation de TSSchecker
Si vous avez suivis toutes les étapes vous êtes prêt à installer TSSchecker.
Linux
Maintenant que vous avez installé toutes les dépendances et libraries pour compiler TSSchecker, nous allons installer une dernière lib : libbsd-dev. sudo apt-get install libbsd-dev
En effet, le code utilise les headers BSD et non ceux de GNU/Linux.
Avant la compilation, je vous conseil de lancer le script autogen.sh
, qui va se charger de génerer le script configure
qui à son tour va vérifier si toutes les bibliothèques sont présentes pour la compilation. Maintenant il ne vous reste plus qu’à cloner le projet et le compiler :
Si vous souhaitez l’installer : sudo make install
Le Makefile va copier tsschecker (= $(TARGET)) dans /usr/local/bin/
vous y retrouverez tous les fichiers binaires de libimobiledevice.
OS X
Pour OS X c’est plus simple que sur Linux, il vous suffit de cloner le projet puis vous le lancez à l’aide de Xcode. A ce moment il ne vous restera plus qu’à compiler (cmd + B) puis à executer (cmd + R).
Si vous souhaitez l’installer je vous conseil de le copier dans /usr/local/bin/
tout comme les executables de Libimobiledevice.
En esperant que ce post a été utile.
Source code pour Mac OS X par @tihmstar : https://github.com/tihmstar/tsschecker
Source code pour Linux par @matteyeux : https://github.com/matteyeux/tsschecker
Si vous avez besoin d’infos contactez-moi sur Twitter : @matteyeux