Por que as tentativas falhas com o uso de chaves ssh não são registradas apenas?

2

Estou executando em um sistema operacional RHEL 6. Eu posso ver falha na tentativa de login (falhas de senha) no meu arquivo /var/log/secure . No entanto, não vejo tentativas de ssh para o servidor quando a chave não está correta. Por exemplo, se eu emitir o pedido ssh:

   ssh -o BatchMode=yes -i ./id_rsa  [email protected]

Volta com:

   Permission denied (publickey,password,keyboard-interactive).

No entanto, essa falha não parece estar registrada em /var/log/secure . Alguma ideia? Eu até tenho LogLevel VERBOSE definido no arquivo sshd_config.

    
por GregH 04.09.2015 / 21:17

2 respostas

3

Você pode ter várias chaves em um agente SSH. Todas essas chaves serão testadas para uma conexão ssh, mesmo que apenas uma seja permitida. Por esse motivo, o cliente ssh não considera uma chave com falha como um problema de autenticação. Somente quando todos os métodos de autenticação falharem, haverá uma falha.

    
por 04.09.2015 / 21:34
3

Como funciona a autenticação de chave pública no openssh?

Para deixar claro o que está acontecendo, a autenticação de chave pública funciona em duas etapas. Um é apenas informativo e o outro verifica todo o par de chaves.

O primeiro passo

é apenas verificar se a chave pública oferecida corresponde a algumas das chaves disponíveis no arquivo authorized_keys dos servidores e não está registrada como um erro no nível de log padrão, porque muitas pessoas apenas armazenam suas chaves no agente ou em algum lugar e as oferecem para todos os servidores. Isso geralmente recai na autenticação de senha. Se você configurar o nível de log VERBOSE, deverá ver também esta mensagem em /var/log/secure (pelo menos com rhel6 openssh package recente).

O segundo passo

verifica a posse da parte privada e faz a criptografia assimétrica real e se esta falhar, deve ser registrada, porque é mais como tentativa de autenticação com falha.

A força bruta é viável?

O ponto de não registrar as tentativas de autenticação de chave pública também é pensar que isso basicamente não pode ser alvo de ataques de bruteforce, já que o espaço de estados é muito grande (ex. chave 1024b) em comparação com senhas, onde você pode tentar todas as senhas de 8 caracteres (em torno de 64b ou no máximo de entropia, mas geralmente muito menos, pois você pode usar muitas heurísticas - vocabulário, somente alfabeto e assim por diante). Nas chaves você tem apenas um grande número.

Existem registros no RHEL!

No RHEL / CentOS / Fedora, você pode usar o avanço de audit , que também contém essas tentativas de autenticação com falha. Você pode encontrá-los em /var/log/audit/audit.log as USER_AUTH events com res=failed

Espero que isso ajude você um pouco.

    
por 05.09.2015 / 08:15