Tests d'intrusion publics

La Poste Suisse lance un challenge aux hackeurs. Elle va mettre à disposition pour un test public d’intrusion son futur système de vote électronique. Ce système d’e-voting qui sera notamment utilisé par le Canton de Neuchâtel dès 2020. Durant un mois, du 25 février au 24 mars 2019, les personnes intéressées pourront lancer des attaques contre ce système sécurisé de vote par internet. Les personnes qui communiqueront des failles recevront une indemnité financière.

En Suisse, des cantons mènent depuis 2004 des essais de vote électronique (ou e-voting) lors de scrutins fédéraux, et cela dans les limites fixées par le droit fédéral. Le Canton de Neuchâtel a été, en septembre 2005, le premier des trois cantons pilotes (Genève, Zurich et Neuchâtel) à avoir permis à ces électrices et électeurs de voter par Internet pour une votation fédérale. 
 
Passer un test public d’intrusion

La Poste Suisse propose un système de vote électronique avec une vérifiabilité complète. Cette dernière garantit l’identification systématique des dysfonctionnements à la suite d’erreurs logicielles, d’erreurs humaines ou de tentatives de manipulation. Le droit fédéral exige non seulement que ce système soit certifié avant sa première utilisation, mais aussi que le code source soit publié.

La Confédération et les cantons ont décidé que les systèmes de vote électronique proposant la vérifiabilité complète doivent passer un test public d’intrusion – également appelé test de pénétration – avant leur première utilisation. Un test d’intrusion sert à tester la sécurité d’un système en le soumettant à une attaque. Un test de ce type est déjà réalisé dans le cadre de la procédure de certification menée par un organe accrédité.

Un challenge pour hackeurs

Il a été décidé d’organiser de surcroît un test public d’intrusion. Son but est de donner à un grand nombre de personnes la possibilité de tester la sécurité du système. La Confédération et les cantons ont fixé des exigences communes qui s’appliqueront au test public d’intrusion. Ces exigences obligent le fournisseur du système de vote électronique à mettre ce dernier à disposition pour le test pendant quatre semaines.

Les hackeurs qui participeront au test tenteront de manipuler des suffrages, de lire des suffrages exprimés, de violer le secret du vote et de mettre hors service ou de contourner les dispositifs de sécurité qui protègent aussi bien les suffrages que les données inhérentes à la sécurité. La documentation relative au système et le code source devront avoir été publiés avant la réalisation du test.

Un montant de 250'000 francs alloué

La Poste Suisse mettra son système à disposition, du lundi 25 février au dimanche 24 mars, pour la réalisation du test public d’intrusion. La société SCRT, spécialisée dans les tests d’intrusion, enregistrera les participants pour le compte de la Confédération et des cantons. Elle évaluera ensuite les réponses et rendra ses conclusions dès que possible.

La Confédération et les cantons, par l’intermédiaire de egovernement suisse, alloueront un montant de 250 000 francs suisses pour la réalisation du test public d’intrusion, conformément au plan stratégique de la cyberadministration suisse. Les personnes qui communiqueront des failles de sécurité permettant de tirer des enseignements particulièrement précieux recevront une indemnité financière. La Poste Suisse fixera le montant des indemnités en question et procédera à leur versement.

Les personnes désireuses de participer au test peuvent s’inscrire sur le site https://onlinevote-pit.ch, où elles trouveront toutes les informations concernant les modalités du test.

Exigences fixées par la Confédération et des cantons pour les tests d’intrusion publics

Conformément à la décision du comité de pilotage Vote électronique du 29 octobre 2018, les exigences suivantes s'appliquent aux tests d'intrusion publics :

  1. Les fournisseurs de système font en sorte que leur système puisse être soumis à un test d'intrusion public.

  2. Ce test durera au moins 4 semaines (durée d'un scrutin).

  3. Le système pourra être testé par des participants du monde entier.

  4. Les participants devront pouvoir attaquer le système, et notamment tenter de manipuler des votes, d'identifier des votes émis, de briser le secret du vote, enfin de désactiver ou de déjouer les mesures de sécurité qui protègent les votes et les données de sécurité.

  5. Les participants pourront publier les enseignements qu'ils auront tirés du test.

  6. La documentation système et le code source devront préalablement être publiés en ligne (les art. 7, let. a à f, OVotE, étant applicables). Il sera remis aux participants un nombre suffisant de certificats de capacité civique en guise de matériel de test. Ces certificats pourront leur être remis sous forme électronique.

  7. Les participants aux tests adressent leurs retours à un prestataire choisi par la Confédération et les cantons. Ce prestataire évalue les retours et les commente dans les meilleurs délais. Les fournisseurs de système lui apportent leur assistance.

  8. Les fournisseurs de système peuvent prévoir que les participants doivent s'engager au préalable à respecter un code de conduite. Ce code pourrait comporter les obligations suivantes :

    1. s'abstenir de lancer des attaques qui sont exclues du test ;

    2. communiquer immédiatement toute faille de sécurité décelée ;

    3. s'abstenir d'exposer publiquement toute faille de sécurité qui aurait pu être décelée, jusqu'à ce que le fournisseur de système ait décidé de la procédure à suivre à cet égard.

  9. Sont exclues du test les attaques suivantes :

    1. attaques par inondation destinées à empêcher le vote (attaques par déni de service) ;

    2. attaques consistant en l'envoi de fausses informations destinées à amener les acteurs à s'écarter des procédures prévues (ingénierie sociale) ;

    3. attaques qui visent à manipuler des voix, pour autant qu'il s'agisse d'attaques que la vérifiabilité individuelle permet de déceler ;

    4. attaques qui consistent à installer des logiciels malveillants sur les appareils de vote afin de pouvoir prendre connaissance des votes qui ont été émis ;

    5. attaques dirigées contre des prestations du fournisseur de système qui sont sans lien avec le vote électronique ;

    6. attaques dirigées contre le système d'envoi électronique des certificats de capacité civique.

  10. Les participants sont protégés contre d'éventuelles poursuites judiciaires par l'accord que leur a donné le fournisseur de système, pour autant qu'ils ne lancent pas d'attaques exclues du test.


Questions et réponses (FAQ): vote électronique. Test public d'intrusion

La Confédération a-t-elle le droit de verser des indemnités financières aux hackeurs qui auront lancé des attaques ?

La Poste Suisse est chargée d'indemniser les personnes qui signaleront des failles de sécurité. Elle fixera le montant des indemnités et procédera à leur versement. La Confédération et les cantons alloueront un montant de 250 000 francs suisses pour la réalisation du test public d'intrusion, conformément au plan stratégique de la cyberadministration suisse.

En réalisant un test public d'intrusion, cherche-t-on à prouver que le système de vote électronique ne peut pas être hacké ?

Non. L'objectif consiste à identifier les vulnérabilités et, si besoin est, à les éliminer. Par ailleurs, la participation d'un maximum de spécialistes de la sécurité du vote électronique qui soient indépendants contribuerait à accroître la transparence. Le test public d'intrusion pourrait leur donner l'occasion de se pencher sur le système de vote électronique.

C'est donc à des spécialistes indépendants qu'il incombe d'identifier toutes les vulnérabilités ?

Non. Le test public d'intrusion est une mesure de sécurité parmi de nombreuses autres. Chaque système informatique comporte des vulnérabilités ; ce sera le cas du système de vote électronique même après le test public d'intrusion. Ce qui est crucial, c'est qu'aucune vulnérabilité ne représente un risque plus ou moins élevé. Les vulnérabilités doivent être contrebalancées par des mesures de sécurité suffisamment efficaces. En proposant la vérifiabilité complète, le vote électronique dispose d'une mesure de sécurité globale et particulièrement efficace dont d'autres prestations sont dépourvues. Qui plus est, les systèmes sont vérifiés et certifiés à intervalles réguliers par un service accrédité.

L'établissement de la vérifiabilité complète nécessite aussi des ordinateurs. Ces ordinateurs ne présentent-ils donc aucune vulnérabilité ?

La vérifiabilité complète signifie pour l'essentiel qu'il ne suffit pas de manipuler un seul composant pour falsifier des suffrages sans que quelqu'un s'en aperçoive. Si un seul composant est manipulé, d'autres composants permettent d'identifier toute tentative de falsification.

Quel devra être le degré de gravité d'une vulnérabilité pour que la personne qui la signalera reçoive une indemnité financière ?

Ce n'est pas la gravité de la vulnérabilité qui est déterminante, mais le respect des règles par les participants au test d'intrusion. En principe, toutes les attaques qui pourraient faire émerger de nouvelles connaissances sur la sécurité des suffrages sont autorisées et même souhaitées. Les attaques destinées uniquement à mettre en évidence des vulnérabilités connues ne donneront pas droit à une indemnisation. Quelques attaques sont même interdites, bien qu'elles présentent indubitablement un lien avec un risque à prendre en considération. Pour garder ces risques sous contrôle, on dispose toutefois de moyens plus efficaces que le test public d'intrusion.

Quelles sont les attaques qu'il est interdit de lancer ?

Les attaques autorisées qui donneront lieu à une indemnisation financière seront les attaques réussies qui auront été lancées contre l'infrastructure de vote électronique de La Poste Suisse. Il sera interdit de mener des attaques contre les cantons, les imprimeries et les autres secteurs de la Poste qui fournissent des prestations, car ces entités ne participeront pas au test public d'intrusion. Seront aussi interdites les attaques par saturation (déni de service distribué) étant donné qu'elles n'apporteront pas de connaissances nouvelles à la faveur du test public d'intrusion, qu'elles peuvent faire l'objet de tests par d'autres moyens et qu'elles perturberaient de surcroît le déroulement du test. Les attaques lancées contre les plateformes utilisateur des électeurs ne donneront lieu à aucune indemnisation, pas plus – d'ailleurs – que les attaques visant à pousser les participants, par le biais de messages falsifiés, à s'écarter des procédures prévues (techniques d'ingénierie sociale). Les attaques réussies exploitent des comportements inappropriés qui ne peuvent pas être simulés de manière fidèle à la réalité dans le cadre d'un test public d'intrusion. Si quelqu'un réussit malgré tout à manipuler le système de vérifiabilité individuelle (un « oui » est transmis, et c'est un « non » qui s'affiche) de telle sorte que les votants n'aient aucune possibilité d'identifier la manipulation, il recevra une indemnité financière.

Le test public d'intrusion ne va-t-il pas permettre à des assaillants d'apprendre aussi comment hacker le système de vote électronique ?

Quelqu'un pourrait signaler une vulnérabilité à un assaillant potentiel au lieu de le faire aux organisateurs du test public d'intrusion. Cela ne constitue pas un problème si les organisateurs sont aussi informés de la vulnérabilité et s'ils l'éliminent en cas de besoin. L'indemnité financière proposée par la Poste est une incitation à signaler les vulnérabilités (également) aux organisateurs. Par ailleurs, il est possible de tenter de découvrir des vulnérabilités par des moyens illégaux même en dehors du cadre du test public d'intrusion. En revanche, le test permettra aussi à des personnes bien intentionnées d'analyser le système en détail pour tenter d'y déceler des vulnérabilités.

Pourquoi recourt-on déjà au vote électronique alors que le système n'a encore été soumis à aucun test d'intrusion ?

Le système que l'on va soumettre à un test public d'intrusion est le premier système proposant la vérifiabilité complète. Les systèmes utilisés à l'heure actuelle proposent la vérifiabilité individuelle, mais pas encore la vérifiabilité complète. Étant donné que la vérifiabilité complète permettra un recours au vote électronique à plus grande échelle, tout système proposant cette vérifiabilité devra répondre à des exigences de sécurité encore plus élevées, au nombre desquelles figurent notamment une certification et la publication du code source. Qui plus est, la Confédération et les cantons ont décidé que les systèmes de vote électronique proposant la vérifiabilité complète devraient passer un test public d'intrusion avant leur première utilisation.