11 votes

Peut-on désactiver la vérification de la signature d'un code ?

J'ai écrit un patch/utilitaire qui désactive la fonctionnalité par défaut d'OS X consistant à lancer iTunes lorsque l'on appuie sur le bouton de lecture. Cet utilitaire modifie essentiellement le Remote Control Daemon ( rcd ) et commente la commande Apple script pour lancer iTunes. Cela a bien fonctionné jusqu'à la 10.7, mais avec la 10.8 rcd a maintenant une signature de code. Le patch provoque maintenant Exception Type: EXC_CRASH (Code Signature Invalid) après que l'exécutable ait été corrigé.

De toute évidence, la vérification de la signature du code fonctionne comme prévu, mais je me demandais si quelqu'un avait des idées sur les options que je pourrais avoir. Existe-t-il un moyen légal de désactiver cette vérification sur un seul exécutable ? J'ai essayé de désactiver GateKeeper, mais cela n'a pas fonctionné, ce qui est compréhensible.

D'autres suggestions pour désactiver le bouton de lecture ?

6voto

J'ai réussi à faire fonctionner le patch après avoir exécuté sudo spctl --master-disable . Je ne sais pas s'il existe un moyen d'utiliser spctl pour cibler uniquement rcd cependant.

Remplacer la signature du code par une identité ad-hoc avec sudo codesign -f -s - /System/Library/CoreServices/rcd.app/ n'a pas semblé fonctionner. Edit : mais comme mentionné par user48986, cela fonctionne si vous spécifiez le chemin vers l'exécutable, comme sudo codesign -f -s - /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd .

3voto

BYTE RIDER Points 31

Pour fixer la signature de MirrorPro par exemple :

sudo codesign -f -s - /Applications/MirrorPro.app/Contents/MacOS/MirrorPro
/Applications/MirrorPro.app/Contents/MacOS/MirrorPro: replacing existing signature

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X