The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз OpenSSH 7.4

19.12.2016 20:15

Состоялся релиз OpenSSH 7.4, открытой реализации клиента и сервера для работы по протоколам SSH 2.0 и SFTP. В OpenSSH 7.4 удалён код, связанный с использованием SSHv1 на стороне сервера. Поддержка протоколов SSH 1.3 и 1.5 на стороне клиента пока сохранена, но требует сборки со специальной опцией.

В следующем выпуске будет отключена возможность запуска OpenSSH без разделения привилегий и прекращена поддержка версий библиотеки OpenSSL до ветки 1.0.1. В августе 2017 года планируется полностью прекратить поддержку SSHv1 и удалить компоненты с реализаций шифров Blowfish и RC4, а также RIPE-MD160 HMAC, которые в настоящее время по умолчанию отключены в настройках. В будущих выпусках также планируют запретить использование RSA-ключей размером менее 1024 бит.

Устранённые проблемы с безопасностью:

  • Устранена уязвимость, позволяющая осуществить загрузку сторонней разделяемой библиотеки и выполнить код с правами ssh-agent, передав запрос на загрузку модуля PKCS#11 через перенаправленный (forwarded) канал к ssh-agent. Для осуществления атаки злоумышленник должен контролировать перенаправленный сокет на стороне хоста с sshd и иметь возможность записи в ФС на системе, где выполняется ssh-agent (обычно хост с клиентом ssh);
  • При отключении режима разделения привилегий (включен по умолчанию), перенаправленный Unix-сокет создавался процессом sshd под пользователем root, вместо идентификатора текущего пользователя, что создавало возможный вектор для проведения атак. Для защиты введён запрет на использование перенаправления Unix-сокетов (forwarding) при отключенном разделении привилегий;
  • В sshd блокирована теоретическая возможность утечки данных закрытого ключа хоста в дочерние процессы (через realloc) при выполнении операции чтения ключа. Практически для ключей обычного размера утечка не проявляется;
  • В sshd в коде менеджера разделяемой памяти, используемого для обеспечения сжатия на стадии до проведения аутентификации, некоторые оптимизирующие компиляторы отбрасывали проверки выхода за границы буфера. Также выявлено наличие доступа к данному менеджеру разделяемой памяти при отключении функции сжатия, что потенциально позволяет использовать его для развития атаки на привилегированный процесс мониторинга после успешной компрометации непривилегированного процесса, изолированного в sandbox-окружении;
  • Устранены условия для инициирования отказа в обслуживании через исчерпание всей доступной sshd памяти путём отправки множественных сообщений KEXINIT, обработка которых может потребовать до 128 Мб памяти на одно соединение;
  • В sshd добавлены дополнительные проверки диапазонов адресов для директив AllowUser и DenyUsers. Ранее в данных директивах не запрещалось указание диапазонов с некорректной сетевой маской, таких как 127.1.2.3/55, под которые подпадают любые подсети.

Изменения, нарушающие совместимость:

  • Из кода сервера удалена поддержка протокола SSH v.1;
  • По умолчанию в клиенте отключено использование блочного шифра 3des-cbc - на современном этапе развития вычислительных систем 64-разрядные блочные шифры не могут считаться безопасными. Так как 3des-cbc определён в SSH RFC как единственный обязательный к реализации блочный шифр, его отключение может привести к проблемам при подключении к старым устройствам (необходимо будет изменить конфигурацию ssh);
  • Из sshd удалена поддержка сжатия на стадии до прохождения аутентификации (сжатие на начальной стадии отключено по умолчанию более 10 лет). Экономия трафика от сжатия данных, передаваемых до прохождения аутентификации, ничтожна, по сравнению с рисками из-за выполнения дополнительного кода и появления потенциальных векторов для проведения атак. На стороне клиента ssh поддержка сжатия до аутентификации сохранена;
  • В ssh-agent запрещена загрузка модулей PKCS#11, расположение которых не подпадает под белый список путей, заслуживающих доверия;
  • При задании через опцию "command=" принудительно выполняемой команды в сертификате и параметрах авторизированного ключа sshd теперь отвергает сертификат, если заданные команды не идентичны;
  • В sshd прекращена поддержка директивы UseLogin и управления сеансами на базе /bin/login;

Новые возможности:

  • В ssh добавлен режим мультиплексирования прокси ("ssh -O proxy ..."), реализованный по аналогии с подобным режимом в ssh-клиенте PuTTY. Новый режим позволяет мультиплексировать взаимодействие клиента с основным процессом через unix-сокет с использованием основного процесса как прокси для трансляции идентификаторов каналов. Данный режим позволяет применить мультиплексирование в системах без поддержки передачи файловых дескрипторов. Кроме того, воспользовавшись возможностью проброса unix-сокета на другой хост, можно организовать мультиплексирование на разных машинах;
  • В sshd добавлена директива конфигурации DisableForwarding, отключающая все виды проброса трафика (forwarding), в том числе проброс X11, агента, TCP, туннелей и unix-сокетов;
  • В sshd и ssh добавлена поддержка метода обмена ключами "curve25519-sha256", который идентичен уже поддерживаемому методу "curve25519-sha256@libssh.org";
  • В sshd добавлена возможность использования директив ClientAliveInterval и ClientAliveCountMax внутри блоков Match;
  • В sshd добавлена возможность использования escape-последовательностей (%*) в директиве AuthorizedPrincipalsCommand по аналогии с параметрами ключей, поддерживаемыми в AuthorizedKeysCommand;
  • В sftp-server и ssh-agent на платформе macOS добавлен вызов ptrace(PT_DENY_ATTACH, ..), запрещающий использование ptrace;
  • Решены проблемы со сборкой с библиотекой libcrypto, скомпилированной без поддержки RIPEMD160;
  • В contrib добавлено приложение gnome-ssh-askpass3 с поддержкой GTK+3.


  1. Главная ссылка к новости (http://lists.mindrot.org/piper...)
  2. OpenNews: DoS-уязвимость в OpenSSH
  3. OpenNews: Релиз OpenSSH 7.3
  4. OpenNews: Обход защиты OpenSSH, препятствующей определению наличия пользователя
  5. OpenNews: Выпуск OpenSSH 7.2
  6. OpenNews: В OpenSSH устранена критическая уязвимость
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/45719-openssh
Ключевые слова: openssh, ssh
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (24) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 22:47, 19/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В последнее время больше чистят, чем добавляют.
     
     
  • 2.3, Тоётоми Араповы Леди (?), 23:13, 19/12/2016 [^] [^^] [^^^] [ответить]  
  • +20 +/
    И это круто.
     
  • 2.24, Ilya Indigo (ok), 21:44, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну а чего туда ещё добавлять?
    sftp - есть
    compression - есть
    sha512 - есть
    chacha20-poly1305 - есть
    ed25519 - есть
    Чего вам ещё не хватает?
     
     
  • 3.27, Black Roland (ok), 14:39, 21/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Кофе не варит :(
     
  • 3.28, Денис (??), 17:07, 21/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Интеграции mosh?
     

  • 1.2, sabakka (?), 22:54, 19/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    почему blowfish удаляют?
     
     
  • 2.4, Аноним (-), 23:19, 19/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Он же вроде морально устарел, как и DES.
    Ну и есть Twofish
     
     
  • 3.9, assol (?), 00:48, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • –6 +/
    > морально устарел

    сплошные сноудены тут прям. через одного. алгоритм очень даже не плох, не требователен к ресурсам, а те кто имеет возможность его хакнуть... ну ты понЕл

     
     
  • 4.14, Led (ok), 02:22, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > алгоритм очень даже не плох

    Его автор так не считает. Но куда ж ему до тебя - ты же в классе хорошист!

     
  • 4.25, Аноним (-), 23:23, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > сплошные сноудены тут прям. через одного. алгоритм очень даже не плох,

    Кроме того момента что у него нет никаких выдающихся свойств, а дизайны слизанные с DES нынче не в моде. А хотя-бы из-за возможности тайминг-атак на алгоритм если атакующий может запускать на том же проце свои процессы.

    Потенциально - любой кто имеет аккаунт на шелле может потырить пирватный ключ косвенными методами. Запустив свой процесс на том же проце и проведя серию измерений латенси. Такие алгоритмы имеют разное время работы при разных данных. Что в принципе позволяет реконструкцию ключа косвенными методами: можно прикинуть когда и что делал проц и какими данными он при этом оперировал.

     
  • 2.5, Аноним (-), 23:25, 19/12/2016 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Учитесь читать:

    "на современном этапе развития вычислительных систем 64-разрядные блочные шифры не могут считаться безопасными."

     
     
  • 3.16, Аноним (-), 10:24, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А всегда ли нужно безопасно по самое немогу?
     
     
  • 4.17, Crazy Alex (??), 11:12, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    этож OpenBSD, что с них взять
     
  • 4.26, Аноним (-), 23:23, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > А всегда ли нужно безопасно по самое немогу?

    В интерфейсе ремотного управления - лучше наверное да.

     
  • 2.7, anonymous (??), 00:34, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    С помощью современных вычислительных мощностей уже вполне реально ломать 64-битные шифры брутфорсом.

    Но 3DES брутить дороже, в зависимости от разновидности в нем используется два или три независимых ключа.

     

  • 1.10, Ivan_83 (ok), 01:14, 20/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Тут не написано, интересно пофксили или нет: rekey опция на i386 если поставить больше 24d то ссш переставал пускать, переполнение int там где то секундами внутри.
     
     
  • 2.12, Аноним (-), 01:43, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Тут не написано, интересно пофксили или нет: rekey опция на i386 если
    > поставить больше 24d то ссш переставал пускать, переполнение int там где
    > то секундами внутри.

    Номер багрепорта/ссылка?

     
     
  • 3.18, Ivan_83 (ok), 11:35, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    DB18-6730-4E74, 30 Oct 2016
     
     
  • 4.22, Аноним (-), 14:35, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Это где такой? В OpenSSH Bugzilla идентификаторы другие, и даже гугл эти слова не находит.
     
  • 2.21, Аноним (-), 13:25, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Тут не написано, интересно пофксили или нет: rekey опция на i386 если
    > поставить больше 24d то ссш переставал пускать, переполнение int там где
    > то секундами внутри.

    Кажется, догадываюсь: у вас Linux или другая ОС, где на i386 размер time_t — 32 бита.

     

  • 1.11, Аноним (-), 01:39, 20/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А в чем смысл запрещать проброс трафика, если все равно можно сделать "ssh host nc other-host port"?
     
     
  • 2.13, Аноним (-), 01:44, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А в чем смысл запрещать проброс трафика, если все равно можно сделать
    > "ssh host nc other-host port"?

    Познакомьтесь:
    ForcedCommand в sshd_config
    command="..." в authorized_keys

     
     
  • 3.15, Аноним (-), 02:56, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    ОК, в этом случае есть смысл. Просто сталкивался с ситауцией, когда на сервер есть ssh-доступ в шелл, но админ зачем-то запретил проброс портов (что легко обходится).
     
     
  • 4.23, Аноним (-), 14:36, 20/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > ОК, в этом случае есть смысл. Просто сталкивался с ситауцией, когда на
    > сервер есть ssh-доступ в шелл, но админ зачем-то запретил проброс портов
    > (что легко обходится).

    Люди — идиоты, шо делать.

    Кстати, ещё бывает chroot. ;)

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру