Une application conçue pour simplifier l’accès aux clubs de cannabis en Espagne s’est transformée en un cauchemar pour la vie privée de ses utilisateurs. PuffPal, lié à l’infrastructure de Cannabis Club Systems, également connu sous le nom de Nefos Solutions, aurait laissé près d’un million de documents d’identité, notamment des passeports, des permis de conduire et des cartes d’identité, accessibles sur Internet. Cette affaire illustre une nouvelle fois les risques posés par des services qui demandent des justificatifs sensibles sans disposer d’une architecture de sécurité adaptée.
A l’origine, le principe aurait pu paraître pratique. Dans plusieurs clubs de cannabis espagnols, l’entrée est réservée aux adultes et nécessite donc une vérification d’identité. Plutôt que de vérifier manuellement les documents à chaque passage, PuffPal et les outils associés ont permis de scanner les pièces d’identité, de sauvegarder les profils des membres et de générer un QR Code pour accélérer les admissions. Un gain de temps pour les établissements, mais une centralisation massive de données extrêmement sensibles.

Une application pratique, mais une sécurité clairement insuffisante
Le problème ne réside pas seulement dans le volume de données collectées. Cela vient principalement de la manière dont ils auraient été stockés et rendus accessibles. Le chercheur en sécurité Sammy Azdoufal a découvert plusieurs failles critiques après avoir analysé l’application. En décompilant PuffPal, il a trouvé une clé secrète Stripe intégrée dans le code en texte brut, un signal d’alarme majeur dans tout audit de cybersécurité.
Mais le plus inquiétant concerne l’accès aux profils utilisateurs. Selon les éléments dévoilés, une simple modification de l’identifiant dans une requête permettait d’afficher les informations d’un autre membre. Ce type de faille, souvent liée à de mauvais contrôles d’autorisation côté serveur, est particulièrement grave : l’utilisateur n’a pas besoin de pirater un mot de passe ni de contourner un cryptage complexe, il lui suffit parfois de modifier un numéro dans une URL ou une requête API.
Les données exposées auraient pu inclure des noms, des adresses, des numéros de téléphone, des informations sur les consommateurs, des selfies et des documents officiels. Dans le cas d’une identification, l’impact potentiel va bien au-delà du simple inconvénient. Un passeport ou un permis de conduire peuvent être exploités pour des tentatives d’usurpation d’identité, d’ouverture de compte frauduleuse, d’escroqueries financières ou encore de revente sur des forums spécialisés.

Passeports stockés sur des adresses publiques
Le point le plus préoccupant est l’hébergement des images elles-mêmes. Les documents d’identité auraient été accessibles via des URL publiques, sans authentification, sans jeton temporaire et sans barrière technique sérieuse. En d’autres termes, une personne disposant du lien correct pourrait consulter les fichiers sans être connectée à un compte autorisé.
Cette opération est d’autant plus problématique que les clubs concernés auraient ajouté plusieurs milliers de nouveaux documents chaque jour. À cette échelle, la moindre erreur de conception se transforme en fuite massive. La situation n’est pas sans rappeler d’autres incidents récents impliquant des données administratives ou des justificatifs sensibles, comme le hack ANTS qui a touché près de 12 millions de comptes, ou la fuite affectant Discord avec des pièces d’identité transmises lors de procédures de vérification.
L’audit aurait également mis en lumière d’autres faiblesses : portail d’administration accessible depuis le Web public, mots de passe des clubs trop faibles, messagerie privée insuffisamment protégée et API vulnérables. Pris séparément, chacun de ces points est déjà préoccupant. Ensemble, ils conçoivent une infrastructure qui semble avoir été déployée sans les garde-fous attendus pour un service traitant des documents officiels.

Une réaction tardive de Nefos Solutions
Face à la gravité des découvertes, la réponse de Nefos Solutions aurait été lente. Il aurait fallu plusieurs semaines à l’entreprise pour couper les accès les plus sensibles et désactiver PuffPal ainsi que les API vulnérables. Selon les derniers contrôles évoqués par le chercheur, les données personnelles et les images ne sont plus librement accessibles depuis le 10 juin.
L’éditeur affirme avoir prévenu les autorités compétentes et souhaite assumer ses responsabilités. Cette étape est essentielle, notamment dans un contexte européen où le RGPD impose des obligations strictes en matière de protection des données et de notification des violations. Une fuite de passeports, de permis de conduire ou d’adresses personnelles n’est pas une simple erreur technique : elle peut avoir des conséquences durables pour les personnes concernées.
Le sujet dépasse le seul cas de PuffPal. De plus en plus de services numériques nécessitent une vérification de l’âge ou de l’identité, tantôt pour accéder au contenu, tantôt pour se conformer aux réglementations locales. Cette tendance soulève une question centrale : faut-il vraiment envoyer une copie complète de son passeport à chaque plateforme qui souhaite confirmer sa majorité ou son identité ?
Apple, Google et le défi de la vérification de l’âge
Cette affaire relance également le débat sur le rôle des grandes plateformes mobiles. L’App Store et Google Play vérifient de nombreux aspects des applications avant leur sortie, mais ils ne peuvent pas toujours auditer de manière approfondie l’ensemble de l’infrastructure cloud derrière un service. Une application peut paraître correcte côté interface tout en s’appuyant sur des API mal sécurisées ou des bases de données trop exposées.
Apple met régulièrement en avant la confidentialité comme pilier de son écosystème. L’entreprise propose déjà des outils liés à la gestion des données personnelles, comme la possibilité de demander une copie de ses données personnelles à Apple. Avec iOS 27 et macOS 27, la firme a également renforcé certains mécanismes autour de la sécurité des jeunes et du contrôle parental, notamment avec des autorisations plus intégrées au système pour certaines actions sensibles dans les applications, comme nous l’évoquions à propos du renforcer le contrôle parental sur iOS 27 et macOS 27.
Une option serait de généraliser les systèmes de preuve d’âge ou d’identité qui ne transmettent pas le document complet à chaque service. L’idée serait de confirmer qu’un utilisateur remplit une condition spécifique, par exemple être majeur, sans exposer son nom complet, son adresse, son numéro de passeport et sa photo à un fournisseur tiers. Ce type d’approche limiterait grandement les dégâts en cas de compromission.
Une fuite qui rappelle l’urgence de mieux encadrer la collecte d’identité
Le cas PuffPal montre les limites d’une numérisation réalisée trop rapidement. Pour un club, une application ou un service en ligne, scanner une pièce d’identité peut sembler la solution la plus simple. Pour l’utilisateur, il s’agit souvent d’une formalité de quelques secondes. Mais lorsqu’un document officiel est copié, stocké et lié à d’autres informations personnelles, le niveau d’exigence doit être bien supérieur à celui d’une demande traditionnelle.
Les entreprises collectant ce type de données doivent suivre des principes stricts : stockage minimal, cryptage fort, accès authentifié, URL non publiques, expiration automatique des fichiers, journaux d’accès, audits indépendants et mots de passe forts pour les comptes professionnels. Dans le cas contraire, la commodité promise aux utilisateurs se transforme rapidement en risque systémique.
Cette fuite rappelle enfin que la vérification d’identité ne doit pas devenir un réflexe banal sur le Web mobile. Plus les services demandent des documents sensibles, plus ils créent de nouvelles cibles pour les pirates. PuffPal n’est sans doute pas un cas isolé, mais il a le mérite de mettre en lumière un problème fondamental : l’industrie doit trouver le moyen de prouver l’âge ou l’éligibilité d’un utilisateur sans multiplier les copies de passeports dans des bases de données privées insuffisamment protégées.






