As regras de expiração de senha reduzem a segurança do sistema?

1

O problema

Eu regularmente tenho um debate com o meu CTO, que geralmente começa algo assim ...

CTO: My password expired, that should never happen. 
Me : It's a security risk to never expire passwords. 
CTO: It's a security risk to force passwords to be reset because users have bad habits. 
Me : Yes but the security is in the user not the system, enforcing password expiry ensures the system is secure in the event of an unknown breach of the userbase.

Isso levanta uma questão interessante de que nenhum de nós, principalmente, não sendo um administrador de sistemas, mas sendo uma posição em que precisamos aplicar uma política para esse efeito, realmente não concorda com qual deve ser a resposta correta.

Minha posição

O sistema é mais seguro se você forçar todos os usuários a alterarem suas senhas no tempo X em que X é calculado determinando a força do algoritmo usada para proteger a senha e um tempo estimado para quebrar (com força bruta) o valor bruto de volta para a senha original.

Permanente do CTO

O ato de forçar os usuários a mudarem suas senhas o tempo todo resulta em padrões / **** 123 "como" padrões ao longo do tempo ou usuários escrevem senhas, significando que o "mau hábito" dos usuários é mais um risco para o sistema do que os dados sendo comprometidos de alguma forma mais técnica (por exemplo, através de força bruta).

Então, eu gostaria de saber

Existe alguma maneira de comprovar se o tempo está bom ou não, devemos aplicar uma política de redefinição de senha com base em algumas práticas recomendadas do setor?

OR

Um de nós está simplesmente errado?

    
por War 14.12.2017 / 13:22

2 respostas

3

O seu CTO tem mais razão, mas é uma questão mais complexa. O NIST ( link ) é provavelmente a referência de "melhores práticas do setor".

Quando se trata de comprimento de senhas, não complexidade ou mudanças freqüentes, é o caminho a percorrer. ( link ) Eles sugerem frases ou frases, em vez de uma única palavra.

Você descreve as senhas de hashing antes de armazená-las, o que é a alternativa logicamente melhor que o texto sem formatação. O problema é que com sistemas multi-gpu, dezenas a centenas de hashes podem ser calculados e verificados por segundo.

Os links abaixo discutem as mudanças. Eu sugiro que você preste atenção especial às senhas salgadas antes que elas sejam criptografadas.

link

link

link

    
por 14.12.2017 / 16:25
0

Sim, aumenta os riscos de segurança se você não forçar a expiração de senhas.

Como seu CTO disse, porque temos maus hábitos, as senhas acabarão vazando de uma forma ou de outra, por exemplo, digite a senha no campo de entrada do usuário, deixe-a descriptografada em algum arquivo de configuração do aplicativo, etc.

Forçar os usuários a alterar senhas reforça a segurança em termos de disponibilidade, uma senha perdida que expira em 15 dias forçará o invasor a tirar vantagem disso nas próximas duas semanas, enquanto uma senha permanente deixará uma porta aberta para perigo externo .

Se você vir isso do ponto de vista do invasor, é bastante desanimador saber que você pode conseguir farejar uma senha depois de várias semanas roubando dados apenas para ver que na metade desse processo todas essas senhas mudaram e você precisa começar acabou.

Às vezes, a melhor maneira de tornar seu sistema mais difícil de decifrar não é torná-lo mais robusto, mas sim evitar todo o dano, permitindo que as pessoas saibam que perderão seu tempo.

Para mim, parece que você tem um CTO preguiçoso que não quer criar novas senhas.

    
por 14.12.2017 / 13:36