¿Fallo de seguridad en algunos sistemas de votaciones?
Aprovechamos el final de la Semana Santa para comentar con vosotros un tema que está muy caliente ahora mismo. La cadena de noticias La Sexta, nos pidió hace unos días nuestra opinión sobre los aspectos de seguridad a tener en cuenta en los nuevos sistemas de votación online que están siendo utilizados por partidos políticos como Podemos o Ahora Madrid para seleccionar a sus candidatos o sus propuestas electorales. Al comprobar que han cortado la parte de entrevista en la que explicamos que el control por IPs no es eficaz, os lo vamos a contar en este post.
El reportaje, “Llega la democracia 2.0, un móvil, un voto”, fue emitido ayer, 5 de Abril, en las noticias del fin de semana, pero como suele ocurrir en estos casos, no se ha reproducido todo lo que grabaron en nuestras oficinas y por ese motivo, consideramos oportuno aportar más datos sobre nuestra opinión acerca de la seguridad de estos sistemas y completar la información facilitada en el reportaje, ya que desde nuestro punto de vista se han dejado la parte más importante y la que podría poner en duda la autenticidad de los votos de partidos como Podemos.
El sistema de votación que se está empleando, tal y como nos lo han planteado, carece de validez y es total y absolutamente manipulable, siempre desde el punto de vista de la Seguridad Informática y repetimos, basándonos únicamente en la información que nos han facilitado sobre los sistemas de votación utilizados.
Empecemos por el principio, para poder asegurar que un sistema es seguro, este debe cumplir con los cuatro principios básicos de la Seguridad de la Información:
- Autenticación
- Confidencialidad
- Integridad
- No repudio
El sistema que están utilizando estos nuevos partidos políticos para sus votaciones, consistente en registrar a un usuario con un número de DNI y un SMS enviado a un teléfono móvil, vulnera flagrantemente el principio de autenticación puesto que NO ES POSIBLE (y lo decimos de manera tajante y muy clara) establecer una relación ÚNICA entre el usuario que dice estar votando y el usuario real que realiza la votación. ¿Por qué no es posible? Son muchos motivos, vamos a destacar los más significativos e importantes.
El más obvio, es que un número de DNI (sin un documento oficial que lo acredite y lo ligue a la identidad del usuario) no sirve absolutamente para nada y no identifica a ningún usuario. Como tampoco sirve para nada un número de teléfono, que si bien es cierto que tiene que estar ligado a una persona (en este caso los operadores obligan a la presentación del DNI), perfectamente puede existir más de un número de teléfono asociado a una misma persona.
Por este motivo, resulta trivial para cualquiera que quiera vulnerar el sistema y que disponga de una economía holgada como para comprar, por ejemplo, 200 tarjetas SIM prepago, poder tener 200 usuarios “válidos” dentro del sistema, cada uno con un número de DNI distinto y válido (aunque a saber de quién) y realizar así 200 votaciones distintas.
Frente a esto, los propulsores de este sistema se “defienden” alegando que detectarían los números de teléfono consecutivos y eliminarían los votos, pero eso no es así puesto que el hecho de comprar dos o N tarjetas SIM en absoluto va a significar que los números sean consecutivos, pudiendo ser cada uno “de su padre, y de su madre”.
Al llegar a este punto, y esta es la parte de la entrevista que no ha sido publicada en la Sexta, el argumento tanto de los partidos políticos que defienden este sistema, como de los responsables del software de votación, Agora Voting, es que disponen de medidas de seguridad para eliminar los votos que se realizan desde la misma IP.
Esto es absolutamente falaz y tiene dos problemas distintos pero que afectan al resultado de las votaciones.
-
- Si no se admite más de una votación por dirección IP se puede dar el caso de estar eliminando un número indeterminado de votos válidos o legales. Todos aquellos, por ejemplo, que un grupo indeterminado de compañeros de trabajo realice desde sus oficinas, ya que en el 99,9% de los casos, todos ellos accederán al sistema con una misma dirección IP. Esto dato, que puede parecer trivial, si se lleva al escenario de grandes corporaciones con miles de empleados, puede suponer un gran número de votos perdidos.
- El caso contrario, resulta absolutamente sencillo instalar en el equipo cualquier programa que nos conecte con una serie de servidores proxy en internet que enmascaren nuestra dirección IP de forma que podamos acceder al sistema de votación cada vez con una IP distinta (Tor Proyect por ejemplo). O sin tener que instalar nada, simplemente haciendo una votación desde el domicilio, otra desde el trabajo, otra desde el restaurante de turno, y así sucesivamente.
Los argumentos para dar validez a este sistema (sucesiones estadísticas, patrones de las votaciones, direcciones IP utilizadas, números de teléfono consecutivos) como los que se describen en este artículo, poco tienen que ver con la seguridad de la información y no seremos nosotros los que entremos a valorarlos.
Por lo tanto, desde nuestro punto de vista, y sin entrar en ninguna valoración política, podemos asegurar que el sistema que se está empleando, no cumple con los requisitos de seguridad necesarios para poder garantizar algo tan simple como “Una persona, un voto”. Y si eso no se cumple, el sistema de votación no es válido, por mucho cifrado, respaldo de datos, o cualquier acción que se realice después.
Si la autenticación de los usuarios fuese válida, entraríamos entonces a debatir sobre otras cuestiones como la seguridad del aplicativo utilizado, los mecanismos de cifrado, la integridad de los datos o posibles vulnerabilidades del sistema.
La solución pasa necesariamente por identificar al usuario de una manera inequívoca y eso solo puede hacerse o bien presencialmente o bien mediante un certificado digital personal.
El sistema podría generar un código de registro que se activase una vez que el usuario acudiese a alguno de los partidos políticos para identificarse y validar así su registro. Sería similar al procedimiento actual en el que un votante se autentica ante la mesa electoral presentando su DNI.
Si lo que queremos es que el sistema sea 100% online, la única forma válida de hacerlo y garantizar la identidad del usuario es que el formulario de registro sea firmado con un certificado digital (disponible para todos los ciudadanos a través del DNI electrónico o previa solicitud a la FNMT). De esta forma ya no existe dependencia con el terminal móvil (manipulable) ni con la dirección IP que se utilice para realizar el voto (manipulable también) y se garantiza que un usuario, validado por un certificado digital, realiza un único voto. La solución por tanto existe y está al alcance de todos, no parece por tanto aceptable, desde un punto de vista de seguridad, rebajar los requisitos con la excusa de que en España, “el DNI electrónico (su certificado digital) no esté muy implantado”.