Que penser du test du système de vote électronique suisse ?

Le conseil fédéral suisse a décidé d’autoriser des tests d’intrusion du système de vote électronique (vote par internet) déployé par la société privée La Poste suisse pour ses élections et votations. Cette volonté pourrait s’inscrire dans une tendance générale de sécurité informatique pour plus grande transparence et une amélioration des systèmes par la communauté. Les bug bounty (1), les hackathon et les opérations de mise à l’épreuve sont toujours salués par les spécialistes de sécurité informatique comme des évolutions positives. Or, un scrutin électronique contrairement à tout autre processus informatique est intrinsèquement non traçable, sauf à violer l’anonymat de l’électeur (2). Nous sommes donc dans un cas à part.

Pour mieux apprécier les enjeux, prenons le temps de revenir sur de précédentes intrusions dans des systèmes de vote par internet.

Des systèmes de vote par internet dont l’intrusion a été révélée

Dans le passé, il y a eu des précédents, autorisés ou non, d’intrusion dans les systèmes de vote par internet.

► En 2010, le district de Columbia (Etats-Unis) avait proposé de tester son application pilote de vote par internet. Il s’agissait d’un système de vote open-source  développé en partenariat avec le projet TrustTheVote. En moins de 36 heures l’équipe du professeur Halderman avait trouvé de multiples vulnérabilités et piraté le système de vote. À la suite de ce test, il a été décidé de ne pas déployer ce système de vote.

► En 2012, en France, un électeur français de l’étranger a produit une preuve de piratage du système de vote proposé aux français de l’étranger par le Ministère des affaires étrangères pour les élections législatives 2012. L’auteur a décrit comment il a procédé. L’attaque, menée via un malware ayant infecté l’ordinateur d’un électeur, peut modifier son vote à son insu. Pour prouver l’effectivité de son malware, cet électeur a voté, au second tour, pour un candidat qui avait été éliminé à l’issue du premier tour, ce qui est, théoriquement, impossible via l’application de vote.

Cet électeur français s’est adressé aux membres du conseil constitutionnel pour les alerter au sujet d’un risque de fraude massive : « Si l’ordinateur du votant est compromis par la présence d’un logiciel malveillant, il est possible, par une méthode assez simple, de modifier le vote de l’électeur, à son insu.». Ce courrier n’a pas reçu de réponse. Dans sa décision du 15 février 2013, le conseil constitutionnel a statué sur ce cas en reconnaissant un dysfonctionnement dû à la présence d’un bulletin « ne correspondant pas aux paramètres retenus par le système » mais a jugé que « un vote en faveur d’un candidat ne figurant pas sur la liste des candidats autorisés à se maintenir à ce tour n’est pas susceptible d’avoir altéré la sincérité du scrutin ».

Ce système de vote par internet n’a pas été utilisé lors des élections législatives de  2017 suite à une mise en garde de l’ANSSI. Cependant, le ministère des affaires étrangères affirme ne pas abandonner le principe du vote par internet.

► En novembre 2018, Volkler Birk, membre du Chaos Computer Club a pris en défaut le système de vote électronique genevois. Il a créé un faux site web de vote et détourné des votes des électeurs. Cette démonstration a convaincu le canton de Genève a annoncé mettre fin à sa plate-forme de vote électronique en 2020.

Des tests d’intrusion non suivis des conséquences nécessaires

Nous constatons que, dans le passé, des tests d’intrusion réussis ont factuellement été suivis de l’abandon ou d’une absence d’utilisation des plate-formes de vote électronique. Or rien dans le règlement de La Poste suisse n’évoque un éventuel renoncement en fonction de la sévérité des trouvailles des hackers. Le code de conduite (uniquement en anglais) annonce l’unique objectif de « promouvoir la sécurité et la confiance dans le système de vote par internet de la poste suisse » (3).

Certes, l’article 5.1 annonce que « les participants qui ont trouvé ou qui croient avoir trouvé une vulnérabilité sont obligés de soumettre un rapport » (4), mais il n’existe aucune garantie interdisant que des participants profitent de ces tests pour agir de manière hostile. Cette campagne de tests constitue une opportunité, pour des pirates malintentionnés, de décortiquer le système de vote et d’en connaître des vulnérabilités (sans pour autant les exposer dans un rapport), puis d’en informer anonymement des parties malveillantes.

L’article 5.3 énonce une suite de tests qui sont interdits. Notamment, il est interdit d’attaquer l’ordinateur utilisé  par un électeur pour dévoiler son vote bien que les ordinateurs des électeurs constituent la principale vulnérabilité des systèmes de vote par internet.

Une campagne de tests ou de marketing ?

La situation est donc paradoxale : certains pirates pourront choisir de ne pas énoncer les failles qu’ils ont trouvées. Si ces failles n’ont pas été corrigées, elles pourront être exploitées lors d’une élection ou d’une votation. Certaines  vulnérabilités exclues des tests seront toujours présentes. Certes, des personnes vont énoncer des failles. Ces nouvelles connaissance permettront la mise en œuvre de corrections de ces failles. In fine, l’image de sécurité de ce système de vote électronique sera donc renforcée alors que la sécurité du système de vote ne sera pas garantie, en particulier en ce qui concerne la sincérité des résultats électoraux.

Quels que soient les résultats des tests, La Poste suisse pourra donc communiquer sur l’amélioration de la sécurité de son système de vote par internet dans sa globalité, alors que ces tests sont limités à certaines parties de ces composants et fonctionnalités en excluant la partie la plus vulnérable (le poste utilisateur). Quoi qu’il en soit, il reste que ce système de vote électronique reste d’une complexité inextricable, concourant à une forme d’opacité alors que, pour un système de vote, la principale qualité susceptible de renforcer la confiance des électeurs est la transparence. Cette absence de transparence des systèmes de vote dématérialisés n’est pas prendre à la légère en ces temps où nos sociétés vivent une défiance démocratique. Le test du système de vote électronique suisse peut sembler donc une tentative de communication pour faire oublier l’opacité du système et, de nouveau, tenter de faire croire que l’absence de transparence pourrait être compensée par une meilleure sécurité.


(1) Un bug bounty est une campagne de recherche de bugs, généralement organisée par des entreprises ou des développeurs. Les découvreurs de bugs peuvent recevoir des récompenses sous forme de reconnaissance ou de paiement. Les bugs ainsi décelés peuvent ensuite être corrigés.

(2) Pour débuguer correctement un processus de vote électronique il faudrait mettre des codes d’observation à chaque étape de manipulation du choix de l’électeur ce qui reviendrait à le tracer jusqu’au bout. Or, pour un vote anonyme, un tel traçage est interdit afin de préserver le secret du vote.

(3) « promote security and trust in the Swiss Post e-voting system »

(4) « Participants who have found or believe they have found a vulnerability are obliged to submit a report »