-
Notifications
You must be signed in to change notification settings - Fork 2
/
almacenamiento.tex
58 lines (40 loc) · 8.66 KB
/
almacenamiento.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
El almacenamiento de votos es importante a corto y largo plazo. Es necesario poder obtener un resultado correcto al momento de finalizar la elección, pero también deben estar disponibles los datos si se quisiera hacer un recuento en el futuro.
No hay una única forma de almacenar los votos durante el sufragio y se utilizan muy diversas estrategias. Desde distintos medios de almacenamiento como tarjetas RFID hasta la propia memoria de la máquina de votación, donde no necesariamente es excluyente alguna de las dos.
A continuación distintas técnicas que se utilizaron en distintos países, y los agujeros de seguridad que se encontraron en cada una.
\subsection{Máquinas con almacenamiento en memoria}
Como primer ejemplo, en Estados Unidos se utilizó la terminal de votación AccuVote TSX, por más de 12 millones de votantes en más de 350 jurisdicciones en los Estados Unidos. Los votos son almacenados en una tarjeta PCMCIA\cite{davtyan} en el interior de la máquina.
Esta terminal tiene vulnerabilidades que permiten un ataque que intercambia los votos de dos candidatos y otro que borra el nombre de un candidato. Ambos ataques son capaces de eludir las comprobaciones de integridad de cifrado implementados en la terminal. Los ataques se pueden iniciar en cuestión de minutos y sólo requieren una computadora con la capacidad para montar una tarjeta PCMCIA. No es necesario que el atacante tenga información de la elección que va a modificar, sólo es necesario que tenga acceso a la maquina de votación para abrir el compartimiento donde se almacena la tarjeta PCMCIA.
Las vulnerabilidades encontradas en una auditoría fueron:
\begin{itemize}
\item Aunque el nombre de cada candidato está acompañado por 128 bits de integridad, la terminal no los usa de forma efectiva. Cuando falla el chequeo de integridad en un candidato, no se cuenta el voto para este candidato. Aunque el elector verifique en la boleta VVPAT que figura el candidato de forma correcta, su voto no será tenido en cuenta para el recuento de votos ya que el recuento electrónico lo realiza con lo almacenado en la tarjeta PCMCIA y al fallar la integridad del candidato, no lo cuenta. Tampoco existe una verificación de la integridad de que no se cambió los nombres de candidatos en los recuentos de los votos.
\item No hay una firma criptográfica de la tarjeta PCMCIA. Por ende, se puede agregar más contenido a la urna de votación.
\item La existencia de puertas traseras como en versiones anteriores de la terminal y un mecanismo de actualización de archivos débil, ya que tan sólo se utiliza el nombre del archivo a actualizar para identificar una actualización de software válida.
\item Las máquinas de votación tienen todas la misma llave física para obtener la tarjeta PCMCIA, al menos en las que fueron revisadas.
\end{itemize}
De este modo, se tiene un recuento de votos en un medio vulnerable a mútiples ataques y cuyas medidas de seguridad no permiten auditar la corrección del contenido, con lo que podría ser modificable y pasar desapercibido a menos que se realizase una auditoría incluyendo los registros en papel. Por otro lado, la mera utilización de herramientas criptográficas puede conducir a una falsa sensación de seguridad. Con el fin de ser eficaz, la criptografía debe ser utilizada en conjunción con un buen diseño que proporcione una protección completa en la integridad de la información crítica.
En el caso particular de un Estado en Estaods Unidos, donde utilizando el voto electrónico, más de 4.500 votos se perdieron en un condado de Carolina del Norte. Las autoridades creían que una máquina de votación electrónica podía contener más datos que los que efectivamente almacenaba\cite{usatoday} y los descartaron. Es difícil encontrar detalles técnicos que describan lo que sucedió, ya que principalmente fueron los medios de comunicación los que hablaron de eso. Pero se supone que los fabricantes no avisaron o dieron un número incorrecto de votos que la máquina podía almacenar, y en el condado usaron una sola máquina para toda la votación de un espacio de tiempo (llamado ``early voting'').
En otro ejemplo de Estados Unidos, pero en Connecticut, hay máquinas que guardan toda la información de la elección, desde la ``configuración'' de la elección como candidatos, hasta los resultados tabulados en memorias externas que son enviadas a una ubicación central para el conteo final\cite{davtyan:2007}.
% HABRIA QUE EXPANDIR UN TOQUE MAS
\subsection{Almacenamiento externo}
Otra forma de almacenar los votos, es la implementada en las elecciones del 2015 en Argentina y en las elecciones previas al 2010 en Israel, donde los votos se graban en un chip RFID que se encuentra en la boleta (En el caso de Argentina sería la BUE) y se deposita la boleta en una urna física. Luego, en el escrutinio de votos, se utiliza una máquina para leer la información de la boleta y poder contabilizar el voto.
Según la auditoría realizada por la ITBA para la Defensoría del Pueblo de la C.A.B.A\cite{itba}, existen tres posibles problemas al retirar la BUE antes de lo esperado:
\begin{itemize}
\item Si la máquina ha iniciado la grabación del chip RFID pero no la ha finalizado, el sistema ya no responde y se tiene la necesidad de reiniciar la máquina
\item Si la máquina ha finalizado la grabación del chip RFID, entonces queda una boleta con el voto registrado sólo en el chip RFID, sin el voto impreso en la boleta
\item Si la máquina ni siquiera ha iniciado la grabación del chip RFID, entonces al volver a ingresar para un nuevo voto, en la pantalla se muestra la selección del votante anterior en un recuadrado en verde
\end{itemize}
De este modo, si alguien, con mala intención o por desconocimiento, no esperara al mensaje que autoriza a retirar la BUE podría causar problemas de disponibilidad, con la anulación de la máquina o la falta del voto en papel, y de confidencialidad, si su voto quedara remarcado y lo viera alguien más que él. La boleta que almacena la información le esta proveyendo al votante muchas posibilidades de error y de problemas.
\subsection{Mal uso de esquemas de encriptación}
Analizando el sistema de votación electrónica de Brasil, se observan dos problemas mencionados a continuación respecto a la encriptación utilizada en el sistema\cite{aranha}.
\begin{itemize}
\item \textbf{Algoritmos de encriptación obsoletos:} Funciones criptográficas como MD5 y SHA-1 utilizadas para computar firmas digitales y chequeos de integridad no son resistentes a colisiones. Un ataque aprovechando esta vulnerabilidad podría permitir a un atacante construir un software de votación malicioso capaz de producir resultados falsos indistinguibles de los resultados correctos.
\item \textbf{Uso inadecuado de encriptación: } La misma clave de encriptación es compartida por todas las terminales de votación. Esta clave es utilizada para encriptar sus tarjetas de memoria de almacenamiento. Para empeorar las cosas, la clave criptográfica tambien esta guardada en texto plano en las memorias de almacenamiento. Claramente esta es una vulnerabilidad a la confidencialidad de la información.
\end{itemize}
\subsection{Falta de seguridad respecto a la configuración y mantenimiento del SO}
En un informe publicado por VITA\footnote{Virginia Information Technologies Agency} en abril del 2015 acerca del sistema de voto electrónico en Virginia, USA, se menciona que el sistema utilizado en las terminales de votación era un Windows XP Embedded 2002 sin los ultimos parches de seguridad. Esto permitía explotar vulnerabilidades conocidas. Particularmente, se realizó un ataque al file-sharing system utilizando fuerza bruta para adivinar la password de acceso de Administrador utilizando un diccionario y se extrajo que la password era ``admin'', permitiendo acceso a los siguientes servicios de la terminal:
\begin{itemize}
\item Remote Desktop Protocol: Podía accederse remotamente como administrador a la terminal de voto.
\item Los paths compartidos por defecto como ``\$C'', ``\$D'', ``ADMIN\$'', etc eran accesibles para la transferencia de datos.
\end{itemize}
Junto a esto, cada terminal poseía una base de datos \texttt{Microsoft Access} conteniendo información sensible como ser la información de dicha terminal, la ubicación y el número de votos. Dicha base estaba protegida por una password tan débil que fue crackeada en 10 segundos utilizando una herramienta para tales fines.
Unificando estas debilidades mencionadas, sumadas a la pobre seguridad en la red Wifi de las terminales\footnote{Más de esto en transmisión}, constituyen un espectacular ataque en el cual se puede reemplazar la base de datos de votación de la terminal manteniéndose cerca y accediendo mediante red Wifi\cite{schneier}.