Разработчики расширили возможности для работы с цифровыми ключами и закрыли ряд серьезных уязвимостей.
Разработчики OpenSSH представили очередную версию пакета программ для работы по протоколам SSH 2.0 и SFTP. Релиз устранил серию опасных уязвимостей, позволявших определить приватные ключи и вмешаться в защищенный обмен данными.
Среди таких угроз эксперты выделили баг в коде закрытых XMSS-ключей. Уязвимость, позволявшая злоумышленнику спровоцировать целочисленное переполнение, коснулась компонентов ssh, sshd, ssh-add и ssh-keygen. Разработчики отмечают, что поддержка XMSS-ключей по умолчанию отключена, поскольку на данный момент эта технология находится на стадии тестирования. Поэтому возможность эксплуатации этого бага в реальных условиях маловероятна.
Как ранее обещали разработчики, OpenSSH 8.1 получил защиту от атак по сторонним каналам — к этому классу относятся известные Spectre, Meltdown, RowHammer и RAMBleed. Теперь приватные ключи шифруются при загрузке в память и возвращаются в открытый вид только при использовании. Для защиты используется специальный промежуточный ключ размером около 16 Кб. Злоумышленники могут попытаться восстановить его, однако вероятность успешной атаки в этом случае стремится к нулю из-за частых ошибок.
Среди нововведений OpenSSH 8.1 возможность создавать и верифицировать цифровые подписи. Для этого можно использовать обычные SSH-ключи, которые хранятся на диске или в ssh-agent, а верификация происходит с применением вшитого белого списка. Программа ssh-keygen теперь по умолчанию заверяет сертификаты цифровой подписью на основе алгоритма rsa-sha2-512.
Разработчики также добавили поддержку некоторых новых сочетаний символов, возможность выводить комментарий при извлечении открытых ключей из закрытых и хранить последние на диске в формате PKCS8. Как отмечают эксперты, это поможет повысить совместимость со сторонними приложениями, а сертификат PEM будет по-прежнему использоваться по умолчанию.