RSA de 1024 bits quebrado
RSA é um algoritmo de criptografia de dados, que deve o seu nome a três professores do Instituto MIT (fundadores da actual empresa RSA Data Security, Inc.), Ronald Rivest, Adi Shamir e Leonard Adleman, que inventaram este algoritmo — até a data (2008), a mais bem sucedida implementação de sistemas de chaves assimétricas, e fundamenta-se em teorias clássicas dos números. É considerado dos mais seguros, já que mandou por terra todas as tentativas de quebrá-lo. Foi também o primeiro algoritmo a possibilitar criptografia e assinatura digital, e uma das grandes inovações em criptografia de chave pública.
Esta definição é proveniente da Wikipedia e descreve o algoritmo de cifra RSA. Mas provavelmente terá de ser alterada. E isto porque 3 investigadores da Universidade de Michigan conseguiram quebra-lo. E para isso gastaram apenas 100 horas.
Esta proeza foi conseguida no passado dia 7 de Janeiro. Os investigadores que o conseguiram fazer chamam-se Valeria Bertacco, Todd Austin e Andrea Pellegrini e para o conseguirem utilizaram um sistema Linux SPARC implementado em FPGA.
O resultado do trabalho vai se apresentado na conferência "Design, Automation and Test in EuropeDesign, Automation and Test in Europe" a ter lugar no próximo dia 10 de Março.
Eis a descrição do processo segundo os autores:
"Primeiro, nós desenvolvemos uma falha sistemática, fizemos ataques baseados no algoritmo de exponenciação modular para RSA. Por outro lado, nós exploramos uma falha grave na execução do algoritmo de assinatura RSA no OpenSSL, um pacote muito utilizado para criptografia SSL e autenticação. Em terceiro lugar, relata-se a primeira manifestação física de uma falha de ataque baseado em segurança de um sistema completo de microprocessadores executando software de produção inalterado: atacamos a biblioteca OpenSSL, autenticação original rodando em um sistema Linux SPARC implementado em FPGA, e extraimos bits do sistema 1024 a chave privada RSA em aproximadamente 100 horas."
De salientar que o comprimento da chave determina o nível de segurança. Mas este quebra é independente do comprimento da chave. Além disso, é um método de força bruta e de fácil implementação.
Não é a primeira vez que o algoritmo de cifra RSA é quebrado. Antes tinham sido as chaves de 768 bits. Como resposta a esta quebra estão iminentes algumas mudanças na implementação do protocolo RSA.
Dada a sua utilização em tantas aplicações e serviços web só resta esperar que este problema seja rapidamente ultrapassado e vai começar o trabalho de muitos administradores de sistemas para a mudança para chaves de 2048 bits.
Caso pretenda ler o trabalho desenvolvido pelos 3 investigadores pode aceder a ele através deste link.
Este artigo tem mais de um ano
Desta noticia é que ainda não sabia, mas não me surpreende muito, pois esta ideia que algumas pessoas têm de haver coisas 100% seguras nunca existiu e nunca vai existir.
A minha filosofia diz: tudo o que é inventado há maneira de se quebrar (pode demorar, mas há solução para tal feito que vai aparecer mais cedo ou mais tarde).
Já estava a espera! Depois de quebrarem os 768 bits alguém iria tentar chegar mais longe. Já visualizei o pdf com a descrição da tecnica e é bastante diferente da anterior. A proeza não foi crackar os 768 bits com 5TB de rainbow tables usando um cluster, em 12 horas. A proeza é crackar os 1024 bits em 100 horas sem tanto poder de processamento.
é como os cofres… a segurança de um cofre é medida pelo tempo que demora a ser aberto… dai quando compramos um cofre, compramos um cofre de 5 mins, 2 mins 1 min.. etc..
Quem acredita que está 100% é alguém que não percebe nada disto…
Devemos ter a segurança mínima para um toni qualquer com a mania que é pirata não estragar os dados ou ver o que não deve… porque alguém com conhecimentos entra onde e quando quiser..
Também não facilites tanto as coisas… tenho consciência que não existem sistemas seguros. Mas daí a entrar onde e quando quer? Não é bem assim… a segurança está nesses minutos para o qual precisamos manter o cofre fechado. Normalmente é o tempo preciso para intervenção. Abrir o cofre com mais tempo pode não ter interesse. Assim como essas 100h são suficientes para se intervir. Não deixa de ser espantosa esta luta infinita que se trava (muito antes dos pc’s) e que leva à evolução!
De certeza que o próximo passo já esta na mira destes senhores. 2048 bits, cuidado.
Aproveitavam e colocavam logo encriptação a 2^20 bits… se houver capacidade pra tal.
O.O
Respondi com o Corrector Ortográfico por lapso (em vez do meu utilizador original).
Há profs burros do ensino superior que dizem que algoritmos assimétricos não se atacam com força bruta, mas sim com Denial of Service. O que está completamente errado até porque esse tipo de ataque DOS ataca a infraestrutura, a disponibilidade, e não o algoritmo. E para terminar como se pode ver este tipo de força bruta tem sucesso nesta situação 😉
É sempre possível atacar usando brute-force e sempre será. Em certos sistemas usar essa tecnica pode ser um pouco estupido, leva tempo e é necessário alto poder de processamento (que poucos têm acesso). Mas quem pode, pode!
depende do objectivo do ataque. Há inúmeros motivos para usar e não usar brute force.
1º – urgência (se for urgente e não houver capacidade de maquinaria poderosa o suficiente… mais vale estar quieto)
2º – altamente detectavel em redes
3º – depende da largura de banda se for tentativas de login etc
3.1 – se for tentativas de login e o servidor bloquear por mac-address, ip, por x tentativas/minuto etc, mais uma vez inutil.
as vezes é mais fácil partir do principio que as pessoas são burras, faz-se um telefonema e a engenharia social funciona mais rapidamente.
Por exemplo, tas num hotel sem WIFI, o da frente tem, queres wifi, tem alta encriptaçao e nao consegues entrar, soluçao ? fazes o que eu ja fiz muitas vezes e funcionou, atravessas a rua, pedes o codigo a funcionaria e dizes k precisavas mesmo da net, vais ao buffet fazer a fita k tas la, se ela nao to der tentas com outra funcionaria do hotel.
(apenas um exemplo prático e mais legal claro)
o bruteforce e todos os outros metodos funcionam quando funcionam, as vezes são péssimas opções para coisas relacionadas com ataques online
A tua resposta não contradiz a anterior, ou seja, o método de força bruta pode ser sempre utilizável. Podes sim acrescentar que nem sempre é o método mais aconselhável…
Epa, se realmente tens profs k dizem isso, então tenho que concordar ctg que são realmente um pouco burros… Estás a descrever ataques com fins diferentes.. Denial of Service não expõe o sistema, apenas causa indisponiblidade. Ataque de força bruta tem como objectivo descobrir a password/key, podendo de entrar no sistema…
Cumprimentos,
VS
Se forem ler o artigo, podem ver como este “buraco” é complicado:
http://lwn.net/Articles/377583/
Ou seja, trata-se de alterar a voltagem/ruído de alimentação do CPU e analisar os erros que vão sendo gerados. Conforme as variações pode-se ir sabendo bit a bit a chave…
Isto implica que é preciso acesso físico à maquina com a chave privada, instalar uma data de hardware e gastar MUITAS horas para conseguir fazer algo.
Sim, é um buraco, mas comparado com praticamente tudo o resto, é quase impossível alguém usar, serve quase apenas para para telemóveis e afins.
Para os restante, acaba por ser mais prático retirar o disco (assumindo que também não está encriptado)
Este método aplica-se para qualquer tamanho de chave, mas o tempo que demora aumenta bastante à medida que a chave aumenta.
Por outras palavras… se alguém apanhar a minha chave, certamente não será por este método ( a não ser que sejam masoquistas)
🙂
higuita
Não nenhum sistema seguro. Mas é de louvar a resistência que o RSA tem apresentado. Se fosse fácil de quebrar, não seria notícia e acredito que não sejam apenas 3 pessoas a tentar ultrapassá-lo.
Além disso, se já estão a trabalhar num “fix” é de crer que o RSA se vai tornar ainda mais seguro. Quando deixar de o ser, haverá outro algoritmo a aparecer e por aí adiante.
Entretanto quem ganha com isso são os administradores de sistemas pois o trabalho não acaba 😀
boas..
se alguem em 100 horas faz isso, não é muito seguro, pois as chaves continuam as mesmas, so nos sistemas em que as chaves mudam sincronamente é que aumenta a segurança, mesmo assimm..
cmps
Muito bom. Mas podias ter traduzido para Português de Portugal.
“Quebrado”?!
Sim quebrado, tal como em quebra de segurança.
Que termo usarias? Parece-me lógico usar este, mas gostava de ouvir de tua justiça.
Materia muito boa.
Brasileiros criara uma alternativa para a certificacao digiatl que pode se tornar a solucao para esses problemas, principalmente na certificacao digital.
Criaram um software que gera as assinaturas digitais via celular, e ainda usam uma chave de 2048Bits.
Vale a pena ver a materia no site: http://oglobo.globo.com/tecnologia/mat/2010/02/21/programa-criado-por-cariocas-simplifica-acesso-certificados-digitais-915905384.asp
E ainda e software livre.
Abracos
Mais uma prova de que nada no mundo da informática ou que envolva algum dispositivo com processamento é inatingível/inacessível, tudo é uma questão de tempo..!
Parece impossível!…. Então ainda não estão a utilizar a chave de nylon?… Essa é que é inquebrável!
^_^
Mas pode dar-se sempre atirar-se para dentro de uma fogueira… não quebra mas arde lool… o resultado é sempre o mesmo inutilizada.
Porque é que este tópico é anunciado como notícia “fresca”, se em meados de 2008 já o era??? Vejam por exemplo aqui: http://www.gforum.tv/board/1513/283888/quebrado-sistema-de-criptografia-da-internet-do-futuro.html ou aqui: http://jeffoliveira.blogspot.com/2008/11/quebrado-sistema-de-criptografia-da.html
Afinal o que se pretende com este tópico? Baralhar alguma coisa?
Rui,
Estive a ler os 2 artigos que apresentaste e não vi neles nada que possa indicar que estamos a repetir o que quer que seja. Aliás, eles é que são uma repetição um do outro.
O que fala é que as chaves RSA podem ser quebradas em 3 semanas. E provavelmente estão a referir-se às de 768 bits.
Até esses artigos estavam desactualizados na altura pois sempre se disse que essas chaves eram quebráveis. Demoravas era demasiado tempo para que fosse realmente útil o acesso à informação. Estamos a falar de centenas de anos e de uma necessidade de poder computacional anormalmente grande.
O que este artigo veio falar foi na quebra anunciada das chaves de 1024 bits, que normalmente são usadas, por exemplo, nos sistemas de transacções seguras.
E sim, é uma novidade. Perigosa, mas uma novidade.
Percebi mal então… obrigado.
Sempre!