Page d’accueil Proton

Une analyse des fausses affirmations de Venak Security

Lecture
5 minutes
Catégorie
Sécurité et vie privée

Depuis 2014, Proton propose un programme public de recherche de bugs qui encourage les chercheurs en sécurité à rechercher des vulnérabilités dans les logiciels Proton et à obtenir des récompenses financières pour ce qu’ils découvrent et nous signalent. Plus nous avons de personnes pour examiner notre code open source, plus vite nous pouvons identifier les problèmes potentiels et appliquer des correctifs pour protéger nos utilisateurs.

Nous sommes profondément reconnaissants envers la communauté mondiale d’experts qui contribue à ce programme. Malheureusement, de temps à autre, nous recevons des signalements de bugs qui ne résistent pas à l’examen, souvent en raison d’une compréhension technique insuffisante.

En réponse aux questions de la communauté, nous clarifions aujourd’hui les affirmations de Venak Security concernant Proton Pass et Proton VPN. Bien que nous ayons expliqué aux chercheurs de Venak pourquoi leurs affirmations étaient fausses lorsque nous avons rejeté leur signalement de bug, Venak a tout de même publié ces affirmations par la suite, nous obligeant ainsi à rétablir la vérité.

Commençons par l’essentiel : l’affirmation globale de Venak — “Proton VPN and Proton Pass souffrent d’un problème de protection de la mémoire, les données des utilisateurs sont en danger !” — est fausse. Pour comprendre pourquoi, examinons chaque affirmation plus en détail.

Proton Pass

Affirmation 1

“Vulnérabilité du gestionnaire de mots de passe Proton : les données de cartes de paiement non sécurisées sont en danger !

Réalité : dans Proton Pass, comme dans tout autre gestionnaire de mots de passe, lorsqu’un utilisateur consulte activement un élément (par exemple, un numéro de carte de paiement), ces données doivent être stockées de manière non chiffrée en mémoire. Vous ne pouvez pas chiffrer les données en mémoire, sinon l’application ne peut pas les utiliser pendant qu’elle fonctionne. Il est impossible d’afficher des données à un utilisateur sans que ces données soient stockées en mémoire. C’est ainsi que fonctionne tout gestionnaire de mots de passe et il ne s’agit pas d’un bug.

Dans Proton Pass, toutes les données sensibles, y compris les numéros de cartes de paiement, restent chiffrées sur le disque lorsqu’elles ne sont pas utilisées. Nous prenons des précautions supplémentaires en obfusquant les données sensibles en mémoire lorsqu’elles sont au repos, et en ne désobfusquant ces données que lorsqu’un utilisateur demande explicitement à afficher un élément.

Proton VPN

Affirmation 2

“Des clés privées statiques pourraient potentiellement exposer les données des utilisateurs à des attaques de type MITM !”

Réalité : bien qu’il prétende avoir accès aux clés privées, Venak ne le démontre jamais ; sa publication indique plutôt : “Voici quelques captures d’écran de clés publiques récupérées en mémoire”. Cependant, les clés publiques ne sont pas sensibles, elles sont destinées à être publiques. Comme leur nom l’indique, les clés publiques et privées ne sont pas identiques. De plus, même si des clés privées étaient extraites de la mémoire, elles ne sont pas statiques, mais générées lors de la connexion pour chaque appareil d’un utilisateur. Cela signifie que même avec un accès à ces clés, un attaquant ne serait pas en mesure de déchiffrer le trafic de l’utilisateur.

Affirmation 3

“Un acteur malveillant pourrait facilement extraire les données et déchiffrer le trafic en mémoire ou à l’aide d’une attaque de type MITM.”

Réalité : l’affirmation ici est que les clés privées stockées en mémoire peuvent être utilisées pour déchiffrer le trafic des utilisateurs. Ce n’est pourtant pas ainsi que fonctionne le protocole VPN open source WireGuard® utilisé par Proton VPN. WireGuard offre une “confidentialité persistante”(nouvelle fenêtre), ce qui signifie que compromettre des secrets aujourd’hui ne compromet en aucun cas le trafic précédemment chiffré ou tout trafic futur.

Un attaquant qui obtient les clés privées pourrait potentiellement s’authentifier en tant qu’utilisateur, mais ne serait pas en mesure de déchiffrer le trafic. Le trafic VPN est chiffré par une “clé de session” distincte, qui est automatiquement renouvelée toutes les deux minutes. Il n’est pas chiffré par la clé privée, contrairement à ce que prétend Venak. En résumé, la vulnérabilité invoquée n’existe tout simplement pas. Bien entendu, un attaquant disposant d’un accès admin à l’appareil de l’utilisateur pourrait causer des dommages, mais aucun VPN ne peut protéger contre cela.

Affirmation 4

“Proton a décidé d’utiliser une valeur statique pour chaque serveur, qui peut être facilement récupérée en mémoire lors de la génération de la clé.”

Réalité : comme expliqué ci-dessus, les clés publiques de nos serveurs VPN ne changent pas et sont publiquement disponibles, car ce sont des clés publiques. Il ne s’agit pas d’un problème de sécurité.

Alors, vos données sont-elles réellement en danger ?

Non, les “vulnérabilités” signalées ne sont pas fondées, et c’est pourquoi elles ont été rejetées par notre équipe du programme de recherche de bugs.

Nous soutenons pleinement nos produits et faisons toujours de la vie privée et de la sécurité de nos utilisateurs une priorité. Nous sommes toujours ouverts aux commentaires et aux échanges avec la communauté de la sécurité, que ce soit directement à travers nos projets de logiciels open source(nouvelle fenêtre) ou notre programme de recherche de bugs. Nous restons engagés dans notre programme de recherche de bugs et nous avons hâte de continuer à verser des récompenses pour les vulnérabilités éligibles.