След шестмесечна разработка, OpenSSH 9.1, отворената реализация на клиент и сървър за работа по протоколите SSH 2.0 и SFTP, беше публикувана. Изданието е предимно с поправки на грешки, включително корекции на няколко потенциални уязвимости, причинени от проблеми при работа с паметта:
- Однобайтово препълване в кода за обработка на SSH банера в утилитата ssh-keyscan.
- Двоен извик на функцията free() при грешка при изчисляване на хешове за файлове в кода за създаване и проверка на цифрови подписи в утилитата ssh-keygen.
- Двоен извик на функцията free() при обработка на грешки в утилитата ssh-keysign.
Основни промени:
- В ssh и sshd е добавена директива RequiredRSASize, която позволява определяне на минимално допустимия размер на RSA ключовете. В sshd ключовете с по-малък размер ще бъдат игнорирани, а в ssh ще доведат до прекратяване на връзката.
- Преносимата версия на OpenSSH е настроена да използва SSH ключове за удостоверяване на цифрови подписи на комити и тагове в Git.
- Директивите SetEnv в конфигурационните файлове ssh_config и sshd_config сега прилагат стойността от първоначалното упоминание на променливата на средата, ако тя е дефинирана в конфигурацията няколко пъти (преди това се прилагаше последното упоминание).
- При извикване на утилитата ssh-keygen с флага «-A» (генерация на всички поддържани по подразбиране типове хост ключове) е спряна генерацията на DSA ключове, които вече не се използват по подразбиране от години.
- В sftp-server и sftp е реализирано разширението «users-groups-by-id@openssh.com», което дава на клиента възможност да запитва имената на потребителите и групите, съответстващи на зададения набор от цифрови идентификатори (uid и gid). В sftp това разширение е използвано за показване на имената при извеждане на съдържанието на директорията.
- В sftp-server е реализирано разширение «home-directory» за разкриване на пътища ~\/ и ~user\/, алтернативно на предложеното по-рано разширение «expand-path@openssh.com» (разширението «home-directory» е предложено за стандартизиране и вече се поддържа от някои клиенти).
- В ssh-keygen и sshd е добавена възможността за задаване на време в часовата зона UTC при определяне на интервалите на действие на сертификатите и ключовете, в допълнение към системното време.
- В sftp е разрешено задаването на допълнителни аргументи в опцията «-D» (например, «\/usr\/libexec\/sftp-server -el debug3»).
- В ssh-keygen се позволява използването на флага «-U» (използването на ssh-agent) заедно с операциите «-Y sign» за определяне на това, че частните ключове са разположени в ssh-agent.
Източник: opennet.ru
