
Перечисление имен пользователей OpenSSH - CVE-2016-6210
CVE-2016-6210Опубликовано Эдди Харари в Full Disclosure http://seclists.org/fulldisclosure/2016/Jul/51
Отправляя большие пароли, удаленный пользователь может перечислять пользователей в системе, работающей под SSHD. Эта проблема существует в большинстве современных конфигураций из-за того, что для вычисления хеша SHA256/SHA512 требуется гораздо больше времени, чем для хеша BLOWFISH.
Когда SSHD пытается аутентифицировать несуществующего пользователя, он выбирает фиктивную структуру пароля, жестко закодированную в исходном коде SSHD. В этой жестко закодированной структуре пароля хеш пароля основан на алгоритме BLOWFISH ($2). Если пароли реальных пользователей хешируются с помощью SHA256/SHA512, то отправка больших паролей (10КБ) приведет к сокращению времени ответа от сервера для несуществующих пользователей.
ПРИМЕЧАНИЕ: Г-н Харари тестировал это на opensshd-7.2p2, в то время как мои тесты проводились на OpenSSH_6.9p1.
Скрипт в настоящее время основан на диапазоне отклонения 10-30% для времени определения действительных и недействительных имен пользователей. В настоящее время принимаются только >20% как действительные имена пользователей и соответственно добавляются в выходной список (не стесняйтесь настраивать это в скрипте). Это оказалось эффективным для меня.
Перенос этого проекта с Bitbucket на Github.