Voto Eletrônico, Voto Seguro?

terça-feira, julho 18

Afinal, qual é a do .dll?


Desculpem-me os profissionais de informática, mas o objetivo deste artigo é explicar em linguagem simples e acessível uma das várias formas de se fraudar a urna eletrônica. Há outras maneiras. Aqui estaremos focando nos arquivos .dll e no sistema operacional Windows CE.

O que é .dll?

Um .dll é um pequeno programa que normalmente tem uma única função, a de transferência. Veja no seu computador. Nas pastas do Windows existem muitos .dlls, cada um fazendo uma coisa. Todo software tem arquivos .dll que permitem que ele "converse" com o Windows, com o mundo interno, com o mundo externo, com outros softwares.

Quando se instala um programa, os seus arquivos .dlls são automaticamente incluídos na pasta adequada do Windows.

Em resumo, .dlls são programas (códigos) auxiliares de um programa (código) principal. É através deles, por exemplo, que o programa principal "responde" ao teclado e "escreve" na tela do seu monitor.

Windows CE

Toda máquina tem seu sistema operacional. E aqui cabe comentar o sistema operacional utilizado nas nossas urnas-e: o Windows CE.

O Windows CE vem com milhares de .dlls para funções específicas. Muitos deles são "abertos" para que se possa otimizar de acordo com o que se deseja, ou seja, "casar" o hardware com o software e com a aplicação específica. Para isso, junto com o CE, a Microsoft fornece um programa chamado Platform Builder, com o qual em minutos é possível pode mudar um .dll para uma função desejada específica. Claro, há os .dlls "fechados", mais difíceis de modificar. Exigem maior conhecimento em informática. Mas ambos, "abertos" e "fechados", são modificáveis.

Neste sentido, as duras críticas de quem possui expertise: "E aqui faco um declaração, reconhecida em cartório: é um completo absurdo técnico, ou uma decisão proposital visando a uma futura fraude, usar o CE para uma urna eletrônica a qual, em essência, necessita de altíssima segurança. Em nenhuma hipótese se deveria usar o Windows CE para esse tipo de máquina." (JCMelo)

Onde um ou mais .dlls podem ser modificados?

Na Microsoft, nos Estados Unidos (origem), na Diebold, fabricante das urnas (intermediário) e no TSE (destino). Esses são os três locais mais naturais. Mas, como podemos concluir, uma fraude pode ser introduzida também nos "caminhos" entre eles. Via, vamos dizer, 20 pessoas que tem acessos naturais para isso: os técnicos. Tecnicamente, não se pode bloquear esses acessos, porque há necessidade de acessar os softwares das urnas, em TODAS as fases de projeto (fabricação, inicialização, etc.)

E essa fraude estará em todas as urnas que tiverem esse CE, ou seja, a fraude estará em quaisquer cópias desse CE. E todas as urnas tem o CE como o seu sistema operacional.


E essa fraude é indetectável?

Sim, depende exclusivamente do nivel técnico de quem a faz. Se for bem feita, nem o FBI vai descobrir. Existem muitas formas para fazer isso, dezenas. Inclusive programas que fazem checksums e crc mascarados, programação vertical, etc. Programas que existem disponiveis para comprar, e baratos. Como os programas de engenharia reversa, também disponiveis e baratos. Até sem eles pode-se modificar um .dll, mas isso seria uma burrice técnica, dado que existem bons instrumentos para fazê-lo.

Conforme declaração de Amilcar Brunazo Filho: "Tanto os programadores da Microsoft, quanto os da Diebolod e os do próprio TSE podem inserir código malicioso no meio daquele conjunto de arquivos, inauditáveis na prática, que passará despercebido pelos demais agentes e fiscais. Este tipo de adulteração do software será automaticamente indetectável pelas verificações de assinatura digitais. Se bem feitas, também serão indectáveis pelos testes de simulação de votação (Teste V-PRÉ feito no dia da carga das urnas ou o Teste de Votação Paralela feito no dia da eleição). Se bem feitas, apagarão as pistas depois de desviados os votos e serão indetectáveis por perícias depois das eleições."

E como esse .dll poderá registrar fraudulentamente um voto?

Só há necessidade de um "trigger" (gatilho, um disparo), para acionar um .dll ou .dlls fraudulentos.

Um exemplo simples é se votar para o candidato X e o voto ser registrado para o candidato Y, ou seja, na própria sequência de votar está o trigger. Outro exemplo mais complexo é ter um trigger numa foto do candidato X, e toda vez que ela aparecer o voto será do candidato Y. E existem MUITAS maneiras de se criar esse trigger.

Ele poderá, inclusive, estar no próprio hardware da máquina, o que aliás é muito fácil de fazer (para os técnicos em hardware: num bus ou em qualquer outra parte, use uma linha - esse ponto sendo 0, o trigger é acionado, e como sabemos existem centenas ou milhares de locais onde isso podera ser feito, no hardware de uma urna eletrônica). "Em tudo que eu posso imaginar para um trigger, vejo talvez umas 100 ou mais possibilidades diferentes, idauditáveis.", declara JCMelo.

E o que esse .dll fraudulento faz (ou .dlls) QUANDO ACIONADO (DISPARADO) por esse trigger?

O infinito. É o fraudador que vai escrever o código que realiza a fraude que será inserida num .dll normal, ou até mesmo escrever um .dll específico para o que quer.

1.Você é candidato a Deputado da região de Campinas, seu principal concorrente é X. Vamos transferir, nessa região, 4,42% dos votos de X para você, randomicamente e na propria hora de votar, de varias formas para não chamar a atenção. Indetectável, ficam registrados os votos para você.

2. Você é candidato a Governador de SP, seu principal concorrente é X. Vamos transferir para você: 4,12% de Campinas, 1,07% de são Jose dos Campos, 7,34% de são Paulo capital, etc., de uma maneira que não cause atenção como por exemplo acompanhando as pesquisas de cada região, e/ou randomicamente, e outras formas.

3. Você é candidato a Presidente, seu principal concorrente é X. Vamos transferirpara você: 4,12% da Bahia, 1,07% de são Jose dos Campos, 7,34% de são Paulo, etc.,de uma maneira que não chame aténção como por exemplo acompanhando as pesquisas decada região, e/ou randomicamente, e/ou temporalmente, e outras formas.

Escrever um código .dll (programa) é equivalente a escrever um livro. Pode-se escrever o que quiser. Desde como plantar abacates, como alimentar o elefante branco da Índia, como fazer um transplante de coração, COMO FAZER A FRAUDE (os seus procedimentos - o código - para fazê-la).

E os tais 20 técnicos, são pessoas honestas?

CONCEITUALMENTE isso não tem a menor importância, pois o que está em jogo é a eleição de um Presidente. O preço, sim, pode ser astronômico. Em torno de bilhões. Mas, para fraudar as urnas-e, basta apenas uma pessoa. Ou, no máximo, duas. A conclusão óbvia é que a urna eletrônica não deve ter o Windows CE como seu sistema operacional e deve ser aberta a testes (OAB, Partidos, ONGs, Universidades, ABI, etc)

Finalizando, EM QUALQUER PARTE DO MUNDO CIVILIZADO as pessoas que decidiram usar e protegem o Windows CE já estariam na cadeia ou sendo profundamente investigadas.

O caso dos .dlls é tao simples que é uma total perda de tempo se analisar se "podem" ser fraudados. A análise é outra e criminal: Por que se decidiu usar o CE? Por que se decidiu BLOQUEAR juridicamente QUAISQUER questionamentos sobre a urna?