След три месеца разработка релиз , открито реализиране на клиент и сървър за работа с протоколите SSH 2.0 и SFTP.
В новото издание е добавена защита срещу атака на scp, позволяваща на сървъра да предаде различни имена на файлове, различаващи се от поисканите (в отличие от , атаката не позволява смяна на избраната от потребителя директория или glob-маска). Напомняме, че в SCP сървърът взема решение за това, кои файлове и директории да изпрати на клиента, а клиентът само проверява коректността на върнатите имена на обекти. Същността на установената проблема е, че ако системният повик utimes завърши с грешка, съдържанието на файла се интерпретира като метаданни на файла.
Тази особеност при свързване към сървър, контролиран от злонамерен потребител, може да се използва за запазване в файловата система на потребителя на други имена на файлове и различно съдържание при копиране с помощта на scp в конфигурации, водещи до срив при извикването на utimes (например, при забрана на utimes от политиката на SELinux или филтъра на системни повици). Вероятността за провеждане на реални атаки се оценява като минимална, тъй като в типични конфигурации повикването на utimes не завършва със срив. Освен това, атаката не минава незабелязано — при извикване на scp се показва грешка при предаването на данни.
Общи промени:
- В sftp спряна е обработката на аргумента „-1“ по аналогия с ssh и scp, който преди е бил приеман, но игнориран;
- В sshd при използване на IgnoreRhosts сега се предоставят три варианта на избор: „yes“ — игнорирайте rhosts/shosts, „no“ — вземете предвид rhosts/shosts и „shosts-only“ — разрешете „.shosts“, но забранете „.rhosts“;
- В ssh е осигурена обработката на подмяна %TOKEN в настройките LocalFoward и RemoteForward, използвани за пренасочване на Unix-сокети;
- Разрешена е зареждането на публични ключове от незашифрован файл с частен ключ, ако няма отделен файл с публичен ключ;
- При наличие в системата на libcrypto, ssh и sshd сега използват реализирана версия на алгоритъма chacha20 от тази библиотека, вместо вградена преносима реализация, която изостава по производителност;
- Реализирана е възможността за дъмпинг съдържанието на бинарния списък на отзовани сертификати при изпълнение на командата „ssh-keygen -lQf /path“;
- В преносимата версия е реализирано определянето на системи, в които сигналите с опцията SA_RESTART прекъсват работата на select;
- Решени са проблемите със събирането в системи HP/UX и AIX;
- Отстранени са проблемите със съставянето на seccomp sandbox в някои конфигурации на Linux;
- Подобрено е разпознаването на библиотеката libfido2 и са решени проблемите с компилацията с опцията «—with-security-key-builtin».
Разработчиците на OpenSSH отново предупредиха за предстояща трансформация на алгоритми, използващи хешове SHA-1, в категорията на остарелите, поради на ефективността на колизионистките атаки с зададен префикс (цената за генериране на колизия се оценява на около 45 хиляди долара). В един от предстоящите версии планират по подразбиране да се деактивира възможността за използване на алгоритъма за цифрови подписи на публичен ключ „ssh-rsa“, който се споменава в оригиналния RFC за протокола SSH и остава широко разпространен на практика (за проверка на използването на ssh-rsa в своите системи може да се опитате да се свържете по ssh с опцията „-oHostKeyAlgorithms=-ssh-rsa“).
За да се улесни прехода към новите алгоритми в OpenSSH, в едно от следващите издания по подразбиране ще бъде включена настройката UpdateHostKeys, която ще позволи автоматично прехвърляне на клиентите към по-надеждни алгоритми. Сред препоръчваните за миграция алгоритми са споменати rsa-sha2-256/512 на базата на RFC8332 RSA SHA-2 (поддържа се от OpenSSH 7.2 и е по подразбиране), ssh-ed25519 (поддържа се от OpenSSH 6.5) и ecdsa-sha2-nistp256/384/521 на базата на RFC5656 ECDSA (поддържа се от OpenSSH 5.7).
Започвайки от предишната версия, «ssh-rsa» и «diffie-hellman-group14-sha1» са премахнати от списъка CASignatureAlgorithms, определящ алгоритмите, допустими за цифровото подписване на нови сертификати, тъй като употребата на SHA-1 в сертификатите е свързана с допълнителен риск заради факта, че атакуващият има неограничено време за намиране на колизия за съществуващ сертификат, докато времето за атака на хостовите ключове е ограничено от таймаута на свързването (LoginGraceTime).
Източник: opennet.ru
