В кодовую базу OpenSSH добавлена встроенная защита от автоматизированных атак по подбору паролей, в ходе которых боты пытаются угадать пароль пользователя, перебирая различные типовые комбинации. Для блокирования подобных атак в файл конфигурации sshd_config добавлен параметр PerSourcePenalties, позволяющий определить порог блокировки, срабатывающий при большом числе неудачных попыток соединений с одного IP-адреса. Новый механизм защиты войдёт в состав следующего выпуска OpenSSH и будет включён по умолчанию в OpenBSD 7.6.
При включении защиты процесс sshd начинает отслеживать статус завершения дочерних процессов, определяя ситуации когда не прошла аутентификация или когда процесс был аварийно завершён из-за сбоя. Большая интенсивность сбоев при аутентификации свидетельствует о попытках подбора паролей, а аварийное завершение может указывать на попытки эксплуатации уязвимостей в sshd.
Через параметр PerSourcePenalties задаётся минимальный порог аномальных событий, после превышения которого IP-адрес, для которого зафиксирована подозрительная активность, будет заблокирован. При помощи параметра PerSourceNetBlockSize дополнительно можно определить маску подсети для блокирования всей подсети, к которой принадлежит проблемный IP.
Для отключения срабатывания блокировки для отдельных подсетей предложен параметр PerSourcePenaltyExemptList, который может оказаться полезным в ситуациях, приводящих к ложным срабатываниям, например, когда к SSH-серверу осуществляются обращения из крупной сети, запросы разных пользователей из которой приходят с одинаковых IP из-за использования транслятора адресов или прокси.