Introdução
• Identificação x Autenticação;
• Identificação não requer autenticação;
• Autenticação requer identificação;
• Usar hash para senhas. Ex. SHA-2;
Momento da Autenticação
• O quanto antes;
• Usuário não deve fazer nada sem
autenticação;
• Usuário pode tentar acessar informações
sem passar pelo sistema:
– Ex. acesso direto à base de dados, sem
autenticar no sistema.
Impossibilidade de Fraude
• Administrador não pode saber a senha do
usuário;
• Prevenção de ataque de replay;
– Na rede;
– Utilizar data e hora;
Reautenticação
• Autenticar sempre que o sistema ficar
parado por muito tempo;
• Autenticar sempre que algo crítico for
executado;
• Mensagens de autenticação: cuidado para
não dar pistas nas mensagens;
– Mensagens de erro;
Quando usar autenticação?
• Usuário deve ser responsabilizado por
seus atos;
• As informações dos usuários são
confidenciais;
• Deseja-se mecanismo de controle de
acesso;
ISO 15408
• Identificação do usuário (FIA_UID);
• Autenticação do usuário (FIA_UAU);
• Tratamento de falhas de autenticação
(FIA_AFL);
Auditoria de Identificação
• Mínimo: insucessos na identificação do
usuário;
• Básico: qualquer uso dos mecanismos de
identificação;
Auditoria de Autenticação
• Mínimo:
– Falha na autenticação;
– Fraude nos dados;
– Reutilização de dados;
• Básico:
– Todo uso da autenticação e reautenticação;
– Todas as decisões tomadas;
• Detalhado: tudo que foi feito antes da
autenticação;
Dados para autenticação
•
•
•
•
Identificação;
Dado de autenticação;
Prazo de validade;
Prazo para emitir alerta de alteração de
dados para o usuário;
• Flag de conta bloqueada;
• Data e hora de liberação de bloqueio;
Requisitos de Senha
• Número mínimo de caracteres;
• Letras, números e sinais;
• Não usar dados do usuário;
Auditoria de Definição de Senhas
• Mínimo: rejeição de senhas;
• Básico: rejeição ou aceitação de senhas;
• Detalhado: informação de alterações nas
métricas de geração e verificação;
Autenticação entre sistemas
• As vezes um sistema autenticado chama
outros sistemas;
• O sistema chamado pode confiar na
autenticação do primeiro;
• Uma opção é o primeiro sistema se
autenticar novamente no segundo através
de outra conta pré-definida;
– Ex. sistemas de banco de dados;
Auditoria de Usuário ligado ao
sistemas
• Mínimo: falha na criação de processo com
a informação do usuário;
• Básico: todas as ligações de processos
com o usuário;
• Obs: ligação de processo é o
relacionamento de um sistema com outro
sistema.
Opções de Autenticação
• Autenticação Básica:
– Muito fraca;
– Definida na RFC 2617;
– Usuário e senha em base 64;
Opções de Autenticação
• Autenticação de hash ou de resumo:
– RFC 2617;
– Senha não trafega em texto plano;
– Usa Hash;
– Usado em LDAP; IMAP; POP3 e SMTP;
Opções de Autenticação
• Autenticação Microsoft passport:
– Autenticação centralizada da microsoft;
– Usado pelo hotmail e msn;
– Para desenvolver, usar o Passport Software
Development Kit: www.passport.com;
– ASP.NET suporta o passport;
– IIS 6 também suporta;
Opções de Autenticação
• Autenticação do Windows
– Suporta 2 protocolos: NTLM e Kerberos;
– Suportados pela Security Support Providers
Interface (SSPI);
– Kerberos 5 é definido em RFC 1510;
– Kerberos é considerado mais seguro do que
o NTLM
Opções de Autenticação
• Assinatura Digital:
Atividade
• Desenvolver implementação de
autenticação com hash
– Cadastramento da senha com persistência do
hash
– Comparação do hash na entrada do sistema
Download

2.1-Autenticacao