L’application StopCovid, qui permet de prévenir les personnes qui ont été en contact rapproché avec un individu testé positif au Covid-19 dans les 14 derniers jours, respecte-t-elle notre vie privée ? Pour en avoir le cœur net, nous avons décortiqué en laboratoire les entrailles de l’application, analysé son fonctionnement et mis à l’épreuve les flux de données qu’elle échange avec les serveurs. Conclusion : l’application est sécurisée, mais souffre de quelques failles à souligner.
L’application StopCovid représente-t-elle une menace pour nos libertés individuelles et notre vie privée ? Jusqu’au lancement, le 2 juin dernier, le gouvernement s’éraillait la voix à hurler que non, tandis que certains défenseurs de la vie privée s’alarmaient que oui. Pour en avoir le cœur net, nous avons décortiqué l’application, sa conception, son fonctionnement. Nous avons analysé les données collectées et les permissions exigées lors de l’installation, tenté de pirater les flux d’information échangés avec les serveurs, vérifié que ces flux sont chiffrés. Nous avons aussi confronté l’application aux directives de l’Union européenne en la matière.
Conclusion : notre diagnostic est plutôt rassurant. StopCovid ne présente pas de symptômes alarmants pour notre vie privée, ni de contre-indication à être installée sans crainte. Plusieurs points méritent toutefois d’être soulignés.
Des données bien sécurisées
Dès l’installation de l’application, et avant même qu’elle soit activée (lire encadré), l’utilisateur peut consulter la politique de données personnelles, qu’il doit accepter. StopCovid envoie ensuite régulièrement les informations sur les cas contacts qu’elle a détectés, comme la clé d’authentification partagée avec le serveur central, l’identifiant unique et aléatoire lié à l’utilisateur, les périodes d’exposition à des malades ou l’historique de proximité. L’appli envoie aussi le système du smartphone (iOS ou Android), sa version ainsi que la marque et le modèle du téléphone. Bonne nouvelle, les données sont stockées sur le téléphone de manière chiffrée et effacées au bout de 14 jours. Rien ne sort du téléphone sans un chiffrement préalable. Et les flux sont protégés des attaques de type « man in the middle », une technique de piratage informatique qui consiste à intercepter les données. On note aussi que les données échangées en Bluetooth sont anonymisées : il est impossible de connaître votre identité, qui ne vous est d’ailleurs jamais demandée.
Google dans les tripes
StopCovid échange avec cinq serveurs (1). Trois d’entre eux sont localisés en France, sécurisés par une société française (Gandi, qui fournit les certificats SSL), hébergés par une autre société française, Outscale (filiale de Dassault Systèmes). Mais les deux autres appartiennent à… Google. Ceux-là sont très probablement basés en Europe (Irlande, Finlande, Belgique ou Pays-Bas). Mais pas en France, où le géant du Web ne détient aucun parc de serveurs informatiques (« data centers »). Ceux-là sont utilisés par Recaptcha, un système de détection automatisée qui appartient à Google et permet d’éviter que des robots s’immiscent dans l’application. Le gouvernement a promis de remplacer au plus vite Recaptcha par une solution équivalente développée par Orange.
Par ailleurs, Google, dont le système Android équipe 78,8 % des smartphones (contre 21,1 % pour iOS d’Apple, d’après l’analyste Kantar World Panel), est aussi un peu trop insistant lorsque l’utilisateur installe l’appli. Comme pour n’importe quelle application, il doit lui accorder des permissions sur son smartphone. StopCovid demande ainsi l’accès au Bluetooth (sur lequel repose son fonctionnement), à l’appareil photo (pour scanner le QR Code qui permet de se déclarer positif) ou encore à la connexion Internet du téléphone (pour communiquer avec les serveurs). Rien d’anormal jusqu’ici. Mais les utilisateurs d’un smartphone Android devront aussi accepter de se faire géolocaliser via le GPS et les réseaux mobiles… Précisément ce qui laisse craindre d’être suivi à la trace ! Contrairement à Apple dans iOS, Google demande l’accès au Bluetooth (indispensable à l’appli) et à la localisation via une permission unique. Faut-il s’en inquiéter ? Oui, car même si elle n’est pas exploitée pour l’instant, l’utilisateur a, de fait, donné son autorisation à ce qu’elle le soit dans le futur. L’UFC-Que Choisir restera vigilante sur ce point.
Des petites entraves aux directives européennes
La Commission européenne a invité ses États membres à respecter un cahier des charges commun afin d’harmoniser les applications visant à casser les chaînes de transmission du Covid-19 à travers l’Europe. Il s’agit en outre de s’assurer que StopCovid fonctionne dans les autres pays, mais aussi de veiller au respect de la réglementation européenne en matière de vie privée. Globalement, StopCovid est dans les clous. Ainsi, elle ne collecte pas de données dont elle n’a pas besoin, ne géolocalise pas l’utilisateur, utilise les bonnes clés de chiffrement, informe les utilisateurs sur les mesures à suivre en cas d’infection. Mais elle prend des légèretés sur deux points. D’abord, elle n’a publié qu’une partie de son code source, alors que l’Europe demande une publication exhaustive. La partie restreinte correspond « à des tests ou à des parties critiques pour la sécurité de l’infrastructure », peut-on lire dans la documentation. Ensuite, elle n’est pas ouverte aux contributions des utilisateurs qui permettraient d’améliorer l’application. Ce serait prévu dans une mise à jour prochaine.
Le choix d’une infrastructure centralisée
Contrairement à plusieurs pays européens, notamment l’Allemagne, la France a construit son application sur une architecture « centralisée » et non « décentralisée ». La différence ? C’est un serveur central qui gère les flux de données et leur chiffrement, alors que l’approche décentralisée réduit au minimum le rôle du serveur central, confiant le gros des opérations au smartphone des utilisateurs. Ce choix fait peser deux risques plus lourdement. D’abord, l’État et ses prestataires techniques peuvent potentiellement accéder aux données stockées sur ce serveur central (l’adresse IP des utilisateurs, par exemple). Il serait dès lors possible d’identifier les utilisateurs et les personnes malades. Ensuite, des pirates qui parviendraient à compromettre ce serveur accèderaient du même coup aux données de tous les utilisateurs.
StopCovid, le principe
StopCovid est une application disponible gratuitement dans le Google PlayStore (Android) et l’App Store (iPhone). Elle permet de vous prévenir si vous avez été en contact rapproché (1 mètre) dans les 14 derniers jours avec une personne que vous ne connaissez pas et qui vient d’être testée positive au Covid-19. Elle utilise pour cela les signaux Bluetooth de votre smartphone. Basée sur le volontariat, l’appli ne demande aucune donnée personnelle aux utilisateurs (nom, adresse, numéro de téléphone ou autre) et une fois installée, il est possible de la désactiver. StopCovid a franchi le cap du million d’utilisateurs le 6 juin dernier. Le mode d’emploi est disponible à cette adresse : https://www.economie.gouv.fr/files/StopCovid/StopCovid_ModeEmploiCT.pdf
(1) Serveurs contactés : app.stopcovid.gouv.fr, api.stopcovid.gouv.fr, bonjour.stopcovid.gouv.fr mais aussi www.google.com et www.gstatic.com
Camille Gruhier
Vincent Erpelding
Rédacteur technique