Apple a introduit une nouvelle règle pour les apps mises en ligne sur l’un de ses App Store. À partir de l’automne et avec la sortie des nouvelles versions de ses systèmes d’exploitation, l’entreprise va demander aux développeurs de justifier leur usage de plusieurs API jugées problématiques. Dans un premier temps, les soumissions sans justification seront simplement signalées par un message, mais la justification deviendra obligatoire à compter du printemps 2024 et une app sera refusée si elle ne justifie pas un usage légitime.
Les applications créées par les développeurs tiers reposent sur un ensemble d’API publiques fournies par Apple, des fonctions qui leur permettent de créer des interfaces, accéder à internet ou encore utiliser les fonctionnalités des appareils. La règle était jusque-là simple : tant qu’une API est publique et documentée, un développeur peut l’utiliser dans son app sans problème, mais la validation de l’App Store refusait les apps qui font appel aux API privées, que seules Apple a le droit d’exploiter. Avec ce changement de politique, un développeur devra montrer patte blanche pour cinq catégories d’API, alors même qu’elles sont publiques.
Ces cinq catégories ont été sélectionnées par le constructeur en raison des possibilités de détournement à des fins de fingerprinting. Cette technique consiste à établir une empreinte de votre appareil en se basant sur des caractéristiques uniques afin de créer un profil et, typiquement, de fournir des publicités adaptées. Pour contrer cette méthode de suivi qui ne nécessite aucune autorisation, Apple réduit depuis des années les caractéristiques uniques accessibles aux développeurs. Le numéro de série de votre iPhone est désormais inaccessible, tout comme l’adresse MAC de sa puce Wi-Fi, mais il reste des informations qui peuvent être collectées via les API publiques et qui peuvent suffire pour établir un profil.
La liste des cinq catégories d’API dont l’usage devra désormais être justifié permet de comprendre les données ciblées par la nouvelle mesure :
- File timestamp APIs : elles permettent d’obtenir la date de fichiers, en particulier la date de création qui ne change jamais, mais qui est spécifique à chaque appareil et qui pourrait ainsi servir à établir un profil unique ;
- System boot time APIs : elles servent à connaître la date et l’heure du démarrage de l’appareil, là encore une information spécifique et qui peut servir à repérer un utilisateur à condition de la mettre à jour régulièrement ;
- Disk space APIs : elles informent sur l’espace restant sur l’appareil utilisé, ce qui peut renforcer un profil personnel si elle est mise à jour régulièrement ;
- Active keyboard APIs : la liste des claviers activés sur votre iPhone ou iPad peut constituer un bon moyen de vous identifier ;
- User defaults APIs : elles servent à de nombreuses apps pour enregistrer une information, qu’il s’agisse d’un réglage ou d’une donnée générée par l’utilisateur.
Naturellement, ces API peuvent toutes avoir un rôle légitime dans les apps. C’est d’ailleurs pour cette raison que la nouvelle politique d’Apple ne retire pas leur accès, les apps tierces pourront toujours les exploiter… à condition quand même de pouvoir justifier leur utilisation. C’est sur ce point que le problème peut émerger : une personne de l’équipe en charge de la validation devra juger si la justification donnée par le développeur est légitime ou non. Avec tous les risques d’erreurs que l’on connaît déjà aujourd’hui, où des apps sont bloquées à l’entrée de la boutique suite à une mauvaise interprétation de la validation de l’App Store.
Source : 9To5 Mac