Есть ли способ перехвата паролей или хэшей, используемых при "атаке по словарю" против моего ssh-сервера?
Я хотел бы увидеть, что они пытаются сделать, чтобы лучше от этого защититься.
Я считаю, что вы можете сделать это с помощью strace против демона ssh. Посмотри это пример / скрипт. Я думаю, что это, вероятно, замедлит работу демона ssh. Он покажет фактический пароль, а не хеш.
Суть этого примера (скорее всего, потребуется root):
strace -f -etrace=write -s 64 -p $ssh_pid 2>&1
Мой тест с помощью приведенной выше команды, где $ ssh_pid - это pid / usr / sbin / sshd:
ssh localhost
kbrandt@localhost's password:
Permission denied, please try again.
...
pid 14742] write(4, "\0\0\0\10foobazes"..., 12) = 12
Я не думаю, что это возможно, по крайней мере, без создания pam-модуля, который сделает это за вас. Это тоже звучит довольно неэтично, так что действуйте осторожно. Это может быть хорошо для анализа атак, но если вы прихватите «неправильный» пароль законного пользователя, вы могли бы подобрать пароль, который он использует где-то еще.
По определению, атака по словарю использует слова, найденные в словаре. Хотя может быть интересно посмотреть, какие пароли использовались, на самом деле это пустая трата времени из-за почти бесконечного числа паролей, не относящихся к словарю, которые можно было использовать. Лучший способ защитить ваш сервер от SSH-атак - спрятать сервер за нестандартным портом. Я использую высокий номер порта выше 10000 и обнаружил, что у меня очень мало попыток взлома.