Segurança · Misto

Senhas, segundo fator e sessões

Em uma linha: Armazene senhas com um algoritmo lento dedicado, habilite o segundo fator e torne possível encerrar sessão em todos os dispositivos.

Armazenamento

Um algoritmo de hash de senha projetado para ser lento e com uso intenso de memória, com um salt por usuário. Nunca criptografia reversível e nunca um hash rápido.

Um comprimento mínimo razoável, uma verificação contra listas de senhas vazadas e sem rotação forçada periódica — ela leva a senhas piores.

Um segundo fator

Um app de autenticação ou uma chave de hardware. SMS é melhor do que nada, mas mais fraco. Guarde códigos de recuperação, e planeje um caminho de recuperação que não anule toda a proteção.

Sessões

Um token com expiração, uma opção de revogação no lado do servidor e uma lista de dispositivos conectados que o usuário vê e pode desconectar. Rotacione o identificador de sessão a cada login e a cada mudança de senha.

Indo mais fundo

Limite tentativas por conta e por origem, e adicione um atraso crescente. E alerte o usuário sobre eventos significativos — um login de um novo dispositivo, uma mudança de e-mail, o segundo fator desativado — porque o usuário costuma ser o primeiro a notar uma tomada de conta.