Como a pré-autenticação do Kerberos aumenta a segurança?

11

Esta entrada das Perguntas frequentes (e a própria RFC ) afirma que a pré-autenticação elimina uma fraqueza nas implementações iniciais do Kerberos que a tornam vulnerável a ataques de dicionário offline.

O estado da FAQ:

A forma mais simples de pré-autenticação é conhecida como PA-ENC-TIMESTAMP. Este é simplesmente o carimbo de data / hora atual criptografado com a chave do usuário.

Se um invasor conseguir cheirar um pacote contendo esses dados de pré-autenticação, isso também não estará vulnerável a um ataque de dicionário? Eu tenho o texto cifrado, conheço o carimbo de data / hora original - como esse cenário é diferente?

Sedate Alien
fonte
Estou um pouco atrasado para a festa :). Acho que supor que o invasor tenha o carimbo de data e hora original não é verdade nesta questão. Este é um ataque de 'texto cifrado conhecido', não um ataque de 'texto simples conhecido'; caso contrário, seria engraçado. Não podemos supor que o atacante tenha texto simples e cifrado, porque ele também conhece o algoritmo, então qual é o desafio aqui? Ou talvez eu estou faltando alguma coisa aqui ...
Ashkan
Concluindo meu comentário anterior, depois de reconsiderar o assunto, tive a idéia de que, se assumirmos o ataque como ataque de 'texto simples' (o que significa que o invasor sabe o carimbo de data / hora exato), então você está certo, a etapa de pré-autenticação não forneça segurança adicional porque ele pode tentar possíveis senhas escolhidas sem segurança e encontrar a chave, caso contrário, ele faz. Então, eu me pergunto que tipo de ataque seria esse?
Ashkan

Respostas:

16

Quando você não impõe a pré-autenticação, o invasor pode enviar diretamente uma solicitação fictícia para autenticação. O KDC retornará um TGT criptografado e o invasor poderá forçá-lo a ficar offline. Você não verá nada nos logs do KDC, exceto uma única solicitação para um TGT.

Quando você aplica a pré-autenticação do carimbo de data / hora, o invasor não pode solicitar diretamente aos KDCs o material criptografado para reduzir a força offline. O invasor precisa criptografar um carimbo de data / hora com uma senha e oferecê-lo ao KDC. Sim, ele pode fazer isso repetidamente, mas você verá uma entrada de log do KDC toda vez que ele falha na pré-impressão.

Portanto, a pré-autenticação do registro de data e hora impede um invasor ativo. Isso não impede que um invasor passivo cheire a mensagem de data e hora criptografada do cliente para o KDC. Se o atacante puder cheirar esse pacote completo, ele poderá forçá-lo a ficar offline.

As atenuações para esse problema incluem o uso de senhas longas e uma boa política de rotação de senhas para tornar inviável a força bruta offline ou o uso do PKINIT ( http://www.ietf.org/rfc/rfc4556.txt )

anônimo
fonte
+1 Obrigado por apontar a diferença entre atacante ativo e atacante passivo.
precisa
Note, um artigo completo com este detalhe aparece em 2014 aqui: social.technet.microsoft.com/wiki/contents/articles/...
Martin Serrano
5

Encontrei um artigo ( Extraindo senhas Kerberos através da análise de tipo de criptografia RC4-HMAC ) no IEEE Xplore que é um pouco relevante para isso. Eles parecem sugerir que, se um pacote de pré-autenticação for capturado, não será diferente.

Se um invasor conseguir capturar os pacotes de pré-autenticação e desejar levar a identidade de um usuário válido, o invasor precisará executar os procedimentos que o KDC executa. O invasor precisará usar o procedimento de descriptografia no tipo de criptografia acordado e tentar executar senhas diferentes nos dados capturados. Se for bem-sucedido, o invasor possui a senha do usuário.

Sedate Alien
fonte