Ataque de força bruta: diferenças entre revisões

1 327 bytes removidos ,  7 de janeiro de 2016
m
"Paar 2010" ou "Graham 2011" não significam nada (isso não é referência) + outras "invenções"
(algumas correções de terminologia)
m ("Paar 2010" ou "Graham 2011" não significam nada (isso não é referência) + outras "invenções")
{{má tradução}}
{{sem notas|data=janeiro de 2016}}
{{Reciclagem|data=janeiro de 2016}}
{{corrigir}}
{{revisar|sobre=informática}}
[[Ficheiro:Board300.jpg|thumb|272x272px|A [[EFF DES cracker]] de US$250.000 continha mais de 1.800 chips customizados que podiam quebrar uma chave DES por meio da força bruta em questão de dias. A fotografia mostra uma placa de circuito do DES Cracker preenchida em ambos os lados com 64 Deep Crack chips. ]]
<span class="cx-segment" data-segmentid="31"></span>Em [[criptografia]], um '''ataque de força bruta''', ou '''busca exaustiva da chave, '''é um [[ataque criptoanalítico]] que, em teoria, pode ser usado contra qualquer dado encriptado [1] (exceto por dados encriptados através de um esquema de [[Segurançainformação Informação-teórica|segurançateoricamente informação-teóricasegura]]). Este ataque pode ser utilizado quando não há possibilidades de tirar vantagem de nenhuma outra fraqueza de um sistema de encriptação (se alguma existir) de modo a tornar o ataque mais fácil. Ele consiste de uma checagem sistemática de todas as possibilidades de [[chaves]] ou [[senhas]] até a correta ser encontrada. No pior caso, isto implicaria em percorrer todo o [[espaço de busca]].
[[Ataque criptoanalítico| ]][[Criptoanalítico|<nowiki/>]]
 
Quanto a encontrar senhas, este método é muito rápido quando usado para checar todas as senhas curtas, mas para senhas longas, outros métodos são usados, como o [[ataque do dicionário]], por causa do tempo que o ataque de força bruta pode levar.
 
<span class="cx-segment" data-segmentid="46"></span>Quanto a encontrar chaves, o [[tamanho de chave ]]<nowiki/> é usado na cifra para determinar a viabilidade prática da aplicação do ataque de força bruta, pois chaves mais longas são exponencialmente mais difíceis de quebrar que as chaves curtas. Uma cifra com a chave de ''n'' bits pode ser quebrada em seu pior caso em um tempo proporcional a <math>2^n</math> e um tempo médio de metade disto.
 
<span class="cx-segment" data-segmentid="50"></span>Um ataque de força bruta pode '''ser menos efetivo''' através da [[ofuscação]] do dado a ser codificado, algumas vezes feita para tornar mais difícil para o atacante reconhecer quando o código foi quebrado. Uma das medidas de resistência de um sistema de criptografia é o quão longo seria um ataque de bruta bem sucedido aplicado nele pelo melhor atacante.
 
Ataques de força bruta são uma aplicação da [[busca por força bruta]], a técnica de resolução de problemas geral que consiste em enumerar todos os candidatos possíveis a solução e verificar cada um deles.
 
<span class="cx-segment" data-segmentid="57"></span>O termo "força bruta" não é o único termo que nomeia este tipo de ataque. Ele também pode ser chamado de "bruta força", "busca por exaustão", ou apenas "brute" (que é um nome comum de programas que realizam ataques de força bruta).
 
== Limites teóricos ==
<span class="cx-segment" data-segmentid="62"></span>O recurso necessário para realizar um ataque de força bruta cresce [[Crescimento exponencial|exponencialmente]] com o aumento do tamanho da chave, não linearmente. Embora os regulamentos de exportação dos EUA restringiram historicamente o tamanho das chaves para [[Algoritmo de chave simétrica|chaves simétricas]] (por exemplo: [[DES]]), essas restrições não estão mais em vigor, portanto algoritmos simétricos modernos tipicamente usam chaves computacionalmente mais fortes que 128-256 bits.
 
Há um argumento físico para que chaves simétricas com tamanho de 128 bits sejam computacionalmente seguras contra ataques de força bruta. O chamado [[Landauer's principle|princípio de Landauer]] implicado pelas leis da física definem um limitante inferior para a energia necessária para a execução de um cálculo de ''kT ''' '''''<nowiki/> '''·''' ln 2 por bit apagado em uma computação, onde'' T'' é a temperatura do dispositivo em [[kelvins]],'' k'' é a constante de Boltzmann, e o [[logaritmo natural ]]<nowiki/> de dois é aproximadamente 0,693. Mesmo em princípio [2], nenhum dispositivo de computação irreversível pode usar menos energia do que isso. Então, para percorrer todos os possíveis valores de uma chave simétrica de 128 bits (ignorando o calculo real para checá-la) seriam teoricamente necessárias <math>2^{128}-1</math> inversões de bit em um processador convencional. Se for assumido que este calculo ocorre &nbsp; próximo da temperatura ambiente (~300k), o limitante de Von Neumann-Landauer pode ser aplicado para estipular que a energia requerida seria em torno de <math>10^{18}</math> [[Joule|joules,]] o que equivale a consumir 30 [[gigawatts]] de energia por ano. Isto é igual a (valor que significará mais que 1/100-ésimo da energia produzida pelo mundo) <math>30*10^9(W)*360*24*3600(s)=9.46*10^{17} J</math> ou 262.7 TWh. O cálculo completo - checando se cada chave é a solução - consumiria muitas vezes mais que este montante. Além disto, esta é simplesmente a energia necessária para atravessar o espaço de busca da chave; a quantidade de tempo que cada bit leva para ser invertido não é considerado, o que certamente seria maior que 0 (esta notação refere-se ao [[Bremermann's limit]]).
 
No entando, esta argumentação assume que os valores de registro são alterados usando o conjunto convencional de e claro de operações que inevitavelmente gera [[entropia]] (para entender o conceito de entropia em computação, veja [[teoria da informação]]). Isto tem mostrado que hardwares podem ser projetados para não confrontar esta obstrução teórica (veja mais em [[Reversible computing|computação reversível]]), embora nenhum destes computadores tenham sido construídos.[carece de fontes]
[[Ficheiro:ATI_Radeon_HD_5770_Graphics_Card-oblique_view.jpg|left|thumb|[[GPU|GPUs]] modernas são bem adaptadas a tarefas repetitivas e podem ser associadas a quebra de senhas baseadas em hardware ]]
Como os sucessores comerciais da solução governamental ASICs se tornaram disponíveis, também se tornou conhecido o [[ataque de hardware customizável]]. Atualmente duas tecnologias emergentes tem provado sua capacidade no ataque de força bruta de certas cifras. Uma é a tecnologia de [[unidade de processamento gráfico]][3] (GPU), a outra é [[Field-programmable gate array|Arranjo de Portas Programável em Campo]] (do inglês, field-programmable gate array, sigla: FPGA). Os benefícios da GPUs são sua larga disponbilidade e bom custo-benefício, já as FPGAs são boas em economizar energia por operação criptográfica. Ambas as tecnologias tentam transportar os benefícios do processamento paralelo para os ataques de força bruta. No caso das GPUs são alguns centenas de processadores, no caso da FPGA são alguns milhares de unidades de processamento tornando-os muito mais adequados a quebra de senhas que os processadores convencionais. Várias publicações no campo da análise criptográfica tem provado que a eficiência energética atual da tecnologia FPGA, como por exemplo, o computador [http://www.sciengines.com/copacobana/ COPACABANA] FPGA Cluster consome a mesma energia que um único PC (600 W), mas tem uma performance de aproximadamente 2.500 PCs para certos algoritmos. Há firmas que provém soluções de análise criptográfica através de placas FPGA PCI Express até computadores FPGA dedicados [carece de fontes]. Encriptações [[WPA]] e [[Wi-Fi Protected Access|WPA2]] também tem tido sucesso na redução do trabalho necessário a ataque de força bruta num fator de 50 em comparação com os CPUs convencionais[4][5] e em algumas centenas no caso das FPGAs.
<span class="cx-segment" data-segmentid="112"></span>
 
[[Advanced Encryption Standard|AES]] permitem o uso de chaves com 256 bits. Quebrar um sistema simétrico de chaves com 256 bits através da força bruta requer <math>2^{128}</math> vezes mais poder computacional que uma chave de 128 bits. 50 supercomputadores que com um bilhão de bilhão (<math>10^{18}</math>) de chaves AES por segundo (se tal dispositivo poder ser feito um dia) demoraria, em teoria, <math>3*10^{51}</math> anos para exaurir o espaço de busca de uma chave com 256 bits.
 
Um pressuposto intrínseco de um ataque de força bruta é que o espaço de busca é completamente usado pelo gerador de chaves, algo que repousa sobre as propriedades do [[Random number generation|gerador de números aleatórios]], que assume-se que não haver defeitos em seu algoritmo ou implementação. Por exemplo, há sistemas que foram originalmente pensados para serem impossíveis de quebrar por força bruta que, ainda sim, foram quebrados. Isto porque verificou-se que o espaço de busca da chave era muito menor do que o que se pensava inicialmente por causa de falta de entropia em seu gerador de números pseudo-aleatórios. Estes incluem a implementação do Netscape da [[SSL ]](que teve uma quebra famosa em 1995 executada por [[Ian Goldberg]] e [[David Wagner]] [6]) e uma edição [[Debian]]/[[Ubuntu ]]<nowiki/> do [[OpenSSL]] foi descoberta falha em 2008[7]. A mesma falta de implementação de entropia levou a quebra do código Enigma[8][9].<span class="cx-segment" data-segmentid="135"></span>
 
== Reciclagem de credencial ==
Reciclagem de credencial refere-se a prática de [[hacking]] de reusar uma combinação de nome de usuário e senhas encontrados em ataques de força bruta anteriores. Uma forma especial de reciclagem de credencias é a passagem de hash (do inglês, pass the hash), em que uma credencial de hash sem sal é roubada, de sessões anteriores ou outros meios, e reutilizada sem a necessidade de iniciar-se um novo ataque de força bruta <span class="cx-segment" data-segmentid="153"></span>.
 
== Códigos inquebráveis ==
 
== Ataque de força bruta reverso ==
<span class="cx-segment" data-segmentid="179"></span>Em um '''ataque de força bruta reverso''', uma única (normalmente comum) senha é tentada com múltiplos nomes de usuários ou arquivos encriptados[13]. O processo pode ser repetido para uma pequena seleção de senhas. Nesta estratégia, o atacante geralmente não tem um alvo em específico. Este ataque pode ser amenizado estabelecendo-se políticas que não proíbam senhas comuns, como por exemplo, obrigar que a senha tenha pelo menos um número e um caractere especial.
 
== Softwares que executam ataques de força bruta ==
* [[Distributed.net]]
* [[Função de derivação de chave]]
[[Função de derivação de chave|<nowiki/> ]]
* [[MD5CRK]]
* [[Metasploit|Metasploit Express]]
* [[Ataque do canal lateral]]
* [[Ataque do canal lateral ]](do inglês, <span class="cx-segment" data-segmentid="242"><span class="cx-segment" data-segmentid="242">side-channel attack</span></span>)<br>
* [[TWINKLE]] and [[TWIRL]]
* [[Unicity distance|distância de unicidade]]
* [[RSA Factoring Challenge]]
 
== NotesLigações externas ==
#* http://www.infosecpro.com/applicationsecurity/a11.htm
# [[Brute-force attack#harv|Paar 2010]], p. 7.
# [[Brute-force attack#CITEREFLandauer1961|Landauer 1961]], p. 183-191.
# [[Brute-force attack#CITEREFGraham2011|Graham 2011]].
# [[Brute-force attack#CITEREFKingsley-Hughes2008|Kingsley-Hughes 2008]].
# [[Brute-force attack#CITEREFKamerling2007|Kamerling 2007]].
# [[Brute-force attack#harv|Viega 2002]], p. 18.
# [[Brute-force attack#CITEREFCERT-2008|CERT-2008]].
# [[Brute-force attack#CITEREFEllis|Ellis]].
# [[Brute-force attack#CITEREFNSA-2009|NSA-2009]].
# [[Brute-force attack#CITEREFReynard1997|Reynard 1997]], p. 86.
# [[Brute-force attack#harv|Burnett 2004]].
# [[Brute-force attack#CITEREFRistic2010|Ristic 2010]], p. 136.
# http://www.infosecpro.com/applicationsecurity/a11.htm
 
== Referências ==
 
== Links externos ==
* [http://www.worldofhacker.com/2013/09/basic-idea-of-creating-password.html Basic idea on How Password Bruteforce Tool is Created]
* [http://www.distributed.net/DES RSA-sponsored DES-III cracking contest]
833 968

edições