Було оголошено про випуск нової версії OpenSSH 9.6, яка містить кілька виправлень помилок, а також містить деякі нові функції, кілька покращень продуктивності тощо.
Це повинні знати ті, хто не знає про OpenSSH (Open Secure Shell) це набір програм, що дозволяють зашифровані комунікації через мережу, використовуючи протокол SSH. Він був створений як безкоштовна та відкрита альтернатива програмі Secure Shell, яка є власним програмним забезпеченням.
Основне нове у OpenSSH 9.6
У цій новій версії OpenSSH 9.6, яка представлена, виділяється спрощений ProxyJump, оскільки до ssh було додано заміну «%j», яка розширюється до вказаного імені хоста, а також покращено виявлення нестабільних або непідтримуваних позначок компілятора, як "-fzero-call-used-regs» в дзвін.
Ще одна зміна, яку представляє нова версія, полягає в тому, що У ssh додано підтримку налаштування ChannelTimeout на стороні клієнта, який можна використовувати для завершення неактивних каналів.
Крім того, в OpenSSH 9.6 Запроваджено детальний контроль алгоритмів підпису, оскільки додано розширення протоколу до ssh і sshd для повторного узгодження алгоритмів цифрового підпису для аутентифікації відкритого ключа після отримання імені користувача. Наприклад, використовуючи розширення, ви можете вибірково використовувати інші алгоритми по відношенню до вказаних вами користувачів.
Також підкреслюється, що додано розширення протоколу для ssh-add і ssh-agent для налаштування сертифікатів під час завантаження ключів PKCS#11, lo що дозволяє використовувати сертифікати, пов’язані з приватними ключами PKCS#11, у всіх утилітах OpenSSH, які підтримують ssh-agent, а не лише ssh.
Що стосується виправлень помилок, згадується, що включено такі виправлення:
- Рішення для уразливість у протоколі SSH (CVE-2023-48795, атака Terrapin), що дозволяє атаці MITM повернути з’єднання для використання менш безпечних алгоритмів автентифікації та вимкнути захист від атак із бічних каналів, які відтворюють введення шляхом аналізу затримок між натисканнями клавіш на клавіатурі. Метод атаки описаний в окремій статті.
- Рішення для уразливість в утиліті ssh, яка дозволяє замінювати довільні команди оболонки шляхом маніпулювання значеннями логіна та хоста, які містять спеціальні символи. Цією вразливістю можна скористатися, якщо зловмисник контролює значення логіна та імені хоста, передані в ssh, директиви ProxyCommand і LocalCommand або блоки «match exec», які містять символи підстановки, такі як %u і %h. Наприклад, неправильний логін і хост можуть бути перевизначені в системах, які використовують підмодулі в Git, оскільки Git не забороняє вказувати спеціальні символи в іменах хостів і користувачів. Подібна вразливість також є в libssh.
- Рішення для помилка в ssh-agent, де під час додавання закритих ключів PKCS#11, обмеження застосовувалися лише до першого ключа, повернутого маркером PKCS#11. Проблема не стосується звичайних закритих ключів, маркерів FIDO або необмежених ключів.
З інші зміни, які виділяються цієї нової версії:
- PubkeyAcceptedAlgorithms у блоці «Збіг користувача».
- Щоб обмежити привілеї процесу sshd, версії OpenSolaris, які підтримують інтерфейс getpflags(), використовують PRIV_XPOLICY замість PRIV_LIMIT.
- Додано підтримку читання закритих ключів ED25519 у форматі PEM PKCS8 для ssh, sshd, ssh-add і ssh-keygen (раніше підтримувався лише формат OpenSSH).
В кінці кінців якщо вам цікаво дізнатись більше про це про цю нову версію, ви можете перевірити деталі перейшовши за таким посиланням.
Як встановити OpenSSH 9.6 на Linux?
Для тих, хто зацікавлений у можливості встановити цю нову версію OpenSSH на свої системи, наразі вони можуть це зробити завантаження вихідного коду цього і виконуючи компіляцію на своїх комп’ютерах.
Це пов’язано з тим, що нова версія ще не включена до сховищ основних дистрибутивів Linux. Щоб отримати вихідний код, ви можете зробити це за допомогою наступна посилання.
Закінчило завантаження, тепер ми збираємося розпакувати пакет наступною командою:
tar -xvf openssh-9.6.tar.gz
Вводимо створений каталог:
cd openssh-9.6
Y ми можемо скомпілювати з наступні команди:
./configure --prefix=/opt --sysconfdir=/etc/ssh make make install