La empresa española que ha llevado el voto electrónico a todo el mundo, hackeada
Distintos investigadores han denunciado fallos en el sistema que Scytl ha desarrollado para las elecciones suizas en una fase previa a su implantación real. La firma se encargará del escrutinio en España de los comicios locales y europeos del 26 de mayo
14 marzo, 2019 11:00Investigadores de distintos países y universidades han reportado fallos de seguridad críticos en el sistema de voto online que va a implementar Suiza y que está gestionado por la empresa española Scytl. En concreto, lo que los académicos han denunciado es una puerta trasera que permitiría cambiar todos los votos por votos falsificados sin ninguna consecuencia ni rastro gracias a un error criptográfico en la parte del sistema que verifica si los votos y papeletas digitales contados son legítimos e idénticos a los de los votantes.
La Universidad de Melbourne ha publicado el hallazgo en su web y sus investigadores aseguran que aunque sistema de voto electrónico de La Poste (el sistema suizo de correos) proporcionado por Scytl pretende ofrecer una forma verificabilidad universal (la parte más importante del sistema presentado y que garantizaría con precisión matemática si los votos emitidos por los electores han sido manipulados), en realidad es una verificabilidad parcial, porque añade la suposición de que al menos uno de los componentes del lado del servidor, es decir, los ordenadores que ejecutan el sistema de votación, se comporta correctamente, cosa que no se puede garantizar. Sin embargo, la verificabilidad universal ofrece garantías incluso si todos los componentes del lado del servidor son maliciosos, cosa que no sucederia en este caso de acuerdo con sus investigaciones.
En el sistema La Poste, los votos electrónicos encriptados deben ser barajados para proteger la privacidad del voto individual. Cada servidor que baraja los votos debe probar que el conjunto de votos que recibió corresponde exactamente a los votos cifrados de forma diferente. Con ello se pretende proporcionar un equivalente electrónico del uso públicamente observable de una urna de votación o de vidrio. Es decir: los votos se mezclan para que no se identifique a qué personas concretas pertenecen.
Sin embargo, los investigadores han demostrado con propuestas teóricas que la especificación y el código del que bebe el sistema desarrollado por la empresa española no cumplen con los supuestos de las pruebas de mezcla de votos y, por lo tanto, no proporcionan una verificabilidad universal o completa. Y ofrecen ejemplos de cómo se podría producir una transcripción perfectamente verificable mientras que en realidad -de manera indetectable- se manipulan los votos.
El mismo fallo fue descubierto por Rolf Haenni, de la Universidad de Ciencias Aplicadas de Berna, que ha publicado un análisis sobre la vulnerabilidad, y también por Thomas Haines, de la Universidad Noruega de Ciencia y Tecnología (NTNU).
El descubrimiento surge después de que el Gobierno de Suiza activase el pasado 25 de febrero un programa de apertura al hackeo para que expertos tratasen de demostrar las vulnerabilidades del sistema y descubrir fallos de seguridad antes de su aplicación en las elecciones federales suizas de finales de este año.
Aunque la debilidad descubierta por los piratas informáticos no supone que el sistema haya sido realmente vulnerado en el terreno práctico, el servicio postal suizo reconoce que ese error en el código fuente ya había sido identificado en 2017. Pero, a la luz de los resultados, la corrección no fue hecha correctamente por Scytl. “Lamentamos profundamente el hecho y hemos solicitado a Scytl que realice una corrección integral inmediata, que ya se ha materializado. El código fuente modificado se integrará a la próxima versión”, aseguran.
Actualmente, el sistema de votación electrónico, que está siendo utilizado en cuatro cantones suizos, no se ve afectado por este error en el código fuente porque el fallo exclusivamente afecta al sistema de votación que utiliza la verificación universal, incluida para las pruebas de penetración pero que jamás se utilizó para votaciones reales.
Scytl, en una Unión Temporal de Empresas (UTE) con Vector ITC resultó el pasado mes de enero adjudicataria del contrato de prestación de los servicios necesarios para llevar a cabo el escrutinio provisional de los resultados electorales y su difusión en las elecciones locales y al Parlamento Europeo de 26 de mayo de 2019. Esta no es su primera experiencia con el Gobierno de España, ya que en 2015 llevaron a cabo el escrutinio de las Elecciones Generales.
La respuesta de Scytl
Tras la publicación de estos hallazgos que apuntaban a que la falta de verificabilidad universal, Scytl ha emitido un comunicado en el que asegura que "es muy poco probable -por no decir imposible- que se produzcan tales ataques".
Argumentan que para que las manipulaciones de los votos individuales se pudiesen producir sería necesario realizar una combinación de dos ataques: atacar el dispositivo de votación de un votante durante el proceso de votación y obtener el control total de uno de los servidores de mezcla durante el proceso de conteo, lo que obligaría a que "la cantidad de dispositivos de votación que deben ser comprometidos debe ser proporcional al número de votos que el atacante desearía manipular".
Además, el ataque también requeriría que el atacante obtuviera el control total de uno de los servidores de Swiss Post y sustituyera el software por un nuevo software que podría engañar al sistema. "Es importante mencionar que este servidor está, de acuerdo con los requisitos legales, física y lógicamente aislado del resto de los componentes del sistema de votación, gestionado por un equipo dedicado y accesible sólo desde el mismo centro de datos", acalaran.
Por lo que concluyen que el ataque descrito "es extremadamente complejo de implementar en un entorno real, ya que requiere la combinación de múltiples ataques a diferentes sistemas que no están interconectados (un servidor mixto y dispositivos de votación), así como la superación de múltiples capas de cortafuegos y protección física, y recibir el apoyo de varias personas con un conocimiento profundo del sistema".
No obstante, reconocen que "aunque los ataques mencionados son altamente teóricos y extremadamente difíciles de implementar en un entorno real, Scytl considera que el hallazgo es importante ya que afecta a la propiedad de verificabilidad universal del sistema de votación" y anuncia que ha actualizado el código y su documentación inmediatamente. Y añaden que para poner en perspectiva los hallazgos de los investigadores, "los ataques mencionados anteriormente serían más factibles en los escenarios electorales tradicionales ya que, en esos casos, el atacante sólo necesitaría tener acceso a una urna".
Y concluyen agradeciendo a los investigadores que han estado compartiendo sus hallazgos porque su objetivo era "identificar cualquier vulnerabilidad potencial de manera transparente". "Estos resultados no deberían utilizarse para crear controversias o reacciones adversas hacia la votación en línea, sino para fomentar un diálogo constructivo con expertos y, juntos, mejorar la seguridad de nuestro sistema electoral". La prubea de intrusión pública permanecerá activa hasta el próximo 24 de marzo.
Votación online en Suiza
Los procesos de votación online en Suiza no son un fenómeno nuevo, ya que desde 200, los cantones han llevado a cabo procesos de votación electrónica gracias al sistema desarrollado por La Poste. Ahora, el Gobierno Suizo quería hacerlo llegar a un público más amplio en las elecciones que se celebrarán este año y por eso abrió un periodo de hackeo voluntario para que los expertos de la red detectasen los fallos sistemáticos resultantes de errores de software, errores humanos o intentos de manipulación. De acuerdo con los requisitos de la ley federal suiza, el sistema debe ser certificado antes de su primer uso y el código fuente debe ser divulgado.
Estas pruebas de intrusión (válidas del 25 de feberero al 24 de marzo) realizan ataques para verificar la seguridad de un sistema. Así, La Poste animó a la comunidad de hackers a tratar de manipular los votos, leer los votos emitidos y desactivar o eludir las medidas de seguridad que protegen los votos y los datos relacionados con la seguridad, debiendo publicar la documentación del sistema y el código fuente antes de la prueba. El Gobierno suizo anunció además que pagaría a quienes proporcionasen informes "especialmente útiles" sobre las violaciones de la seguridad.