domingo, 22 de novembro de 2009

Sobre a vulnerabilidade descoberta na urna eletônica

Reproduzo aqui um texto muito bom do IDGNow e comento a seguir.


Perito quebra sigilo e descobre voto de eleitores em urna eletrônica do Brasil

Por Guilherme Felitti, do IDG Now!

Publicada em 20 de novembro de 2009 às 18h14
Atualizada em 20 de novembro de 2009 às 22h40
    Especialista ganha prêmio do TSE por registrar interferência da urna sobre rádio, o que permitiria romper segredo por meio de receptores baratos.

Durante os testes promovidos pelo Tribunal Superior Eleitoral (TSE) para testar a segurança da urna eletrônica a ser usada nas eleições de 2010, um perito teve sucesso em quebrar o sigilo eleitoral e descobrir, por meio de radiofrequência, o candidato escolhido pelo eleitor.

O consultor Sérgio Freitas da Silva compôs o grupo de32 especialistas convocados pelo TSE e compareceu à sede do órgão na terça-feira (10/11), primeiro dia dos testes, com a estratégia de detectar a interferência eletromagnética que a urna exerce sobre as ondas de rádio.

"Fiz meu experimento em 29 minutos e obtive sucesso no escopo que estava proposto: rastrear a interferência e gravar arquivos para comprovar a materialidade do fenômeno", que sintonizam ondas longas e curtas e estações em AM e FM.

Segundo Sérgio, o equipamento usado é encontrado em rádios convencionais vendidos nas lojas, "destes que custam 10 reais". A técnica acabou dando a Sérgio a primeira posição no concurso de melhorias para urna promovido pelo TSE, o que lhe rendeu prêmio de cinco mil reais.

"Enquanto eu digitava na urna, rastreava através do rádio pra ver se detectava alguma interferência. Consegui rastrear a interferência que isto provocava na onda, gravando um arquivo WAV com estes sons", explica.

Sérgio explica que após gravar os ruídos que os botões da urna eletrônica exercem sobre a onda é possível decodificar os sons, o que levaria à descoberta dos candidatos escolhidos pelo eleitor, quebrando seu sigilo.

"É como se o teclado da urna eletrônica se transformasse em um teclado musical, conseguindo rastrear a tonalidade da interferência neste arquivo WAV que gravei", compara.

A técnica descrita por Sérgio é chamada de Van Eck Phreaking, segundo o especialista em segurança Marco Canut, que confirma a possibilidade de quebra do sigilo eleitor caso o método seja aplicado à urna eletrônica brasileira.

Canut é diretor geral da Tempest, consultoria de segurança contratada tanto pela iniciativa privada como pelo Governo para realizar testes de segurança em sistemas computacionais, mesmo intuito do TSE ao convocar os 32 especialistas que atacariam a urna eletrônica.

"Todo computador é uma pequena estação de rádio, emitindo ondas eletromagnéticas", explica Canut. Enquanto os humanos notam como um chiado, a interferência pode ser "entendida" por máquinas, demonstrando qual a tecla escolhida pelo eleitor.

No experimento realizado no TSE, o perito precisava estar a até 20 centímetros da urna para que sua interferência fosse sentida no receptor do rádio.

É o próprio Sérgio, porém, quem esclarece que o uso de antenas mais potentes podem fazer com que a captação seja feita a até dezenas de metros da urna, como demonstraram os pesquisadores Martin Vaugnoux e Sylvain Pasini.

No experimento, gravado em vídeo no Vimeo, o apertar de botões em teclados convencionais poderiam ser interceptados e decifrados a até 20 metros de distância de onde a suposta vítima usava seu computador.

Se aplicássemos o modelo para seções eleitorais brasileiras, a distância seria suficiente não apenas para eleitores ou acompanhantes longe das salas onde as urnas estão, mas também para imóveis vizinhos aos prédios onde acontecem as votações.

Sérgio explica que seriam necessárias antenas mais potentes que melhorem a recepção do sinal no sistema. A estratégia quebra o sigilo do eleitor, não podendo ser aplicada para alterar os resultados de votações.

Durante a Guerra Fria, o exército dos Estados Unidos descreveu os perigos da interceptação de ondas eletromagnéticas em documentos conhecidos como Tempest, nome que acabou se tornando o apelido da técnica, explica Canut.

Desde então, as instalações militares norte-americanas usam técnicas que as blindam do vazamento eletromagnético. O especialista não vê a blindagem da urna eletrônica como uma saída plausível já que a "tornaria mais cara, mais pesada e de manutenção mais díficil".

Possíveis alterações que poderiam minimizar a emissão de onda pela urna, sugere Canut, incluiriam o uso de teclados sensíveis a toque, menos invasivos que os mecânicos usados atualmente pelo TSE.

Procurado pela reportagem, o TSE confirmou que, ao contrário do que havia confirmado anteriormente, quando disse que nenhuma estratégia de ataque havia tido sucesso, que o teste de Sérgio foi bem sucessido, mas fez ressalvas.

"Nas condições que ele conseguiu, a repetição durante uma eleição é impraticável.  Seria necessário que a pessoa ficasse a centímetros da urna, o que não é permitido. A cabine é vigiada pelos mesários. Ninguém pode ficar próximo", afirmou o o secretário de tecnologia do TSE, Giuseppe Gianino.

Questionado sobre a possibilidade de uso de equipamento mais potente, levantada pelo próprio Sérgio, Gianino afirmou que se trata "do campo teórico".  "Se tivesse realmente a possibilidade, ele (Sérgio) teria apresentado um aparelho que faria isto".

sábado, 14 de novembro de 2009

Você é aleatório?


http://xkcd.com/221/

A capacidade de gerar números aleatórios, onde dado uma sequência é impossível prever qual número sairá a seguir, é uma funcionalidade essencial para muitas aplicações, desde simulações de terremotos até criptografia em transações bancárias. Algumas fontes de números aleatórios são fenômenos quânticos, ruido eletromagnético na atmosfera, perturbações causadas por raios cósmicos.

Ao contrário do que pode parecer o ser humano em geral é uma péssima fonte de aleatoriedade. Para mostrar este conceito foi desenvolvido um jogo muito legal que mede a sua aleatoriedade, recomendo que você participe e indique para seus amigos.

Segue o link:http://randomicogame.appspot.com

Este jogo é um belo exemplo de uso da plataforma Google Application Engine para cloud computing.

quarta-feira, 11 de novembro de 2009

Apagão no Brasil - 10 de Novembro de 2009

Com 14 Gigawatts de potência instalada é uma das maiores plantas elétricas do mundo. Nunca antes na história deste país a usina de Itaipú havia sido completamente desligada. Nem na crise elétrica de 2001 que culminou na eleição do Lula.

Ontem 80% da população do país ficou sem luz com prejuízos enormes. Isto mostra a fragilidade da infra-estrutura no país, principalmente da infra-estrutura fora de São Paulo ...


terça-feira, 27 de outubro de 2009

Deu pau no seu programa? Contrate um debugger!

Eu sempre vi a atividade de Debug como uma arte. Como em toda atividade artística, como diz o parceiro Romário, tem pessoas que tem o dom e tem outras que não. Saber admitir que precisa de ajuda é algo fundamental.

Já vi dezenas de programadores espetaculares que diante de um bug cabeludo não sabem o que fazer. Muitas vezes, são melhores programadores que o o cara que vai lá e resolve o bug; não se deve ter vergonha disto.

Nunca tinha visto um serviço profissional de debugging até então, e aqui vai a dica do que encontrei: http://www.speedcomm.com.br/consultoria/debug/

Quem achar o preço salgado, volte no tempo, lembre dos desenhos animados da sua infância... Em concreto deste:



quinta-feira, 15 de outubro de 2009

Novos Protocolos filtrados com Netfilter Rede

Novos Protocolos filtrados com Netfilter Rede


A versão 3.6 do Netfilter Rede incluiu a possibilidade de bloqueio e controle de 95 protocolos.

Listamos a seguir os protocolos agora bloqueados:

AVI
AppleJuice
BGP
Battlefield
BitTorrent
DHCP
DNS
DirectConnect
DirectDownloadLink
FTP
Feidian
Filetopia
Flash
GRE
GaduGadu
Gnutella
HTTP
Half-Life 2
I23V5
IAX
ICMP
IGMP
IMAP
IP in IP
IPP
IPsec
IRC
Icecast
Jabber
Kazaa/Fasttrack
Kontiki
MDNS
MGPC
MMS
MOVE
MPEG
MSN Messenger
Manolito
MySQL
NFS
NTP
NetBIOS
OFF
OSPF
Ogg
OpenFT
Oscar (AOL Messenger)
PCAnywhere
POP3
PPLive
PPStream
Pando
Popo
PostgreSQL
QQ
QQLive
Quake
QuickTime
RDP (Remote Desktop)
RTP
RTSP
RealMedia
SHOUTcast
SMB
SMTP
SNMP
SSDP
SSH
SSL
STUN
SYSLOG
Second Life
Socrates
SopCast
SoulSeek
Steam
TDS
TVAnts
TVUplayer
Telnet
Thunder/Webthunder
Usenet
VNC
VeohTV
WinMX
WindowsMedia
World of Warcraft
XDMCP
Xbox
Yahoo! Messenger
Zatoo
eDonkey
egp
iMESH
sctp
  1. AVI
  2. AppleJuice
  3. BGP
  4. Battlefield
  5. BitTorrent
  6. DHCP
  7. DNS
  8. DirectConnect
  9. DirectDownloadLink
  10. FTP
  11. Feidian
  12. Filetopia
  13. Flash
  14. GRE
  15. GaduGadu
  16. Gnutella
  17. HTTP
  18. Half-Life 2
  19. I23V5
  20. IAX
  21. ICMP
  22. IGMP
  23. IMAP
  24. IP in IP
  25. IPP
  26. IPsec
  27. IRC
  28. Icecast
  29. Jabber
  30. Kazaa/Fasttrack
  31. Kontiki
  32. MDNS
  33. MGPC
  34. MMS
  35. MOVE
  36. MPEG
  37. MSN Messenger
  38. Manolito
  39. MySQL
  40. NFS
  41. NTP
  42. NetBIOS
  43. OFF
  44. OSPF
  45. Ogg
  46. OpenFT
  47. Oscar (AOL Messenger)
  48. PCAnywhere
  49. POP3
  50. PPLive
  51. PPStream
  52. Pando
  53. Popo
  54. PostgreSQL
  55. QQ
  56. QQLive
  57. Quake
  58. QuickTime
  59. RDP (Remote Desktop)
  60. RTP
  61. RTSP
  62. RealMedia
  63. SHOUTcast
  64. SMB
  65. SMTP
  66. SNMP
  67. SSDP
  68. SSH
  69. SSL
  70. STUN
  71. SYSLOG
  72. Second Life
  73. Socrates
  74. SopCast
  75. SoulSeek
  76. Steam
  77. TDS
  78. TVAnts
  79. TVUplayer
  80. Telnet
  81. Thunder/Webthunder
  82. Usenet
  83. VNC
  84. VeohTV
  85. WinMX
  86. WindowsMedia
  87. World of Warcraft
  88. XDMCP
  89. Xbox
  90. Yahoo! Messenger
  91. Zatoo
  92. eDonkey
  93. egp
  94. iMESH
  95. sctp

quinta-feira, 8 de outubro de 2009

Netfilter Rede 3.6 – Lançamento

Netfilter Rede 3.6; Lançamento


O Netfilter Rede 3 recebeu uma atualização. São mais de 300 mudanças concentradas em suporte de hardware e simplificação da interface de gerenciamento.
Algumas telas abaixo:
scr01
scr02

segunda-feira, 5 de outubro de 2009

[Atualizado Outubro/2009] MedCalc ganha um Add-on: Baixe aqui

Sabendo da pobreza de aplicativos médicos para S60 estou colocando mais uma novidade disponível:


Várias coisas foram adicionadas na versão 0.1.0

Espero que o blog NokiaBr coloque uma referência para cá.

Aproveito para agradecer meu sponsor: www.netfilter.com.br


sábado, 3 de outubro de 2009

Problema da Mochila ou como se livrar de suas moedas

Eu havia escrito um post sobre o problema do caixeiro viajante e para ilustrar os problemas NP completos vou falar um pouco do problema da mochila.

O problema da mochila segundo a Wikipedia: "O problema da mochila (em inglês, Knapsack problem) é um problema de otimização combinatória. O nome dá-se devido ao modelo de uma situação em que é necessário preencher uma mochila com objetos de diferentes pesos e valores. O objetivo é que se preencha a mochila com o maior valor possível, não ultrapassando o peso máximo."

Uma variante deste problema é o da eliminação de moedas. Dado que você tem n moedas de valores diferentes, como fazer para que o valor seja exatamente x e você elimine o máximo possível de moedas.

Dado n tipos de moeda (no Brasil seria 1,5,10,25,50 e 100 centavos) e m unidades dela encontrar a combinação que maximiza o numero de moedas eliminados para pagar um valor x.

Intuitivamente parece ter complexidade equivalente ao problema da mochila, mas não consegui ainda provar. Alguém se candidata? (Update: Aparentemente este problema das moedas é equivalente ao Bin-Packing que é NP-Hard)

quarta-feira, 23 de setembro de 2009

Top level domain parsing - Separando o nome do domínio

ref: http://stackoverflow.com/questions/1066933/python-extract-domain-name-from-url

from __future__ import with_statement

from urlparse import urlparse


# load tlds, ignore comments and empty lines:
with open("effective_tld_names.dat.txt") as tldFile:
    tlds = [line.strip() for line in tldFile if line[0] not in "/\n"]


def getDomain(url, tlds):
    urlElements = urlparse(url)[1].split('.')
    # urlElements = ["abcde","co","uk"]


    for i in range(-len(urlElements),0):
        lastIElements = urlElements[i:]
        #    i=-3: ["abcde","co","uk"]
        #    i=-2: ["co","uk"]
        #    i=-1: ["uk"] etc


        candidate = ".".join(lastIElements) # abcde.co.uk, co.uk, uk
        wildcardCandidate = ".".join(["*"]+lastIElements[1:]) # *.co.uk, *.uk, *
        exceptionCandidate = "!"+candidate


        # match tlds: 
        if (exceptionCandidate in tlds):
            return ".".join(urlElements[i:]) 
        if (candidate in tlds or wildcardCandidate in tlds):
            return ".".join(urlElements[i-1:])
            # returns "abcde.co.uk"


    raise ValueError("Domain not in global list of TLDs")


print getDomain("http://abcde.co.uk",tlds)

terça-feira, 15 de setembro de 2009

“Esse país está mudando, e Rondônia mudando mais rápido que nosso país” - Discurso em Boa Vista...

“Esse país está mudando, e Rondônia mudando mais rápido que nosso país”, discursou Dilma Rousseff ontem para cerca de 15 mil pessoas em Boa Vista, capital de Roraima. Ao perceber um silêncio seguido de vaias, a ministra se deu conta da gafe e se desculpou. Dilma retomou ontem as viagens pelo país com o presidente Lula.


Sem comentários!