Segurança Além de um nome de usuário / senha?

5

Eu tenho um webapp que requer segurança além de um aplicativo da web normal. Quando qualquer usuário visita o nome de domínio, ele é apresentado com dois campos de texto, um campo de nome de usuário e um campo de senha. Se eles inserirem um usuário / passe válido, eles terão acesso ao aplicativo da web. Material padrão.

No entanto, estou procurando segurança adicional além dessa configuração padrão. Idealmente, seria uma solução de software, mas também estou aberto para solução de hardware (hardware = porta-chaves) ou até mesmo alterações de procedimento (uma vez use senhas em um bloco de senhas, por exemplo).

A webapp é única na medida em que conhecemos todos os nossos usuários com antecedência e criamos seu nome de usuário e senha e fornecemos a eles. Nesse sentido, podemos ter certeza de que o nome de usuário e a senha são "strongs".

No entanto, nossos clientes solicitaram segurança adicional além disso. Alguém tem alguma idéia sobre como adicionar outra camada de complexidade à segurança?

    
por bluedevil2k 11.10.2010 / 18:49

7 respostas

10

Com base em Dan, você não terá segurança adicional adicionando complexidade. Você precisa de mais fatores de autenticação. Confira Autenticação de dois fatores para obter uma lista de várias soluções e uma descrição geral sobre a prática. A autenticação é dividida em três categorias principais:

  • Tem algo (keyfob, smartcard, celular)
  • Sabe de alguma coisa (senha, certificado digital (é apenas uma senha muito longa!))
  • Seja alguém (Impressão digital, impressão de retina)

O consenso geral é que você precisa de pelo menos dois dos primeiros para ter segurança confiável. Duplicatas são inúteis (duas senhas não são melhores que uma. Dois controles não são melhores que um). Você pode phishing uma senha, mas um keyfob de rolling-number limita a usabilidade. Você pode derrubar alguém e roubar uma impressão digital (yay hollywood movies), mas você não pode obter sua senha.

Note que os keyfobs não precisam ser outro dispositivo no conjunto de chaves do usuário, simplesmente um dispositivo separado de seu computador, e em algum lugar que sua senha é nunca armazenada. Os smartphones geralmente se encaixam nessa conta e, se você puder desenvolver um aplicativo que seja executado nos smartphones do usuário, talvez seja possível reduzir alguns custos. Depende de quão grande é a implantação que a empresa precisa.

Além disso, para o amor de qualquer divindade que você adore não imponha um tamanho máximo de senha.

    
por 11.10.2010 / 19:09
2

Desde que os telefones celulares são predominantes na maioria dos locais com acesso à Internet nos dias de hoje,
Faz muito sentido ver um mecanismo de autenticação de dois fatores que usará o celular como segundo ponto.

Mesmo Google entrou recentemente nesse círculo .

Há casos em que o telefone não está acessível ou você não deseja que o cliente aguarde o intervalo de tempo da segunda sequência de fatores do dispositivo móvel.
Aqui está um truque que já pode ser patenteado e / ou de uso amplo :-)
Lembro-me de ver em uma apresentação de tecnologia um esquema que usava um código único que era enviado ao cliente com antecedência. Quando usaram o que estava disponível para eles, o novo foi despachado para seus celulares - o anterior expiraria quando esse despacho acontecesse. Foi um esquema muito simples e interessante.

É importante saber que autenticações de dois ou vários fatores não reduzem a importância de uma boa senha que o usuário aprende a proteger melhor.

Como um aparte, eu ouvi falar de pessoas perdendo seus controles de hardware que marcavam as sequências de autenticação de 8 dígitos enquanto deixavam suas senhas agora não tão críticas abertas (ou em suas carteiras). Assim, com o segundo fator, as pessoas podem às vezes sentir falsa segurança no pensamento de que espalharam seus proverbiais ovos em diferentes cestas.

    
por 11.10.2010 / 19:06
1

Além do hardware, a maioria das medidas de segurança adicionais equivale a apenas dizer aos usuários que tenham duas senhas em vez de 1. Contanto que tenham uma senha strong, isso não agrega nenhum valor. Existem outras medidas de segurança específicas para outros fins. Como para o meu banco, eu primeiro digito meu nome de usuário e, em seguida, uma imagem que eu selecione aparece "provando" para mim que estou no site certo. Mas isso é facilmente derrotado com um site ilegítimo que recupera minha foto do site legítimo.

Em última análise, não acho que exista nada que você possa fazer do lado do software para adicionar segurança (além dos procedimentos normais, como nunca armazenar senhas de texto simples, usar https, etc) melhor do que forçar uma senha mais strong.

Dito isto, você pode fazer muito para aumentar a aparência de segurança. Como alguns bancos fazem, faça da sua resposta uma pergunta de segurança e digite sua senha. Há algumas maneiras de adicionar segurança real usando software, como filtragem de IP, mas isso não é prático para a maioria dos aplicativos da Web.

Como você afirmou, existem várias soluções de hardware, como porta-chaves. Se você quiser adicionar uma camada extra de segurança, acredito que esta é sua melhor opção.

    
por 11.10.2010 / 18:58
1

Há também autenticação de dois fatores onde o segundo fator é "tabela TAN" (tabela de números de autenticação de transação). Considere-a como uma variante de baixa tecnologia dos tokens TAN digitais ou uma variante de baixa tecnologia do uso do celular como o segundo fator.

É algo como palavras cruzadas - você combina o código do segundo fator com a combinação de encontrá-lo em uma tabela por números de desafio horizontais e verticais. :-) Um banco croata (Erste & Steiermarkische) usa isso, outros aqui usam autenticação de smartcards e tokens (não como segundo, mas o fator ony).

    
por 11.10.2010 / 21:06
0

Encontrei o PhoneFactor há algum tempo, mas ele só pode ser usado para clientes em um número limitado de países.

    
por 11.10.2010 / 18:55
0

Parece que você tem clientes comerciais que sempre se conectam por trás de uma rede comercial ... uma rede que provavelmente tem um IP estático. Portanto, você também pode limitar as combinações de nome de usuário / senha para funcionar apenas quando for tentado a partir desse endereço IP. Isso não impedirá que alguém dentro da empresa tenha acesso, mas impediria um Joe aleatório na Internet de encontrar uma senha.

Não importa o que você faça, meu conselho habitual para essa situação é não implementá-la por conta própria. Os sistemas de segurança são incrivelmente fáceis de implementar incorretamente , de forma que eles passam todos os seus testes e você nem sabe que algo está errado até seis meses depois de ter sido hackeado. Deixe isso para uma empresa que cria esse tipo de sistema como seu produto principal. Em outras palavras: você está em uma situação de "comprar, não construir".

    
por 11.10.2010 / 20:41
0

Biometria

Exigir que os usuários tenham uma câmera ... e use Orelha Biométrica

    
por 12.10.2010 / 01:32