Cette page contient une description de tous les constats confirmés dont la Poste juge le degré de gravité élevé ou critique après réalisation d’une analyse technique approfondie. Les données sont mises à jour régulièrement.
Vous trouverez un aperçu des constats sur le site web du programme de la communauté: https://evoting-community.post.ch/fr/contribuer
Constats confirmés à degré de gravité élevé ou critique
La Poste publie l’intégralité de son futur système de vote électronique de manière pérenne. Des spécialistes ont la possibilité d’analyser les documents et de tester le code source. Dans le cadre du programme bug bounty, la Poste verse des récompenses pour toute faille confirmée. Il s’agit là de mesures de cybersécurité et de pratiques d’excellence à l’échelle internationale visant à maintenir le plus haut degré de sécurité. L’objectif de ces mesures est d’identifier suffisamment tôt les éventuelles failles dans le système sur la base des signalements et de les éliminer.
Toutes les signalement fourns, qui comportent des questions, des remarques et des constats, sont publiés sur la plateforme spécialisée GitLab.
Ci-dessous vous trouvez une description régulièrement mise à jour de tous les constats confirmés dont la Poste juge le degré de gravité élevé ou critique après réalisation d’une analyse technique approfondie.
Ces constats sont classés chronologiquement suivant leur date de publication sur GitLab.
Issue #YWH-PGM2323-190 : Concurrent command execution isolation broken
Date: août 2023
Personne ayant signalé l’erreur: Florian Moser
Degré de gravité: élevé
Récompense versée: € 10 000.–
Description: l’erreur décrite révèle une faille dans l’un des mécanismes (exactly-once processing) garantissant que les ordres cryptographiques ne peuvent pas être donnés deux fois dans les composants répartis de manière décentralisée. Une double exécution d’un ordre cryptographique pourrait, selon le scénario, compromettre la pertinence des codes de vérification, l’exactitude du résultat ou le secret du vote. Lors de l’analyse du constat, la Poste a démontré que de telles attaques ne sont pas possibles en raison de mécanismes de sécurité supplémentaires dans le framework Hibernate utilisé et dans la base de données, ce qui exclut l’exploitation du constat. De tels mécanismes garantissent que les ordres déjà donnés sont enregistrés, permettant ainsi de détecter et de refuser la double exécution d’un ordre. La Poste corrige toutefois le mécanisme «exactly-once processing» comme élément de sécurité supplémentaire.
Statut et solution: le problème a déjà été résolu et corrigé dans le dernier release Concurrent command execution isolation broken (#9) · Tickets · swisspost-evoting / E-voting / E-voting · GitLab
Issue #5 (e-voting) SDM - Insecure USB file handling during 'importOperation'
Date: septembre 2021
Personne ayant signalé l’erreur: Ruben Santamarta
Degré de gravité: élevé
Récompense versée: € 15 000.–
Description: l’erreur décrite montre qu’une attaque sur une instance hors ligne du Secure Data Manager (SDM) est possible si une personne mal intentionnée réussit à sauvegarder un logiciel malveillant sur un support de données crypté employé pour l’acheminement physique des données entre les ordinateurs en ligne et hors ligne. Le programme SDM permet au canton de mettre en place le scrutin électronique avant chaque élection ou votation. Ce programme fonctionne sur plusieurs ordinateurs hors ligne et un ordinateur en ligne au sein de l’infrastructure cantonale. En exploitant cette erreur, un pirate pourrait ainsi compromettre la bonne configuration du scrutin électronique en passant par un ordinateur hors ligne.
La possibilité d’attaque se situe au moment où les données importées sont validées et pourrait être facilitée par l’absence actuelle de restriction définissant quelles données peuvent être importées dans le répertoire SDM.
Statut et solution: SDM - Insecure USB file handling during 'importOperation'
Issue #1 (e-voting) Insufficient Signature Validation of the Election Public Key resulting in possible attacks against individual verifiability
Date: octobre 2021
Auteur: analyse des experts indépendants de la Confédération (auteurs: V. Teague, O. Pereira et Th. Haines), qui a permis à l’équipe Vote électronique de la Poste de déceler l’erreur
Degré de gravité: élevé
Récompense versée: signalé dans le cadre de l’examen indépendant sur mandat de la Confédération, donc pas de récompense dans le programme bug bounty
Description: l’erreur permettrait à un attaquant qui a réussi à prendre le contrôle du client de vote, du serveur du vote et d’une composante de contrôle, de mettre en péril la vérifiabilité individuelle. L’attaquant pourrait alors falsifier une clé publique − composante cryptographique employée dans la transmission sécurisée et intacte d’un message adressé à l’électeur − et ainsi réussir à la faire accepter aux autres composantes de contrôle. L’électeur lui-même ne serait donc pas en mesure de constater que son vote a été invalidé. En d’autres termes, la vérifiabilité individuelle ne serait pas garantie. L’attaque serait néanmoins identifiée lors de la vérification des votes effectuée par le canton.
Statut et solution: Insufficient Signature Validation of the Election Public Key resulting in possible attacks against individual verifiability.
Issue #11 (e-voting documentation) Risk of privacy breach due to the CCMs not checking the ZKP before mix-decrypting
Date: juin 2021
Auteur: Pierrick Gaudry, Véronique Cortier, Alexandre Debant
Degré de gravité: élevé
Récompense versée: € 40 000.–
Description: si un attaquant réussit à prendre le contrôle de certaines parties de l’infrastructure du serveur de la Poste et de la dernière composante de contrôle hors-ligne gérée par le canton, il pourrait profiter de l’erreur pour violer le secret du vote de plusieurs voix. En effet, les composantes de contrôle actuelles ne vérifient pas si une urne donnée appartient à un scrutin en particulier. Elles ne contrôlent pas non plus si les votes d’une urne ont déjà été mélangés et déchiffrés.
Statut et solution: Risk of privacy breach due to the CCMs not checking the ZKP before mix-decrypting
Issue #2 (e-voting documentation) The algorithm GenCMTable allows an adversary to recover the election event's set of possible short return codes
Date: février 2021
Auteur: Thomas Haines
Degré de gravité: élevé
Récompense versée: € 7 500.–
Description: un attaquant qui parvient à pénétrer dans l’infrastructure de vote électronique pourrait mettre à profit l’erreur décrite pour avoir accès à des informations lui permettant de découvrir des codes de vérification et le code de confirmation. Il pourrait en profiter pour indiquer à l’électeur le bon enregistrement de son vote, tout en enregistrant en arrière-plan son vote de manière falsifiée.
Statut et solution: The algorithm GenCMTable allows an adversary to recover the election event's set of possible short return codes