kerberos trabalho de redes de computadores i autores: bernardo de campos vidal camilo diego ximenes...

Post on 18-Apr-2015

117 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

KERBEROSTRABALHO 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

FUNCIONAMENTOObtendo 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)

FUNCIONAMENTOObtendo 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)

FUNCIONAMENTOSolicitando 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)

FUNCIONAMENTOSolicitando 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

FUNCIONAMENTOSolicitando 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ÇÕESNome DescriçãoMIT 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çãoMIT 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ÇÕESNome DescriçãoMIT 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).

UTILIZAÇÃO

Para o Cliente:

• Funciona de forma transparente

UTILIZAÇÃO

Para o Administrador:

• Instalar o(s) Key Distribution Center(s) (KDC) e o servidor de administração.

• Propagar a base de dados entre os KDCs escravos• Criar políticas para senhas • Sincronizar relógio dos computadores.• Adicionar, modificar e deletar principals na base de dados• Adicionar as chaves secretas nos servidores de aplicação

LIMITAÇÕES• O usuário tem que confiar no seu computador

• O funcionamento depende da sincronização dos relógios

• A segurança depende da força da senha do usuário

• É necessário que as aplicações sejam compatíveis com Kerberos

APLICAÇÕES• Apache e Apache 2

• Postfix

• Mac OSX

• Microsoft Windows (2000 e posteriores) utiliza como protocolo de autenticação padrão

• OpenSSH (com Kerberos v5 ou posterior)

• Samba

• O suíte de aplicativos Kerberos já vem com os clientes e servidores habilitados para rsh, FTP, e Telnet

CONCLUSÃO• Autenticação robusta em ambientes distribuídos

• Solução de segurança confiável

• Kerberos é maduro• Kerberos atende os requisitos de sistemas distribuídos

modernos• Kerberos é sólido• Kerberos já tem seu espaço

DÚVIDAS?

PERGUNTAS

Por que o relógio dos computadores da rede tem que estar sincronizados?

PERGUNTAS

Por que o relógio dos computadores da rede tem que estar sincronizados?

Porque os tickets e autenticadores do Kerberos tem validade para evitar que tickets roubados sejam usados posteriormente.

PERGUNTAS

Por que o relógio dos computadores da rede tem que estar sincronizados?

Porque os tickets e autenticadores do Kerberos tem validade para evitar que tickets roubados sejam usados posteriormente.

O que é um Domínio?

PERGUNTAS

Por que o relógio dos computadores da rede tem que estar sincronizados?

Porque os tickets e autenticadores do Kerberos tem validade para evitar que tickets roubados sejam usados posteriormente.

O que é um Domínio?

Um conjunto de principals gerenciados que compartilham o mesmo banco de dados Kerberos.

MAIS PERGUNTAS

O que caracteriza o Kerberos como um mecanismo de criptografia de chave simétrica?

MAIS PERGUNTAS

O que caracteriza o Kerberos como um mecanismo de criptografia de chave simétrica?

O fato das chaves serem compartilhadas entre duas ou mais entidades e elas serem usadas pra criptografar e decriptografar uma mensagem.

MAIS PERGUNTAS

O que caracteriza o Kerberos como um mecanismo de criptografia de chave simétrica?

O fato das chaves serem compartilhadas entre duas ou mais entidades e elas serem usadas pra criptografar e decriptografar uma mensagem.

Qual a vantagem e a desvantagem do tempo de validade do TGT ser curto?

MAIS PERGUNTAS

O que caracteriza o Kerberos como um mecanismo de criptografia de chave simétrica?

O fato das chaves serem compartilhadas entre duas ou mais entidades e elas serem usadas pra criptografar e decriptografar uma mensagem.

Qual a vantagem e a desvantagem do tempo de validade do TGT ser curto?

A desvantagem é que o usuário provavelmente vai ter que redigitar sua senha muitas vezes, facilitando que ela seja roubada. A vantagem é que caso ele seja roubado o tempo de ação de alguém mal-intencionado será menor.

E UMA ÚLTIMA PERGUNTA

O fato do funcionamento do Kerberos ser de conhecimento público o torna mais inseguro?

E UMA ÚLTIMA PERGUNTA

O fato do funcionamento do Kerberos ser de conhecimento público o torna mais inseguro?

Não, pois quando se trata de segurança em redes um mecanismo é considerado confiável quando conhecido, usado, estudado amplamente e não é burlado de forma eficaz.

top related