Controle de Acesso Kerberos
Considerações iniciais


Um processo de autenticação tem como
objetivo garantir o acesso à uma rede, e seus
serviços, por usuários legítimos, e impedindo
qualquer acesso não autorizado.
Por isso muitos sistemas requerem que o
usuário primeiramente passe por um
processo de autenticação para que esteja
devidamente identificado e habilitado a
utilizar o sistema, antes de permitir o acesso
deste usuário à rede
Introdução

Kerberos é um protocolo de redes desenvolvido
pelo MIT (Massachusetts Institute of Technology)
em meados dos anos 80, que tem por objetivo
prover uma autenticação forte através da utilização
de criptografia simétrica
Introdução




Ao ser construído, foram designados a ele quatro
principais requisitos:
A segurança - Evitando espionagem ou modificação
dos dados
A confiabilidade - Que diz respeito a questão da
mútua autenticação
A escalabilidade - Que refere-se ao fato de que
deve ser um sistema capaz de funcionar tanto com
redes pequenas quanto com redes muito grandes
A transparência - Permitir que as operações
ocorram automaticamente
Funcionamento Básico



O funcionamento básico consiste em
autenticar os usuários para aplicações de
redes, utilizando:
- Um ticket
- Um autenticador
- Um centro de distribuição de chaves
Autenticação através da máquina
cliente
Problemas



- Um usuário pode obter acesso a uma determinada
máquina cliente e fingir ser outro usuário, operando
através daquele cliente
- Um usuário pode alterar o endereço da máquina
cliente na rede, de forma que as mensagens de request
provenientes desta máquina sejam vistas como vindas
de uma outra máquina.
- Um usuário pode obter acesso a um servidor ou
desfazer operações.
Funcionamento


O Kerberos trabalha baseado em Tickets,
que identificam os usuários. Usuários
realizem um cadastro no Authentication
Server (AS), a função deste é fornece o
Ticket Granting Ticket(TGT).
Este ticket deve ter como conteúdo dados
que identifiquem o usuário como uma senha
e uma estampa de tempo, usada para dar
uma proteção contra o roubo e uso posterior
do ticket
Ticket


Os tickets são como credenciais para o
Kerberos. Eles possuem um grupo de
informações eletrônicas que permitem
verificar a identidade do cliente
Esse ticket é criptografado pelo servidor que
o emitiu com a chave do servidor para o qual
ele será enviado
Estrutura de um Ticket
Servidor de Autenticação ( Authentication
Server – AS )

É responsável por receber um pedido de
autenticação de um usuário e verificar se a
identidade deste usuário é autêntica. Sendo
válida esta identidade, o AS fornece um
ticket e uma chave de sessão, que vai
permitir o contato com outro servidor, o TGS.
Servidor de Concessão de Tickets ( Ticket
Granting Server -TGS )

Responsável por fornecer tickets para
serviços específicos requeridos pelo usuário.
O contato com o TGS é feito após a
autenticação pelo AS. O usuário tem seu
ticket avaliado, e uma vez validado pelo
TGS, recebe um novo ticket, agora para
obter algum serviço disponível.
Servidor de Administração (KADM)

Este servidor é o responsável por controlar
as chaves secretas (informações
criptografadas). Antes de realizar o processo
de autenticação, é preciso que o usuário
cadastre seus dados através do KADM, para
que possua um login e uma senha
Centro de distribuição de Chaves (KDC)


É um servidor centralizado também
responsável pela autenticação dos usuários
Ao receber de uma máquina cliente uma
requisição por um ticket, o KDC cria o
chamado Ticket Granting Ticket (TGT), o
criptografa utilizando a senha secreta do
usuário, criando a chamada chave secreta, e
o envia para o cliente que fez a solicitação
Centro de distribuição de Chaves (KDC)

O processo de autenticação inicia-se com um
pedido do cliente a este servidor central, o KDC,
onde estão registradas as chaves secretas dos
usuários. Cada máquina cliente compartilha uma
chave secreta com o KDC, o qual é o responsável
por gerar chaves para serem usadas por um
pequeno período de tempo durante uma
determinada conexão. O KDC, então, gera uma
mensagem incluindo duas componentes:


Uma chave de sessão (session key), a qual é codificada
com uma chave secreta do usuário.
O ticket-granting ticket, (TGT), que inclui uma cópia da
chave de sessão.
Funcionamento
Figura extraída de: www.conectiva.com
Chave Secreta

Uma chave secreta é associada a cada
cliente, com a finalidade de autenticar o
usuário ao Kerberos. É obtida a partir da
senha fornecida pelo cliente no momento de
seu cadastramento, e sua chave secreta fica
armazenada na Base de Dados do Kerberos.
Chave de Sessão

É uma informação encriptada e segura,
gerada pelo Authentication Server, que
permite
identificar
se
quem
está
apresentando o ticket é o mesmo cliente para
quem o ticket foi concedido, e não uma outra
pessoa que possa ter interceptado ticket pelo
caminho
Benefícios da autenticação Kerberos



Autenticação mútua. O cliente pode validar a
identidade da entidade de servidor e o servidor pode
validar o cliente. Com essa documentação, as duas
entidades são denominadas "cliente" e "servidor"
mesmo que seja possível estabelecer conexões
seguras de rede entre servidores.
Permissões de autenticação seguras. São utilizadas
somente permissões criptografadas, e as senhas nunca
são incluídas na permissão.
Autenticação integrada. Uma vez que o usuário faça
logon, ele não precisa efetuar logon novamente para
acessar algum serviço que suporte a autenticação
Kerberos pois a permissão do cliente não expira. Todas
as permissões têm um prazo de validade determinado
pelas diretivas do Kerberos que geram a permissão.
Benefícios da autenticação Kerberos

Múltiplos domínios: pode ser criada uma
estrutura hierarquizada de autenticação, de
forma que usuários de um domínio possam
se autenticar em outro.
Limitações do Protocolo



Único ponto de falha
Praticamente toda a segurança reside no servidor
que guarda a base de dados dos clientes e
servidores. Se este servidor estiver comprometido,
o funcionamento da rede também estará
O Kerberos necessita que os relógios internos dos
clientes estejam sincronizados com o dele, devido o
uso de timestamps para o controle dos tempos de
expiração dos tickets
Referência Bibliografica





http://pt.wikipedia.org/wiki/Kerberos
http://msdn.microsoft.com/ptbr/library/cc280744.aspx
http://www.conectiva.com/doc/livros/online/10
.0/servidor/pt_BR/ch13s04.html
http://www.gta.ufrj.br/grad/04_1/kerberos/ker
beros/funcionamento.html
http://www.gta.ufrj.br/grad/07_1/kerberos/Cha
veSecretaeChavedeSessao.html#Topic13
Download

Kerberos