Π Π΅Π»ΠΈΠ· OpenSSH 9.5

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Ρ€Π΅Π»ΠΈΠ· OpenSSH 9.5, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ сСрвСра для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌ SSH 2.0 ΠΈ SFTP.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ измСнСния:

  • Π’ ssh-keygen ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° гСнСрация ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π½Π° Π±Π°Π·Π΅ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи Ed25519, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ Дэниэлом Π‘Π΅Ρ€Π½ΡˆΡ‚Π΅ΠΉΠ½ΠΎΠΌ ΠΈ стандартизированной Π² RFC 8709. ΠžΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡ΠΈ Ed25519 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ начиная с выпуска OpenSSH 6.5 (2014 Π³ΠΎΠ΄) ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ ΠΈΠ·-Π·Π° своСго нСбольшого Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. ΠŸΡ€ΠΈ этом Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ подписи Ed25519 ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ высоким ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ бСзопасности, Ρ‡Π΅ΠΌ ECDSA ΠΈ DSA, ΠΈ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ создания подписСй. Π‘Ρ‚ΠΎΠΉΠΊΠΎΡΡ‚ΡŒ ΠΊ Π²Π·Π»ΠΎΠΌΡƒ для Ed25519 составляСт порядка 2^128 (Π² срСднСм для Π°Ρ‚Π°ΠΊΠΈ Π½Π° Ed25519 потрСбуСтся ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ 2^140 Π±ΠΈΡ‚ΠΎΠ²Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ), Ρ‡Ρ‚ΠΎ соотвСтствуСт стойкости Ρ‚Π°ΠΊΠΈΡ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΠΊΠ°ΠΊ NIST P-256 ΠΈ RSA с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΊΠ»ΡŽΡ‡Π° Π² 375 Π±Π°ΠΉΡ‚ ΠΈΠ»ΠΈ 128-Π±ΠΈΡ‚Π½ΠΎΠΌΡƒ Π±Π»ΠΎΡ‡Π½ΠΎΠΌΡƒ ΡˆΠΈΡ„Ρ€Ρƒ. Ed25519 Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ с коллизиями Π² Ρ…ΡΡˆΠ°Ρ…, Π½Π΅ чувствитСлСн ΠΊ Π°Ρ‚Π°ΠΊΠ°ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ кэша (cache-timing attacks) ΠΈ Π°Ρ‚Π°ΠΊΠ°ΠΌ ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌ (side-channel attacks).
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ ssh Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π°Ρ‚Π°ΠΊ ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ наТатиями клавиш Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅ для воссоздания Π²Π²ΠΎΠ΄Π°. ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Π°Ρ‚Π°ΠΊΠΈ основаны Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ наТатиями ΠΏΡ€ΠΈ Π½Π°Π±ΠΎΡ€Π΅ тСкста зависят ΠΎΡ‚ располоТСния клавиш Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, рСакция ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ Π±ΡƒΠΊΠ²Ρ‹ «F» быстрСС, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ «Q» ΠΈΠ»ΠΈ «X», Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ для наТатия трСбуСтся мСньшС Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ ΠΏΠ°Π»ΡŒΡ†Π΅Π²). SSH Π±Ρ‹Π» ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌ Π°Ρ‚Π°ΠΊΠ°ΠΌ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ осущСствлял ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΡƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π²Π΅Π΄Ρ‘Π½Π½ΠΎΠΌ символС Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ сразу послС наТатия ΠΊΠ°ΠΆΠ΄ΠΎΠΉ клавиши, соотвСтствСнно, Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΊΠΎΡ€Ρ€Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ наТатиями клавиш.

    Для скрытия особСнностСй ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Π² Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π² ssh Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Π½Π°Π±ΠΎΡ€Π°, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· фиксированныС ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 20 мс). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, для запутывания Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΡ… Π² случайныС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… осущСствляСтся ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Π½Π°ΠΆΠ°Ρ‚ΠΈΠΉ. Для настройки Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π² ssh_config Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ «ObscureKeystrokeTiming».

  • Π’ ssh ΠΈ sshd Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° SSH «[email protected]», Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ сообщСний SSH2_MSG_PING ΠΈ SSH2_MSG_PONG для пСриодичСской ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°Π²Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для Π²Ρ‹ΡˆΠ΅ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌ.
  • Π’ sshd Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ² Sybsystem Ρ‡Π΅Ρ€Π΅Π· Π±Π»ΠΎΠΊΠΈ Match.
  • Π’ sshd Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ Subsystem ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ для ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ совмСстимости с ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΈΠΌΠΈ конфигурациями.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru