Π Π΅Π»ΠΈΠ· OpenSSH 8.3 с устранСниСм уязвимости Π² scp

ПослС Ρ‚Ρ€Ρ‘Ρ… мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прСдставлСн Ρ€Π΅Π»ΠΈΠ· OpenSSH 8.3, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ сСрвСра для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌ 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