1 - INTRODUÇÃO
Muitas pessoas tem o hábito de criar senhas com palavras, siglas, números, datas ou mesmo uma combinação desses elementos. Sem dúvida é uma técnica excelente para memorização. Nomes e letras iniciais, da mãe, da esposa, do time de futebol, da banda preferida, o nome do ator predileto, aquele filme inesquecível, enfim. Algo que faça sentido apenas para a própria pessoa. As recomendações de criação de senhas fortes, misturando letras maiúsculas com minúsculas, números e caracteres especiais, é comum em muitos sites. Qual o motivo dessa recomendação ? E porque a senha, mesmo sendo forte, ele deve ser trocada e não repetida com certa frequência ? Esse artigo visa responder essa dúvida recorrente a muitos usuários de sistemas de informação que necessitam de senhas de autenticação.
2 – COMO UMA SENHA PODE SER QUEBRADA ?
Diferentes técnicas podem ser usadas para descobrir (quebrar) uma senha. Entre as várias técnicas, uma que sempre se destacou é a utilização de informações que tenham conexões pessoais. [4] Segundo pesquisa realizada por Per Thorsheim, aniversários e nomes de irmãos, filhos, cônjuges, número da casa, pop star favorito são utilizados por 80% das pessoas. Uma outra técnica de quebra de senha muito citada no meio acadêmico é a “Força Bruta”. Essa técnica consiste em verificar todos os possíveis candidatos de uma solução e verificar se cada um satisfaz o problema. Pode ser para resolver uma
problema de física, achar uma rota entre 2 pontos, ou mesmo quebrar uma senha, não importa o problema, a técnica da força bruta é a tentativa de cada combinação possível e o teste da combinação até que a solução seja encontrada. Esse processo utiliza um algoritmo muito simples que sempre encontrará uma solução se ela existir, dependendo apenas do recurso computacional utilizado para determinar o tempo em que a solução será encontrada. Com a hipótese de conseguir uma cópia do artefato (arquivo, banco de dados, etc) onde as senhas estão armazenadas, ainda que criptografadas, o algoritmo de força bruta para quebra da senha, irá tentar fazer a validação de cada uma das possíveis combinações, e aplicar vários mecanismos de criptografia até conseguir encontrar um que coincida com o armazenado na base de dados. Não será feito tentativas de acesso ao sistema em si. Pois isso poderia disparar um mecanismo de segurança, inativar a conta, ou mesmo alertar ao dono da senha, ou o administrador do sistema que N tentativas de acesso a mesma senha foi realizado sem sucesso. Impedindo o sucesso, que só seria possível com milhares, milhões ou até mesmo bilhões de tentativas. Mas com uma cópia da base de dados, o algoritmo poderia fazer os biliões de testes necessários para descobrir a senha.
problema de física, achar uma rota entre 2 pontos, ou mesmo quebrar uma senha, não importa o problema, a técnica da força bruta é a tentativa de cada combinação possível e o teste da combinação até que a solução seja encontrada. Esse processo utiliza um algoritmo muito simples que sempre encontrará uma solução se ela existir, dependendo apenas do recurso computacional utilizado para determinar o tempo em que a solução será encontrada. Com a hipótese de conseguir uma cópia do artefato (arquivo, banco de dados, etc) onde as senhas estão armazenadas, ainda que criptografadas, o algoritmo de força bruta para quebra da senha, irá tentar fazer a validação de cada uma das possíveis combinações, e aplicar vários mecanismos de criptografia até conseguir encontrar um que coincida com o armazenado na base de dados. Não será feito tentativas de acesso ao sistema em si. Pois isso poderia disparar um mecanismo de segurança, inativar a conta, ou mesmo alertar ao dono da senha, ou o administrador do sistema que N tentativas de acesso a mesma senha foi realizado sem sucesso. Impedindo o sucesso, que só seria possível com milhares, milhões ou até mesmo bilhões de tentativas. Mas com uma cópia da base de dados, o algoritmo poderia fazer os biliões de testes necessários para descobrir a senha.
3 – PORQUE MUDAR A SENHA COM FREQUÊNCIA ?
Uma vez que o possível criminoso (pois a quebra de senhas é sim um crime já
previsto em lei [5] ), tenha uma cópia da base de dados, ele irá precisar de um
tempo para descobrir a senha que ele deseja. Com a tabela 1 (abaixo) poderemos ver que esse tempo pode ser relativamente grande. E caso ele consiga, se o dono da senha tiver a política e a disciplina de trocar a senha periodicamente, provavelmente a senha que ele descobriu não é mais atual.
previsto em lei [5] ), tenha uma cópia da base de dados, ele irá precisar de um
tempo para descobrir a senha que ele deseja. Com a tabela 1 (abaixo) poderemos ver que esse tempo pode ser relativamente grande. E caso ele consiga, se o dono da senha tiver a política e a disciplina de trocar a senha periodicamente, provavelmente a senha que ele descobriu não é mais atual.
Ele teria que obter uma nova cópia da base de dados e tentar quebrar a senha
novamente, isso iria necessitar de mais tempo, e o dono da senha durante esse
tempo irá trocar novamente, fazendo com que ele nunca consiga acessar o sistema desejado. Mesmo tendo acesso a base de dados frequentemente e conseguindo via força-bruta a quebra da senha.
A chave da questão é, ter uma frequência de troca de senha que seja menor do que o tempo necessário para a quebra. Se ela for fraca, precisaria ser trocada várias vezes por dia (o que é impraticável). Porém, se for uma senha troca, uma política de troca a cada mês, ou ainda 4 vezes ao ano já seria suficiente para garantir uma maior segurança ao seu dono.
4 - PORQUE A SENHA DEVE SER FORTE ?
A definição de senha fraca e senha forte é bastante simples. Segundo a
Universidade de Boston [6], uma senha é considerada fraca, se ele conter apenas caracteres alfa-numéricos. Tipo SHAKIRA2014, NOMEDOMEUCACHORRO1234.
Essas senhas, são extremamente utilizadas, e por conterem apenas letras e
números, são consideradas fracas. Mesmo que fossem letras e números sem sentido algum, como por exemplo : HZXJEAP43S3ISMA3CHGG1F0, ainda assim é uma senha fraca. Pois o mecanismo de força bruta irá começar com AAAAAAAAAAAAAAAAAA e testar todas as possíveis combinações até ZZZZZZZZZZZZZZZZZZ ou 99999999999999999. Isso é só uma questão de tempo, e a senha será quebrada de qualquer maneira.
Universidade de Boston [6], uma senha é considerada fraca, se ele conter apenas caracteres alfa-numéricos. Tipo SHAKIRA2014, NOMEDOMEUCACHORRO1234.
Essas senhas, são extremamente utilizadas, e por conterem apenas letras e
números, são consideradas fracas. Mesmo que fossem letras e números sem sentido algum, como por exemplo : HZXJEAP43S3ISMA3CHGG1F0, ainda assim é uma senha fraca. Pois o mecanismo de força bruta irá começar com AAAAAAAAAAAAAAAAAA e testar todas as possíveis combinações até ZZZZZZZZZZZZZZZZZZ ou 99999999999999999. Isso é só uma questão de tempo, e a senha será quebrada de qualquer maneira.
E como é uma senha forte ?
A senha considerada forte, tem uma mistura de letras maiúsculas com minúsculas, números e caracteres especiais ( ponto, vírgula, cifrão, arroba, interrogação, etc). Esse tipo de senha gera uma quantidade de combinações imensamente maior do que apenas com letras e números. (como mostrado na tabela 1, abaixo).
A senha sendo forte ela não quebra ?
Sim, uma senha forte quebra. E quebra da mesma maneira que uma senha fraca,
por força bruta. A única diferença é o tempo necessário para quebrar. Se uma senha fraca pode ser quebrada em segundos ou poucas horas, já é o suficiente para o criminoso utilizá-la e conseguir o acesso ao sistema desejado antes que o dono da senha troque de senha.
Já uma senha forte pode demorar muitos anos para ser quebrada, o que irá garantir que ao conseguir a senha, ela já não seja mais válida, pois o dono da senha tem a política de trocar de senha com frequência.
De acordo o site LockDown da Inglaterra [1] , podemos usar uma senha forte que um programa de quebra por força bruta, dependendo do recurso computacional utilizado, irá necessitar de 8 segundos a 9 dias para uma senha de 5 dígitos.6 Se aumentarmos a senha para 8 dígitos, esses tempos irão variar de 83 dias a 20 mil anos.
Nossa recomendação é que para senhas fortes de 8 dígitos, sempre sejam trocadas a cada 3 meses. Para não criar uma “janela” de tempo favorável a um possível ataque.
Sem querer alimentar a paranóia, podemos dizer que um dia, qualquer senha será quebrada rapidamente devido ao “estado-da-arte” dos computadores. Eis alguns itens a considerarmos :
A americana IBM e a japonesa Fujitsu estão travando uma briga para liderar o ranking de supercomputadores. Em 2012 a IBM lançou o Sequoia que passou
o K computer da empresa japonesa e assumiu, na época o ranking do supercomputador mais poderoso do planeta. Os números são assustadores, e apontam para a casa dos 16 petaflops. E fala-se em chegar a casa dos zettaflop.
E em 2013 a China lançou o Tianhe-2 ( Milky Way 2), que chegou a 54 petaflops. [2] Segundo o site HPC Wire [3] , até 2030 teremos supercomputadores operando na casa dos zettaflops, o que nos leva a crer que um dia, uma senha forte de 10 dígitos poderá ser quebrada em segundos. E não teremos mais esse sistema de autenticação por senhas. Haverá de surgir uma nova tecnologia para realizar o processo de autenticação de usuários.
Mas mantendo nossos pés no chão, e focando nos dias atuais, e na realidade
das ruas, onde hackers mal intencionados estão a todo instante tentando invadir sistemas utilizando toda a tecnologia disponível. Precisamos nos precaver com o mínimo de segurança necessário, para não sermos surpreendidos.
5 – SUGESTÕES
A melhor maneira é unir as 2 estratégias : senhas fortes e temporárias. Utilizando como hipótese a utilização de um supercomputador tentando quebrar a senha ( ataque classe F), temos 83 dias como sendo o tempo necessário para a quebra. Se levarmos em consideração a logística que envolve para o criminoso conseguir a cópia dos dados, instalar um ambiente para início da execução do programa de quebra, podemos arredondar esse prazo para 3 meses. Entendendo como sendo um período razoável para a troca sistemática de senhas. Um cuidado adicional, para melhor segurança, é criar senha com 9 caracteres, alguns sites restringem para 8 caracteres, mas sendo possível, a utilização de 9 caracteres elevaria muito o tempo para quebrar a senha, e a troca a cada 3 meses garantirá a não violação da senha.
Mantenha suas senhas com as conexões pessoais, no entanto faça substituições de algumas letras por caracteres especiais como A -> @ , E -> & , S -> $ e além disse, tenha sempre o hábio de inserir um caracter especial entre uma palavra e outra, além de misturar minúsculos com maiúsculos sempre.
Exemplos :
Mantenha suas senhas com as conexões pessoais, no entanto faça substituições de algumas letras por caracteres especiais como A -> @ , E -> & , S -> $ e além disse, tenha sempre o hábio de inserir um caracter especial entre uma palavra e outra, além de misturar minúsculos com maiúsculos sempre.
Exemplos :
A senha : SHAKIRA2014 pode ser $H@KiR@#2014 , a senha MEUCACHORRO
pode virar M3UC@CH0RR0!# , A letra “E” virou 3, e a letra “O” virou 0 (ZERO) , e no final acrescentamos os caracteres ! e # Ou memorize frases fáceis e fixe-se nas primeiras letras de cada palavra, seguindo a substituição das letras e acrescentando caracteres : Exemplo : Segunda é o pior dia da semana -> $3opdd$%! Sugestões da Universidade de Boston [6] : Wooden Gate -> Wdn-G8 So long and thanks for all the fish -> slatfatf 5L@tf@tF
6 – TABELAS
Vamos ver os números dos tempos necessários para a quebra de senhas com
diferentes cenários. Primeiro vamos levar em consideração o recurso computacional a ser utilizado. São definidas 6 classes de ataques para a força-bruta. A mais simples, (Classe A) utilizada um computador PC Pentium 100, realizando a recuperação típica do pacote Office da Microsof, que testa 10 mil senhas por segundo.
A mais sofisticada é a classe F, que é a utilização de um supercomputador conceitual, simulado por vários computadores (FAST PC)
distribuindo o processamento em larga escala. Atingindo a taxa de 1 bilhão de
senhas testadas por segundo .
As classes de ataques consideras em nossa análise são as seguintes :
diferentes cenários. Primeiro vamos levar em consideração o recurso computacional a ser utilizado. São definidas 6 classes de ataques para a força-bruta. A mais simples, (Classe A) utilizada um computador PC Pentium 100, realizando a recuperação típica do pacote Office da Microsof, que testa 10 mil senhas por segundo.
A mais sofisticada é a classe F, que é a utilização de um supercomputador conceitual, simulado por vários computadores (FAST PC)
distribuindo o processamento em larga escala. Atingindo a taxa de 1 bilhão de
senhas testadas por segundo .
As classes de ataques consideras em nossa análise são as seguintes :
Cenário 1 : Vamos considerar uma senha apenas com números de 2 a 8 dígitos.
Cenário 2: Aumentando a quantidade de caracteres possíveis em cada dígito, vamos analisar os tempos de quebra para uma senha apenas com caracteres alfabéticos (maiúsculos ou minúsculos não sendo diferenciados), ou seja, 26 possibilidades em cada dígito.
Cenário 3: Aumentando ainda mais a quantidade de caracteres vamos adicionar
números, e diferenciar “A” de “a”. Temos agora como possibilidades para cada dígito 26 letras maiúsculas + 26 minúsculas + 10 números totalizando 62 alternativas.
números, e diferenciar “A” de “a”. Temos agora como possibilidades para cada dígito 26 letras maiúsculas + 26 minúsculas + 10 números totalizando 62 alternativas.
Cenário 4: Chegamos agora as senhas forte. Além das 62 possibilidades do
exemplo anterior, temos ainda mais 34 caracteres especiais. São eles :
exemplo anterior, temos ainda mais 34 caracteres especiais. São eles :
7 – CONCLUSÃO
Finalmente, podemos considerar que apesar da não garantia que temos de não-
violação, e também, da possibilidade de nos próximos anos a tecnologia permitir que qualquer senha seja quebrada em poucos segundos, ainda assim devemos proteger nossas senhas com o mínimo necessário para evitar que hackers com recursos computacionais modestos consigam acessar sistemas utilizando nossas senhas. Seguir as recomendações do item 5 (Sugestões), já é um passo importante.
violação, e também, da possibilidade de nos próximos anos a tecnologia permitir que qualquer senha seja quebrada em poucos segundos, ainda assim devemos proteger nossas senhas com o mínimo necessário para evitar que hackers com recursos computacionais modestos consigam acessar sistemas utilizando nossas senhas. Seguir as recomendações do item 5 (Sugestões), já é um passo importante.





Sabemos de algumas coisas sobre senhas, mas aqui tem explicações concretas. Vale a pena ler. Ótimo artigo!
ResponderExcluirOs uso de senhas frágeis cresceu muito depois do avanço das redes sociais e tantos serviços online. Sabendo que a informação é algo tão precioso quanto perigoso estar alerta a sua segurança é de fundamental importância. Obrigada pelo seu comentário.
ResponderExcluirNão consigo de jeito nenhum já fiz muitas aí fala que a senha está inválida
ResponderExcluir