В OpenSSH добавлена защита от анализа задержек при вводе на клавиатуре

В кодовую базу OpenSSH приняты изменения, добавляющие в утилиту ssh защиту от атак по сторонним каналам, анализирующим задержки между нажатиями клавиш на клавиатуре для воссоздания ввода. Подобные атаки основаны на том, что задержки между нажатиями при наборе текста зависят от расположения клавиш на клавиатуре (например, реакция при вводе буквы “F” быстрее, чем при вводе “Q” или “X”, так как для нажатия требуется меньше движений пальцев). SSH был подвержен данным атакам так как сразу после нажатия каждой клавиши осуществлял отправку информации о введённом символе в отдельном пакете, соответственно, задержки между отправкой пакетов коррелировали с задержками между нажатиями клавиш.

Для скрытия особенностей интерактивного ввода в трафике в ssh реализована отправка данных не по мере набора, а только через фиксированные промежутки времени (по умолчанию 20 мс). Кроме того, для запутывания атакующих в случайные моменты после отправки реальных данных осуществляется отправка фиктивных нажатий. Для настройки защиты в ssh_config добавлен параметр “ObscureKeystrokeTiming”. Возможность реализована через добавление расширения протокола SSH “[email protected]“, добавляющего новый тип сообщений SSH2_MSG_PING и SSH2_MSG_PONG для периодической отправки пакетов через равные промежутки времени.

Release. Ссылка here.