
Quelques heures après le lancement d’une interface web repensée pour l’App Store, un projet sur GitHub a révélé l’intégralité du code source front-end du site. Comment en est-on arrivé là ?
Apple a oublié de désactiver les sourcemaps en production pour la nouvelle interface web de l’App Store
Hier, Apple a lancé une nouvelle interface web pour l’App Store, comprenant des pages dédiées pour chaque plateforme, des catégories d’applications et un moteur de recherche. Cependant, selon un utilisateur sous le pseudonyme rxliuli sur GitHub, la firme a accidentellement expédié le nouvel App Store avec les sourcemaps activés. Cela a permis de télécharger l’intégralité de la base de code front-end d’Apple directement depuis le site de production.
Dans le dépôt github.com/rxliuli/apps.apple.com, rxliuli explique avoir utilisé une extension Chrome pour extraire et sauvegarder toutes les ressources disponibles de l’App Store web, qu’ils ont ensuite archivé sur GitHub à des fins éducatives.
Que contient cette fuite ?
Le dépôt comprend :
- Le code source complet en Svelte/TypeScript
- La logique de gestion d’état
- Les composants d’interface utilisateur
- Le code d’intégration API
- La configuration de routage
Que signifie cette fuite ?
En pratique, il ne s’agit pas d’une fuite massive et elle ne pose pas immédiatement de risques de sécurité ou de confidentialité pour Apple, les développeurs ou les utilisateurs. Néanmoins, c’est une erreur rare, car désactiver les sourcemaps en production est une étape élémentaire pour de tels projets.
Rxliuli affirme que « le code source a été obtenu à partir de ressources accessibles publiquement via les outils de développement du navigateur », précisant que « le dépôt est uniquement destiné à des fins éducatives et de recherche ». Toutefois, il n’est pas farfelu de penser que sa disponibilité ne durera pas longtemps.
Si vous êtes curieux de jeter un œil sous le capot et de découvrir comment Apple a construit et structuré le front-end du nouvel App Store web, il vaut mieux le faire rapidement.