KERBEROS
TRABALHO DE REDES DE COMPUTADORES I AUTORES:
BERNARDO DE CAMPOS VIDAL CAMILO DIEGO XIMENES MENDES
PEDRO PAIVA MIRANDA
ROTEIRO
• Introdução
• Funcionamento
• Implementações
• Utilização
• Limitações
• Aplicações
• Conclusão
• Dúvidas
• Perguntas
INTRODUÇÃO
• Kerberos
• o cão e o protocolo
• Projeto Athena
• o que é?
• cenário
• Possíveis problemas
• um usuário pode fingir ser outro
• um usuário pode alterar o endereço de rede de uma máquina
• eavesdropping
• ataque de negação de serviço
• …
INTRODUÇÃO
• A história em versões
• MIT Kerberos versões de 1 a 3
• MIT Kerberos versão 4
• MIT Kerberos versão 5
• KTH-KRB
• Kerberos Consortium
• missão
• continuar o desenvolvimento
• apoio
• E hoje?
FUNCIONAMENTO
Conceitos Iniciais
• Usuário e cliente
• Serviço e servidor
• Kerberos principal
• Domínio Kerberos
• KDC (Key Distribution Center)
FUNCIONAMENTO
Credenciais do Kerberos versão 4
FUNCIONAMENTO
Obtendo o ticket de concessão de ticket (TGT) – Kerberos 4
Legenda: Cliente envia solicitação do TGT ao AS.
Legenda: AS envia resposta de solicitação do TGT ao cliente.
(1)
(2)
FUNCIONAMENTO
Obtendo tickets dos servidores – Kerberos 4
Legenda: Cliente envia solicitação de ticket ao TGS.
Legenda: TGS envia resposta de solicitação do ticket ao cliente
(3)
(4)
FUNCIONAMENTO
Solicitando um serviço – Kerberos 4
Legenda: Cliente envia solicitação de serviço ao servidor V
Legenda: Servidor V envia resposta ao pedido de autenticação do servidor perante o cliente
(5)
(6)
FUNCIONAMENTO
Solicitando serviço em outro domínio – Kerberos 4
• Um domínio compartilha uma chave diferente com cada domínio existente → n*(n-1)/2 chaves compartilhadas
• Mensagens trocadas:
• (1) Cliente solicita TGT local ao AS local.
• (2) AS local envia TGT local ao cliente.
• (3) Cliente solicita TGT remoto ao TGS local
• (4) TGS local envia TGT remoto ao cliente
FUNCIONAMENTO
Solicitando serviço em outro domínio – Kerberos 4
Legenda: Cliente solicita ticket ao TGS remoto
(5)
(6) TGS remoto envia ticket do servidor remoto ao cliente
(7) Cliente solicita serviço ao servidor remoto
FUNCIONAMENTO
Kerberos versão 5 – comparação com a versão 4
• Endereços de rede
• Algoritmo de criptografia
• Credenciais
Ticket
(Reutilizável)
Autenticador
(Utilizado apenas 1 vez,
Pouco tempo de vida)
FUNCIONAMENTO
• Tempo de vida dos Tickets
• Máximo 1280 min na versão 4, arbitrário na versão 5
• Solicitando serviço em outro domínio
• Possibilidade dos domínios serem estruturados em forma de árvore → n-1 chaves compartilhadas
• Propriedade fundamental: se o domínio B confia no domínio A, e o A confia no domínio C, então
automaticamente B confia em C.
IMPLEMENTAÇÕES
Nome Descrição
MIT Kerberos Implementação original, desenvolvido para o projeto Athena.
Tem 5 versões desenvolvidas, sendo as três primeiras usadas exclusivamente dentro do MIT.
Devido a restrições na exportação (aproximadamente até os anos 2000) da tecnologia de criptografia, outra implementação foi desenvolvida na Suécia: o KTH-KRB.
Atualmente, não existem restrições para sua exportação.
Heimdal Kerberos
Feita basicamente pelo mesmo grupo de desenvolveu o KTH-KRB, ainda em um cenário em que a exportação do MIT Kerberos estava banida.
Baseado na versão 5 do Kerberos.
Compatível com a versão do MIT.
Coexiste com a versão do MIT em grande escala atualmente.
Active Directory Não é uma implementação do Kerberos propriamente dita, é um serviço de diretório criado pela Microsoft utilizado em ambientes Windows.
No entanto, o protocolo Kerberos é um dos fundamentos para a autentição nesse serviço.
TrustBroker É uma implementação comercial do Kerberos, desenvolvido pela CyberSafe.
Suporta vários sistemas operacionais (Windows, Unix, Linux, ...)
Oferece interoperalidade com várias outras implementações, do MIT até o Microsoft Active Directory.
Shishi É a implementação GNU do Kerberos 5.
É considerada uma implementação recente (A versão 0.0.0 foi lançada em 2003).
Nome Descrição
MIT Kerberos Implementação original, desenvolvido para o projeto Athena.
Tem 5 versões desenvolvidas, sendo as três primeiras usadas exclusivamente dentro do MIT.
Devido a restrições na exportação (aproximadamente até os anos 2000) da tecnologia de criptografia, outra implementação foi desenvolvida na Suécia: o KTH-KRB.
Atualmente, não existem restrições para sua exportação.
Heimdal Kerberos
Feita basicamente pelo mesmo grupo de desenvolveu o KTH-KRB, ainda em um cenário em que a exportação do MIT Kerberos estava banida.
Baseado na versão 5 do Kerberos.
Compatível com a versão do MIT.
Coexiste com a versão do MIT em grande escala atualmente.
Active Directory Não é uma implementação do Kerberos propriamente dita, é um serviço de diretório criado pela Microsoft utilizado em ambientes Windows.
No entanto, o protocolo Kerberos é um dos fundamentos para a autentição nesse serviço.
TrustBroker É uma implementação comercial do Kerberos, desenvolvido pela CyberSafe.
Suporta vários sistemas operacionais (Windows, Unix, Linux, ...)
Oferece interoperalidade com várias outras implementações, do MIT até o Microsoft Active Directory.
Shishi É a implementação GNU do Kerberos 5.
É considerada uma implementação recente (A versão 0.0.0 foi lançada em 2003).
IMPLEMENTAÇÕES
Nome Descrição
MIT Kerberos Implementação original, desenvolvido para o projeto Athena.
Tem 5 versões desenvolvidas, sendo as três primeiras usadas exclusivamente dentro do MIT.
Devido a restrições na exportação (aproximadamente até os anos 2000) da tecnologia de criptografia, outra implementação foi desenvolvida na Suécia: o KTH-KRB.
Atualmente, não existem restrições para sua exportação.
Heimdal Kerberos
Feita basicamente pelo mesmo grupo de desenvolveu o KTH-KRB, ainda em um cenário em que a exportação do MIT Kerberos estava banida.
Baseado na versão 5 do Kerberos.
Compatível com a versão do MIT.
Coexiste com a versão do MIT em grande escala atualmente.
Active Directory Não é uma implementação do Kerberos propriamente dita, é um serviço de diretório criado pela Microsoft utilizado em ambientes Windows.
No entanto, o protocolo Kerberos é um dos fundamentos para a autentição nesse serviço.
TrustBroker É uma implementação comercial do Kerberos, desenvolvido pela CyberSafe.
Suporta vários sistemas operacionais (Windows, Unix, Linux, ...)
Oferece interoperalidade com várias outras implementações, do MIT até o Microsoft Active Directory.
Shishi É a implementação GNU do Kerberos 5.
É considerada uma implementação recente (A versão 0.0.0 foi lançada em 2003).