# ES3B

L'ES3B est une machine de vote électronique de Nedap/Groenendaal. Elle est distribuée avec le logiciel de gestion d'élections ISS MS-Windows (Integral Stem Systeem) ; par deux entreprises : Nedap qui fournit la partie matérielle, et Groenendaal qui fournit la partie logicielle.
La machine à voter électronique Nedap ES3B est un système appartenant à la classe DRE (Direct Recording Electronic) des machines à voter. Cela signifie qu'elle ne fait qu'enregistrer les votes en mémoire. Ce système se doit d'être particulièrement fiable, étant donné qu'il est utilisé dans des élections officielles qui ne peuvent pas être vérifiées indépendamment.

## Composants

La machine est bâtie sur une architecture basée sur un processeur motorola 68000 venant avec 256 kibioctets d'EPROM, 8 kibioctets d'EEPROM, 16 kibioctets de RAM, deux ports série type 6850, un port imprimante, deux écrans (4 lignes de 40 caractères sur l'écran de l'électeur, 2 lignes de 40 caractères sur la petite console centrale) lié à un câble.

## Fonctionnement

Le système ES3B utilisé par les municipalités néerlandaises se compose de plusieurs ordinateurs ES3B et d'au moins autant de modules mémoire de vote, d'une unité de lecture liée à un PC à travers le port série et une copie du logiciel ISS (Integraal Stem Systeem) fonctionnant sur un PC avec le logiciel Microsoft Windows.
Les responsables de l'élection municipale écrivent les listes de candidats dans les modules mémoire de vote grâce à l'unité de lecture.
Puis ces modules sont installés dans les machines à voter, avant que celles-ci soient déployées. Après clôture du vote, les résultats sont imprimés par chaque machine, sur un papier de sauvegarde. Les modules mémoire qui contiennent également les votes, sont transportés dans un centre pour être lus en utilisant l'unité de lecture pour que les résultats soient synthétisés.

## Utilisation

En 2006, cette machine était utilisée dans 90 % des élections aux Pays-Bas. Des versions avec des modifications mineures sont également utilisées en République fédérale d'Allemagne et en République française. L'utilisation de cette machine en république d'Irlande est suspendue en raison de considérations de sécurité. L'emploi de machines de votes a également été suspendu en mai 2008 aux Pays-Bas$^,$.

## Points faibles

En moins d'un mois, sans aide du fabricant ni accès au code source, une équipe de chercheurs a réussi à prouver l'existence de sérieuses failles de sécurité sur ce modèle, failles détaillées dans un rapport publié en octobre 2006. Ainsi, il a été démontré qu'il est possible pour une personne mal intentionnée, à l'occasion d'un bref accès au matériel, à n'importe quel moment précédant une élection, d'obtenir un contrôle complet et virtuellement indétectable des résultats de l'élection. Il a également été démontré que les émissions radio émanant d'un ES3B non modifié peuvent être reçues à plusieurs mètres de distance, de manière suffisamment claire pour savoir qui vote quoi.
Selon les auteurs du rapport, la machine est facile à violer, dans la mesure où le design de la sécurité est basée sur le concept obsolète de « sécurité par obscurité ».

### Clefs mécaniques

La machine est protégée par des clefs mécaniques, en raison d'exigences posées par la loi néerlandaise, qui exige que ces clefs soient gardées sous enveloppe scellée durant le vote. La clef utilisée sur l'ensemble des machines porte le numéro A126 (référence 115140126), de la série « C&K YL Series 4 Tumbler Camlock », pour les 8 000 machines ES3B. La clef pour accéder à l'unité de lecture porte le numéro A154. De telles clefs peuvent être commandées pour la somme d'un euro environ.

### Code de maintenance : « GEHEIM »

Le logiciel ISS est doté d'un mode spécial de fonctionnement appelé « maintenance » (voir également Mode moniteur (homonymie)) qui est censé n'être accessible qu'aux membres du verkiezingswacht, la « hotline » de la société Nedap, pour le jour des élections. Ce mode « maintenance » est protégé par un mot de passe commun à tous les modèles, qui s'avère être « GEHEIM » (« SECRET » en néerlandais), mot de passe rapidement trouvé.
Le mode « maintenance », entre autres, permet à la « hotline » de lire le contenu binaire d'un module de vote branché dans le « slot » de programmation d'une unité de lecture. Il est facile d'écrire un programme, en utilisant le langage Tcl pour pouvoir lire le contenu entier du module mémoire de vote.

### Fraude par « logiciel menteur »

Le rapport de 2006, explique, d'une manière pratique comment installer son propre logiciel sur une telle machine, ainsi qu'un logiciel « mentant » sur les résultats. Ce logiciel est baptisé Nedap PowerFraud.
Le logiciel Nedap PowerFraud prend en compte plusieurs contraintes :
* la phase de test de la machine ne doit pas révéler la présence du logiciel menteur
* les résultats déjà écrits ne peuvent plus être modifiés
* le système doit résister à une coupure de courant.
Pour cette raison, ce logiciel stocke provisoirement ses résultats dans de l'EEPROM. Le logiciel Nedap PowerFraud avantage un candidat d'un pourcentage programmable à l'avance, en reconnaissant le candidat à avantager par une reconnaissance de motif insensible à la casse, sur le nom du parti.
Le fait de pouvoir paramétrer l'ampleur de la fraude permet de mettre une valeur faible pour que la fraude passe inaperçue, ou bien une valeur plus élevée si des sondages prévoient un risque plus important.
Le fait d'avantager un candidat en se fondant sur le nom du parti, insensible à la casse permet d'introduire le logiciel frauduleux Nedap PowerFraud, avant que la liste des candidats n'ait été programmée. Ce mécanisme peut permettre à la fraude de durer plusieurs années ; cependant, le ministre de l'intérieur néerlandais suppose que ceci est impossible.

### Fraude par violation du secret du vote

Le rapport explique également d'une manière pratique une attaque qui permettrait à un observateur distant de savoir ce qui est voté sur une Nedap ES3B non modifiée en exploitant les ondes radio compromettantes du périphérique.
Beaucoup de systèmes électroniques émettent des ondes radio, même lorsque cela ne fait pas partie de leur fonctionnalité. Dans le cas des ordinateurs de telles transmissions livrent souvent des informations sur ce que l'ordinateur est en train de faire. Les services militaires, ainsi que les services de renseignement le savent depuis des années et exploitent de manière très active. Un analyseur de spectre AVCOM PSA 65A ainsi que du matériel tel que diverses antennes ont été utilisées à ces fins.
Les fréquences livrant le plus facilement de l'information dans le cadre de l'espionnage du vote sont 58 Hz et 72 Hz : Pour des raisons de choix techniques, la présence d'un caractère accentué dans le nom du parti fait passer la fréquence de 72 Hz à 58 Hz, différence qui s'entend à l'oreille.
Les signaux peuvent généralement être perçus à quelques mètres ; dans un cas, le signal a pu être perçu à 25 mètres de distance. Mais la distance d'écoute pourrait être augmentée, en utilisant des techniques de traitement du signal. Ces fréquences correspondent aux rafraîchissements de l'écran de lecture. La fréquence 3 845 Hz caractérise l'appui sur le bouton de vote.
Il est donc facile d'écouter à distance le vote à l'oreille, mais des techniques plus avancées permettraient également d'avoir plus d'information sur le vote, en particulier une caméra, ou la mise en place de traitement de signal.