quarta-feira, 15 de janeiro de 2014

Nós conseguimos derrotar o único mecanismo utilizado pela urna eletrônica para proteger o sigilo do voto.


Diego Aranha: Fragilidade de urna abre caminho para ‘voto de cabresto digital’

publicado em 19 de abril de 2012 às 11:16

Diego Aranha: Fragilidade de urna brasileira abre caminho para ‘voto de cabresto digital’ (
por Conceição Lemes

Finalmente o Tribunal Superior Eleitoral (TSE) divulgou na semana passada o relatório final dos testes de segurança das urnas eletrônicas, realizados de 20 a 22 de março.

Assinado pela comissão avaliadora de “notáveis” designada pelo próprio TSE, ele é curtíssimo (tem 2 páginas), cheio de tabelas e siglas, em linguagem cifrada, sem qualquer explicação sobre os critérios, justificativas ou conclusões.

Em nenhum momento também ressalta o êxito da equipe coordenada pelo professor Diego Aranha, do Departamento de Ciência da Computação da Universidade Brasília (UnB), que demonstrou a existência de fragilidades no projeto do software das urnas eletrônicas.



O grupo G1PT1 (é o da UnB, do professor Aranha)  desembaralhou os votos gravados no arquivo chamado Registro Digital do Voto (RDV) sem deixar rastros ou vestígios do ataque.
Em “leiguês”: o grupo conseguiu quebrar a única defesa da urna eletrônica para garantir o sigilo dos votos, identificando a hora e a quem foi destinado o primeiro voto, o segundo, o terceiro, o quarto, e, assim, sucessivamente. Em tese, esse ataque bem-sucedido à urna (como se diz no jargão computacional) viabiliza a violação do sigilo das opções de cada eleitor. Basta simplesmente alguém anotar a hora que cada eleitor votou.

O professor Wilson Henrique Veneziano, colega de departamento de Diego Aranha, integrou a comissão do TSE que organizou e disciplinou o teste. Em entrevista ao Viomundo, ele diz:

“Os testes foram feitos com o software provisório de urna. É uma versão que está em processo de desenvolvimento. É uma primeira versão do que se vai usar agora.   Esse teste faz parte do processo de desenvolvimento”.
“A equipe do professor Diego fez um trabalho brilhante. Conseguiu vencer certa barreira de segurança da urna,  pois identificou um ponto de vulnerabilidade em que o tribunal já estava trabalhando. Mas isso só foi possível porque o TSE abriu-lhes totalmente o código-fonte e, ainda, forneceu todas as informações sobre o software e o hardware da urna”.
“Mesmo assim, o professor Diego não conseguiu nem de perto alterar o software que contabiliza os votos dos candidatos nem quem votou neles”.
“É preciso também que fique bem claro que isso aconteceu em teste de laboratório. Nada disso tem condições de ocorrer no período eleitoral sem que seja detectado. Aí, uma vez detectado o problema, a urna seria invalidada”.

Essa avaliação, porém, é contestada por especialistas independentes, entre os quais o engenheiro Amilcar Brunazo Filho,  moderador do Fórum do Voto Eletrônico.

BRUNAZO: “PARA OS REPRESENTANTES DO TSE MELECAR O TECLADO COM FEZES É MAIS PERIGOSO” 

“O edital dos testes do TSE diz que o software a ser testado seria o mesmo usado em eleições regulares e que o relatório final da comissão avaliadora deveria ser divulgado em 29 de abril e conter descrição, avaliação e conclusões sobre os diversos testes. Nada disso foi cumprido pela comissão de notáveis”, critica Brunazo , especialista em segurança de dados. “Se era para fazer um relatório tão pífio, não havia necessidade de adiar a sua divulgação por duas semanas.”

“Os representantes do TSE continuam insistindo em minimizar o sucesso obtido pelo grupo do professor Diego Aranha com desculpas equivocadas”, prossegue Brunazo.   “Por exemplo, o acesso ao código fonte é garantido por lei em eleições normais (art. 66 da lei 9.504) e em nenhum momento a equipe da UnB cogitou modificar software das urnas. Ela obteve sucesso pleno na sua tentativa de violar o sigilo do voto sem mesmo tocar nas urnas. Acessou apenas dados como os arquivos de LOG e de RDV, que são publicados após a eleição, como prevê   o artigo 43 da Resolução 23.365/12 do TSE”.
“Art. 43. A Justiça Eleitoral fornecerá, mediante solicitação, cópia do Registro Digital do Voto para fins de fiscalização, conferência, estatística e auditoria do processo de totalização das eleições.
§ 1º O Registro Digital do Voto será fornecido em arquivo único, contendo a gravação aleatória de cada voto, separada por cargo.
§ 2º O pedido poderá ser feito por partido ou coligação concorrente ao pleito, nos Tribunais Eleitorais, observada a circunscrição da eleição, até 15 de janeiro de 2013.
§ 3º O requerente deverá especificar os Municípios, as Zonas Eleitorais ou Seções de seu interesse, fornecendo as mídias necessárias para gravação.
§ 4º Os Tribunais Eleitorais terão o prazo de 48 horas, a partir da totalização dos votos, para o atendimento do pedido.”

“Para disponibilizar esses arquivos”, chama atenção Brunazo, “ é a própria Justiça Eleitoral que normalmente rompe o lacre das urnas a fim de retirar o pen-drive onde eles ficam gravados!”
Por sinal, o código-fonte das urnas que serão usadas nas eleições municipais de 2012 já está aberto no TSE desde o dia 07 de abril. Brunazo esteve lá na quarta-feira da semana passada 11, para apresentar as credenciais como representante de Partido Político (PDT) e sua equipe já está começando a análise dos códigos.

O relatório final da Comissão Avaliadora, que é irrecorrível segundo as próprias regras do TSE, atribuiu ao trabalho da equipe da UnB a nota de avaliação de 0,0313 em 400 pontos possíveis. Essa nota equivale, numa escala de zero a 10, a menos que 0,0008.

“Uma avaliação tão baixa é um disparate”, contesta Brunazo.

Para ilustrar o absurdo, recorre a um caso que aconteceu em 2008, no interior do Maranhão. Após votar, um eleitor insatisfeito lambuzou o teclado da urna com fezes humanas. Com isso provocou a “indisponibilidade do equipamento” já que ninguém mais quis votar nele.

“Pois usando os critérios do TSE, esse ‘ataque’ teria nota 1 (em 400 pontos possíveis)”, detona Brunazo. “Ou seja, o relatório do TSE considerou que melecar o teclado da urna seria 30 vezes mais perigoso e danoso ao processo eleitoral do que a fragilidade apontada pela equipe da UnB, que permite ordenar os votos de todas das urnas eletrônicas usadas até 2010.”

ARANHA: “DERROTAMOS O ÚNICO MECANISMO PARA PROTEGER O SIGILO DO VOTO”

“De fato, não violamos nenhum lacre que já não seria violado ao final de uma eleição normal”, afirma o professor Diego Aranha. “Nós demonstramos que é possível, sim, montar um ataque com o objetivo de fraudar o sigilo do voto. Não se trata de provocar falha ou defeito, como está no relatório. Também não achamos que a pontuação reflita com precisão os nossos resultados.”

Do grupo coordenado por Diego Aranha fazem parte André de Miranda, Marcelo Monte Karam e Felipe Brant Sacarel, todos técnicos servidores do Centro de Informática (CPD) da UnB.
Viomundo – O senhor concorda com o relatório da comissão avaliadora do TSE?
Diego Aranha – O relatório atribuiu critérios de pontuação exclusivamente para o que foi feito em ambiente simulado. Por exemplo, listou como quatro os pontos de intervenção para que o nosso ataque fosse bem-sucedido. De fato, precisamos provocar intervenções nesses quatro pontos durante a execução do teste, por não haver outra forma de obter acesso aos dados num ambiente de testes.   Num cenário real, toda a informação necessária já é de natureza pública. Nesse sentido, a parte do relatório que, de fato, não entendemos foi a que qualifica nossa metodologia como tentativa de falha e não de fraude.

Viomundo – Daria para traduzir para o “leiguês” a avaliação do TSE?

Diego Aranha – O próprio edital de abertura do evento define falha como a imposição de um estado inconsistente ao equipamento de forma a fazê-lo operar fora de suas condições normais, sem haver qualquer impacto no sigilo ou integridade do voto.

Em termos leigos, um teste com essas características utilizaria um defeito na urna eletrônica para fazê-la “pifar”. Entretanto, a nossa urna eletrônica funcionou dentro dos seus limites normais de operação durante todo o teste. Não tivemos necessidade de invadir o perímetro físico do equipamento ou de alterar qualquer um de seus componentes. Não foi utilizado nenhum procedimento que não seria utilizado em uma votação oficial.

Viomundo – O que achou da pontuação?

Diego Aranha – A comissão utilizou os critérios acima e nos atribuiu 0.0313 pontos de um máximo de 400. Não acredito que essa pontuação reflita com precisão a própria apreciação da contribuição por parte do TSE, qualificada como “extremamente positiva” em mais de uma ocasião.

Viomundo – Tem alguma cláusula no edital do TSE que o impeça de divulgar a técnica que utilizou?

Diego Aranha – Não, inclusive tenho convites de universidades para ministrar palestra
a respeito e, nessas ocasiões, divulgarei a técnica que utilizamos. Também não há obstáculos para a divulgação da técnica em publicações científicas.

Viomundo — Depois dos testes, o TSE alterou os programas. Soube que o pessoal de TI do TSE queria que o senhor fizesse novos testes antes de eles completarem o relatório. É verdade que o senhor se recusou a fazer os testes?


Diego Aranha — Não é verdade. Ainda no último dia de testes, 22 de março, o pessoal técnico do TSE nos procurou na hora do almoço para analisarmos uma versão nova do código que supostamente corrigia a fragilidade encontrada pela equipe e repetir o teste que obteve sucesso.

Como tínhamos o relatório para finalizar, justificamos que a confecção desse documento tinha prioridade imediata na nossa lista de tarefas. Posteriormente, não recebemos nenhum pedido mais concreto para a realização da tarefa. Note também que o edital limitava a participação das equipes a, no máximo, sugerir correções para as vulnerabilidades encontradas. A disponibilidade para examinar uma nova versão do código não é uma obrigação, mas uma extensão da contribuição por parte da equipe.

Viomundo — O seu grupo demonstrou que associando os arquivos das urnas   é possível saber cada voto dado numa urna com a hora em que foi dado.   A justificativa oficial é de que numa eleição normal isso não é possível, pois o código-fonte seria secreto. Isso é verdade?


Diego Aranha — Durante os testes, nós demonstramos que era possível recuperar os votos em ordem a partir dos produtos públicos de uma eleição. A informação adicional de que o LOG público da urna armazenava também o horário em que cada voto foi computado nos chegou após a conclusão dos testes. Com essa nova informação, é possível recuperar tanto os votos em ordem como correlacioná-los com os horários em que foram inseridos na urna, sem possibilidade de rastreamento, limitação de tempo ou inacurácia.

Ou seja: 1) nossa técnica não alterou nenhum componente nem utilizou nada diferente do que é convencional; 2) nosso programa de análise é instantâneo;   3) a metodologia é exata, não deixa rastros e funciona em qualquer ocasião.

Em uma eleição normal, é preciso unicamente que se monitore a ordem ou horário em que os eleitores votam para posteriormente se fazer a correspondência entre voto e identidade do eleitor, algo perfeitamente factível de ser feito em escala controlada.

Em resumo: nós conseguimos derrotar o único mecanismo utilizado pela urna eletrônica para proteger o sigilo do voto.

A respeito do conhecimento do código-fonte, nenhuma definição plausível de segurança assume o segredo do mecanismo de segurança propriamente dito como fonte de confiança. Essa noção data de 1883, quando Auguste Kerckhoffs escreveu em seus princípios que técnicas de criptografia precisavam resistir aos ataques de um inimigo que as conhece em seus mínimos detalhes.

Mecanismos de segurança que não resistem a ataques nesse cenário são, na verdade, mecanismos apenas de ofuscação e com valor prático nulo. A razão é simples: quantos profissionais com os mais diversos interesses tiveram acesso ao código-fonte da urna eletrônica em toda a sua história?

Qualquer técnica de segurança implementada na urna deve ser segura contra atacantes externos ou internos e deve assumir que o atacante detém todas as informações possíveis a seu respeito. Por esse motivo, faz absoluto sentido a possibilidade de se examinar o código-fonte da urna na fase de preparação dos testes de segurança, ainda que por um período curto e limitado.

Portanto, sob a ótica das áreas de Criptografia e Segurança Computacional, não procede a justificativa posterior de que a técnica é inviável na prática por exigir conhecimento “privilegiado” do sistema.

Viomundo — O fato de o seu grupo ter quebrado a principal barreira de proteção do sigilo do voto eletrônico abre caminho para que tipo de prática?


Diego Aranha — Essa possibilidade abre caminho para uma espécie de “voto de cabresto digital”. Um candidato capaz de comprar votos ou exercer pressão política consegue verificar posteriormente e com absoluta certeza se os eleitores coagidos de fato votaram em seu favor. Portanto, ainda que não seja alterado diretamente o resultado da urna, a prática influencia indiretamente o resultado das eleições.

Viomundo — Qual a solução para a fragilidade do sistema do TSE? Seria a urna imprimir o voto de cada eleitor após ele digitar os números dos seus candidatos?

Diego Aranha — O voto impresso tem outra finalidade: permitir a verificação independente e por amostragem da votação eletrônica.

A solução para a fragilidade encontrada pela equipe consiste na restauração da segurança do mecanismo implementado pela correção do erro de projeto que a ocasionou. Vale ressaltar que a nova versão do mecanismo de segurança não pode se restringir à ofuscação e precisa ser resistente a ataques externos ou internos.

Ainda que o voto impresso não tenha relação direta com o sigilo do voto, ele é fundamental para fins de verificação da integridade de uma eleição oficial que depende de urnas eletrônicas do tipo adotado no Brasil.

Viomundo – O ideal então seria utilizar outro tipo de urna eletrônica? O engenheiro Amilcar Brunazo Filho diz que ainda utilizamos as urnas de primeira geração, enquanto lá fora já estão na de segunda. 

Diego Aranha – O ideal é utilizar um tipo de votação eletrônica que permita a verificação independente dos votos computados.

Nenhum comentário: