Posso ver senhas ou hashes de logons com falha em ssh?

5

Existe uma maneira que eu possa capturar as senhas ou hashes sendo usados por um "ataque de dicionário" contra o meu servidor ssh?

Eu gostaria de ver o que eles estão tentando, para poder proteger melhor contra isso.

    
por Brent 09.12.2009 / 19:29

3 respostas

9

Eu acredito que você pode fazer isso com strace contra o daemon ssh. Veja este exemplo / script . Eu acho que isso provavelmente irá diminuir o daemon ssh. Ele mostrará a senha real, não o hash.

O núcleo desse exemplo é (precisa ser a raiz mais provável):

strace -f -etrace=write -s 64 -p $ssh_pid 2>&1

Meu teste com o comando acima, onde $ ssh_pid é o pid de / usr / sbin / sshd:

ssh localhost
kbrandt@localhost's password: 
Permission denied, please try again.
...
pid 14742] write(4, "
strace -f -etrace=write -s 64 -p $ssh_pid 2>&1
ssh localhost
kbrandt@localhost's password: 
Permission denied, please try again.
...
pid 14742] write(4, "%pre%%pre%%pre%foobazes"..., 12) = 12
%pre%foobazes"..., 12) = 12
    
por 09.12.2009 / 19:45
4

Eu não acho que isso seja possível, pelo menos não sem fazer um módulo pam que faz isso para você. Soa bastante antiético também, então pise com cuidado. Pode ser bom para analisar ataques, mas pegue a senha 'incorreta' de um usuário legítimo, e você pode ter escolhido uma senha que ele usa em outro lugar.

    
por 09.12.2009 / 19:33
0

Por definição, um ataque de dicionário usa palavras que são encontradas em um dicionário. Embora possa ser interessante ver quais senhas foram tentadas, é realmente uma perda de tempo devido ao número quase infinito de senhas que não são de dicionário que poderiam ser usadas. Uma maneira melhor de proteger seu servidor contra ataques SSH é ocultar o servidor atrás de uma porta não padrão. Eu uso um número de porta alto acima de 10000 e descubro que tenho poucas tentativas de invasão.

    
por 17.12.2009 / 15:30