- O NIST pretende proibir tanto os "requisitos de criação de senhas com diferentes estilos de caracteres" quanto os "requisitos de troca periódica de senha". Isso é considerado uma fraqueza de cibersegurança
Requisitos de senha
- Verificadores e CSPs SHALL exigir que as senhas tenham no mínimo 8 caracteres, sendo recomendável exigir pelo menos 15 caracteres
- Verificadores e CSPs SHOULD permitir um comprimento máximo de senha de pelo menos 64 caracteres
- Verificadores e CSPs SHOULD permitir todos os caracteres ASCII imprimíveis e o caractere de espaço em senhas
- Verificadores e CSPs SHOULD permitir caracteres Unicode em senhas. Ao avaliar o comprimento da senha, cada ponto de código Unicode deve ser contado como um único caractere
- Verificadores e CSPs SHALL NOT impor outras regras de composição para senhas (por exemplo, exigir mistura de diferentes tipos de caracteres)
- Verificadores e CSPs SHALL NOT exigir que os usuários alterem suas senhas periodicamente. No entanto, se houver evidência de comprometimento do autenticador, o verificador SHALL forçar a alteração
- Verificadores e CSPs SHALL NOT permitir que assinantes armazenem dicas que possam ser acessadas por requerentes não autenticados
- Verificadores e CSPs SHALL NOT solicitar aos assinantes o uso de autenticação baseada em conhecimento (KBA) ou perguntas de segurança ao escolher uma senha
- O verificador SHALL validar a senha enviada por completo (ou seja, não deve truncá-la)
Outras menções
- Problema das regras anteriores: antes, havia problemas em que caracteres Unicode não eram armazenados corretamente em certas plataformas. Mas hoje o Unicode oferece mais entropia
- Novo requisito: as novas diretrizes do NIST deverão incluir a exigência de permitir Unicode arbitrário. Isso é essencial para softwares que afirmam oferecer internacionalização (i18n)
- Regras de composição de senha: o NIST mudou sua posição de "não recomendado" para "não permitido". Este é um passo importante para fortalecer a segurança
- Conflito com padrões da indústria: alguns padrões da indústria (por exemplo, PCI, ISO 27001:2022) ainda mantêm exigências que conflitam com o NIST. Isso dificulta que empresas sigam as novas regras do NIST
- Uso de gerenciadores de senhas: gerenciadores de senhas são úteis não só em sites, mas também em diversos sistemas. Também há formas de inserir a senha mestra por meio de tokens de hardware ou autenticação biométrica
- Limite de comprimento da senha: o limite de comprimento existe para evitar o esgotamento de recursos dos sistemas de autenticação. Mas limites muito curtos podem impor restrições graves à segurança
Resumo do GN⁺
- As novas regras de senha do NIST fortalecem a segurança ao remover exigências de segurança antigas, desnecessárias e prejudiciais
- Permitir senhas com Unicode deve ajudar bastante usuários internacionais
- Conflitos com alguns padrões da indústria podem dificultar que empresas adotem as novas regras
- Gerenciadores de senhas são úteis em vários sistemas, e tokens de hardware podem reforçar a segurança
- O limite de comprimento da senha serve para evitar esgotamento de recursos, mas limites muito curtos podem causar problemas de segurança
14 comentários
Lugares com comprimento máximo curto realmente são complicados.
Na verdade, senhas como
joabekban0212341234almocoespecial1pessoaCartaoPorFavormesmo sendo uma combinação de “palavras já existentes”, quando várias são encadeadas, o nível de dificuldade aumenta drasticamente.
Na nossa empresa, as diretrizes também mudaram no começo deste ano, e passou a ser qualquer sequência de 4 ou mais palavras em inglês. Por isso, começo o dia digitando citações famosas toda manhã.
Até a Coupang, que dizem ter uma cultura de desenvolvimento um pouco melhor, limitou silenciosamente o comprimento da senha a 16 caracteres sem qualquer feedback visual. Também não houve e-mail sobre a alteração da senha, e como eu simplesmente não conseguia fazer login sem motivo nenhum, achei que minha conta tinha sido hackeada.
Acho que há várias áreas até mesmo em desenvolvimento. Segurança e acessibilidade parecem ser áreas representativas que acabam não sendo tratadas. Nem que fosse só um pouco do esforço dedicado a dark patterns ...
Agora que conferi, parece que o limite máximo foi ajustado para 20 caracteres. Mas ainda assim, na página de cadastro, o comprimento da senha é limitado sem qualquer aviso ou feedback visual sobre a senha, e na página de login não há restrição nenhuma. Já na página de alteração de senha do app Android, as regras de senha estão especificadas com precisão. Parece que o time de Android e o time de frontend web não estão muito alinhados.
Acho que isso é um caso típico de trabalho em silos
Nada está sendo seguido direito...
Se houver pessoal de UI vendo isto, por favor também acabem com interfaces que obrigam a digitar a senha usando aquele teclado virtual exibido na tela.
No começo isso deve ter surgido para evitar que a senha fosse exposta por keyloggers, mas hoje em dia o risco de a senha vazar por ser filmada pelas câmeras espalhadas por todo lado é muito maior.
É uma UI que sempre me deixa desconcertado quando vejo, então acho estranho que ainda seja mantida.
Suspeito que o motivo de ter sido criada por causa de keyloggers já tenha sido esquecido, e que simplesmente continuem fazendo isso porque todo mundo faz.
É porque é um guia de segurança do governo. Provavelmente não haverá nenhuma empresa querendo incluir teclado virtual.
Em várias certificações e autenticações de padrões também há muitos casos em que o teclado virtual é um requisito obrigatório. Isso tem bem mais exigências detalhadas do que parece, e se você não usar o produto (SDK) de um fornecedor já existente que implementou isso, a avaliação pode levar mais tempo ou até ser rejeitada. A ponto de dar a impressão de que isso não passa de um cartel das empresas de segurança.
Isso é ainda mais frustrante porque não são só órgãos públicos; empresas de base tecnológica como a Naver e a Coupang também fazem isso.
Será que lá eles não estão apenas seguindo isso a contragosto porque o governo manda fazer assim?
Tenho relutância em usar sites cujo limite máximo de senha é curto, algo em torno de 12 caracteres, ou que não permitem símbolos especiais. Isso me parece um dos sinais de que não dão atenção à segurança.
Opiniões do Hacker News
O NIST vem fornecendo diretrizes para flexibilizar as regras de composição de senhas desde 2017
O NIST não define políticas, mas muitas outras políticas fazem referência à NIST 800-63
Era muito irritante, ao se cadastrar em um site, ver regras como "uma boa senha deve usar a, b, c"
O NIST também proíbe "perguntas de segurança" (ex.: "Qual é o sobrenome de solteira da sua mãe?")
O NIST passou décadas fornecendo orientações erradas sobre senhas e só agora mudou para uma solução mais sensata
Parece que a exigência de "verificar a senha enviada inteira" surgiu por causa de problemas com bcrypt
O NIST sugere comprimento máximo de senha de 64 caracteres (muitos sites limitavam a 20, tornando impossível usar frases-senha)
Relato de um usuário:
Há debate sobre se exigir caracteres específicos aumenta ou reduz a entropia
À espera de que o NIST substitua senhas em texto puro por PAKE, e que o W3C crie um mecanismo para isso
Link original: NIST SP 800-63b