Contourner l'attestation SafetyNet sur les appareils dotés d'un chargeur de démarrage déverrouillé

Il est possible de contourner l'attestation matérielle et de transmettre SafetyNet sur les appareils dotés d'un chargeur de démarrage déverrouillé à l'aide d'un module Magisk. Continuer à lire!

Au cours des deux dernières années, le défi consistant à contourner l'attestation SafetyNet est passé d'un simple chat et un jeu de souris entre Google et la communauté des moddeurs dans une bataille naissante pleine de barrières obscures. Grâce à la montée de techniques d'attestation basées sur le matériel, il est très difficile de contourner la routine de vérification de l'intégrité de l'image de démarrage et de masquer l'accès root. L'installation de Magisk ne suffirait pas à elle seule à contourner la dernière mise à jour de SafetyNet, en particulier sur les appareils les plus récents. C’est exactement là qu’intervient le module Universal SafetyNet Fix Magisk.

Alors que les propriétaires d'appareils existants, ainsi que les utilisateurs de ROM personnalisées, utilisent souvent des modules tels que

Configuration des accessoires MagiskHide pour usurper le profil CTS afin de passer l'attestation de base, à condition que la méthode en question repose sur une combinaison valide d'appareil et noms de modèles, empreintes digitales de build et niveaux de correctifs de sécurité, rien ne garantit que l'astuce de masquage de la racine restera utile dans le avenir. Cela est dû au fait que les services Google Play commencent à utiliser l'attestation matérielle pour la validation du profil CTS dans de nombreux cas, même lorsque l'attestation de base est sélectionnée.

En termes plus techniques, même si la réponse de l'API d'attestation SafetyNet de GMS indique que les informations de base l'attestation a été utilisée, l'attestation matérielle est toujours utilisée quel que soit l'état signalé afin d'appliquer intégrité. Par conséquent, l’existence d’un état déverrouillé du chargeur de démarrage dans le rapport d’attestation de clé entraîne l’échec de l’attestation SafetyNet.

Si vous possédez un appareil Android doté d'un chargeur de démarrage déverrouillé (ou verrouillé à l'aide d'un démarrage vérifié personnalisé clés) et ne passe donc pas l'attestation matérielle, alors le module Universal SafetyNet Fix Magisk peut corriger que. Créé par Danny Lin AKA XDA Membre Senior kdrag0n, le module fonctionne en tirant parti de la nature opportuniste de la routine d'attestation matérielle. Citant le développeur :

... elle (attestation matérielle) revient à l'attestation de base si l'attestation de clé ne parvient pas à s'exécuter - et empêche GMS d'utiliser l'attestation de clé au niveau du framework. Cela l'amène à revenir gracieusement à l'attestation de base et à passer SafetyNet avec un chargeur de démarrage déverrouillé.

...

Le code d'erreur « non implémenté » de Keymaster est utilisé pour simuler la condition de défaillance la plus réaliste pour échapper à la détection, c'est-à-dire un ancien appareil qui ne prend pas en charge l'attestation de clé.

La solution de contournement est déjà disponible pré-intégrée sur le ROM ProtonAOSP du même développeur, qui permet de passer SafetyNet sans Magisk sur des appareils assez modernes comme le Google Pixel 5. Si vous êtes un responsable de ROM personnalisé et que vous souhaitez intégrer cette méthode à votre build, vous pouvez le faire en sélectionnant les correctifs nécessaires dans ce référentiel. D'autre part, la dernière version de la variante du module Magisk prête à flasher peut être trouvée ici. Notez que MagiskHide est toujours requis si le périphérique cible est rooté.

Correctif universel SafetyNet: Sujet XDA ||| Dépôt GitHub