LINUX.ORG.RU

В libssh исправлена уязвимость, позволяющая обойти аутентификацию

 ,


1

3

Разработчики библиотеки libssh, предназначенной для интеграции поддержки SSH в программы на языке C, сообщили об устранении недоработки в механизме аутентификации.

Сервер успешно авторизовал злоумышленника, если тот вместо ожидаемого сервером сообщения SSH2_MSG_USERAUTH_REQUEST отправлял SSH2_MSG_USERAUTH_SUCCESS. Таким образом, злоумышленник мог полностью обойти этап аутентификации.

Уязвимости (CVE-2018-10933) подвержены все выпуски libssh, начиная с версии 0.6, выпущенной в январе 2014 года.

Проблема исправлена в выпусках 0.8.4 и 0.7.6.

>>> Подробности

anonymous

Проверено: Shaman007 ()

Сервер: Давай, запрашивай авторизацию

Клиент: Знаешь, а я уже успешно авторизовался, ты забыл, наверное

Сервер: Ну ок, заходи, верю на слово

anonymous ()
Ответ на: комментарий от mx__

Не совсем понял а как же пара ( и там и там ) ключей ?

Благородные доны ключи не спрашивают.

By presenting the server an SSH2_MSG_USERAUTH_SUCCESS message
in place of the SSH2_MSG_USERAUTH_REQUEST message which the server would expect
to initiate authentication, the attacker could successfully authentciate
without any credentials.
jollheef ★★★★★ ()
Ответ на: комментарий от snizovtsev

Что интересно, у них на сайте написано что GitHub использует libssh для «power its git SSH infrastructure». Интересно, можно ли было это использовать для доступа к приватным репозиториям / коммита в чужие репозитории?

snizovtsev ★★★ ()

сколько было утверждений о надежности опенсорсного кода

в силу доступности .
сколько было уже вскрыто уязвимостей в том же openssl? да и не только.
вопрос в скорости исправлени конечно важный, но всё же...

lzfour ()

А сколько ещё не вскрыто в проприетарном в силу его недоступности...

Но этот баг просто мегаэпичный, да.

Vsevolod-linuxoid ★★★★★ ()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от snizovtsev

Гитхаб использует кастомную версию (по их словам):

While we use libssh, we can confirm that http://GitHub.com and GitHub Enterprise are unaffected by CVE-2018-10933 due to how we use the library.

We use a custom version of libssh; SSH2_MSG_USERAUTH_SUCCESS with libssh server is not relied upon for pubkey-based auth, which is what we use the library for. Patches have been applied out of an abundance of caution, but GHE was never vulnerable to CVE-2018-10933.

https://twitter.com/GitHubSecurity/status/1052317333379723265

https://twitter.com/GitHubSecurity/status/1052358402842746880

theNamelessOne ★★★★★ ()
Ответ на: комментарий от Twissel
=======================================================================
== Subject:    Authentication bypass in server code
==
== CVE ID#:    CVE-2018-10933
==
== Versions:   All versions of libssh 0.6 and later
==
== Summary:    There is a vulnerability within the server code which
==             can enable a client to bypass the authentication
==             process and set the internal state machine maintained
==             by the library to authenticated, enabling the
==             (otherwise prohibited) creation of channels.
==
=======================================================================

===========
Description
===========

libssh versions 0.6 and above have an authentication bypass vulnerability in
the server code.  By presenting the server an SSH2_MSG_USERAUTH_SUCCESS message
in place of the SSH2_MSG_USERAUTH_REQUEST message which the server would expect
to initiate authentication, the attacker could successfully authentciate
without any credentials.

The bug was discovered by Peter Winter-Smith of NCC Group.

==================
Patch Availability
==================

Patches addressing the issue have been posted to:

    https://www.libssh.org/

libssh version 0.8.4 and libssh 0.7.6 have been released to address this issue.

==========
Workaround
==========

There is no workaround for this issue.

=======
Credits
=======

The bug was discovered by Peter Winter-Smith of NCC Group.

Patches are provided by the Anderson Toshiyuki Sasaki of Red Hat and the libssh
team.

==========================================================
== The libssh team
==========================================================
Vsevolod-linuxoid ★★★★★ ()

Объясните, пожалуйста.

Вот в этой фразе:

Сервер успешно авторизовал злоумышленника...

речь о каком сервере? ssh.com? OpenSSH? Или же сервер, построенный на базе libssh?

Какие шаги необходимо предпринять администраторам серверов OpenSSH, а также всем тем, у кого Git-хостинг поверх OpenSSH?

Как выглядит эксплойт на языке C, дабы пощупать/поиграть? А то tutorial у них на сайте дюже длинный.

Bass ★★ ()
Ответ на: комментарий от Bass

речь о каком сервере? ssh.com? OpenSSH? Или же сервер, построенный на базе libssh?

Речь идёт про серверный код библиотеки libssh.

Какие шаги необходимо предпринять администраторам серверов OpenSSH, а также всем тем, у кого Git-хостинг поверх OpenSSH?

Никакие.

theNamelessOne ★★★★★ ()
Последнее исправление: theNamelessOne (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

нуда опенсорс противопоставляют закрытому как гарантированно исключающиц т.н.

закладки.
так зачем еще и закладки, когда такие дыры?
меня то это мало чешет, что б не сказать совсем не....
но, блин..
вот лет 6-7? была открыта аналогичная дыра в открытом софте, сори за калабур.

lzfour ()

сколько было утверждений о надежности опенсорсного кода в силу доступности . сколько было уже вскрыто уязвимостей в том же openssl? да и не только. вопрос в скорости исправлени конечно важный, но всё же...

Сколько уязвимостей до сих пор не исправлено в закрытом коде?

Black_Shadow ★★★★★ ()
Ответ на: комментарий от anonymous

Секуритификс:

Сервер: Давай, запрашивай авторизацию

Клиент: Знаешь, а я уже успешно авторизовался, ты забыл, наверное

Сервер: точно не обманываешь?

Клиент: Мамой клянус!

Сервер: Ну ок, заходи

bender ★★★★★ ()
Ответ на: комментарий от Vsevolod-linuxoid

А сколько ещё не вскрыто в проприетарном в силу его недоступности...
Но этот баг просто мегаэпичный, да.

Как по мне, четыре года существования такой дырки для миллионов глаз сообщества™ просто овердофига.

h578b1bde ★★ ()
Последнее исправление: h578b1bde (всего исправлений: 1)
Ответ на: комментарий от h578b1bde

Как по мне, четыре года существования такой дырки для миллионов глаз сообщества™ просто овердофига.

Количество глаз растет медленнее, чем количество строк, ничего не поделаешь.

slvrn ★★ ()
Ответ на: комментарий от h578b1bde

Как по мне, четыре года существования такой дырки для миллионов глаз сообщества™ просто овердофига.

Сдаётся мне, «миллионы глаз» сильно переоценены. В реальности, я думаю, едва ли наберётся сотня-другая человек, которые этот код хотя бы попытались прочесть.

anonymous ()

Re: сколько было утверждений о надежности опенсорсного кода

сколько было утверждений о надежности опенсорсного кода

тебя обманули. опенсорсный код вполне может быть ненадёжным. другое дело, что опенсорсный код, в отличие от закрытого, даёт тебе возможность проверить его на надёжность. воспользуешься ты этой возможностью или нет — это уже твоё дело.

anonymous ()
Ответ на: комментарий от anonymous

Анон, спасибо, что уточнил.

Пожалуйста.

Можем ли мы спать спокойно?

Не знаю, кто эти «мы», но качество моего сна не ухудшилось, поскольку я libssh нигде не использую.

Хотя в целом, если перед сном лишний раз задумываться о том, сколько в мире дерьма, типа той же libssh или openssl, то сон уже не тот, конечно.

anonymous ()

4 года вход по «сизам-откройся» это эпик эпиков. Кому не лень скиньте куски кода до и после, поржём вместе как там условное выражение в обход ВСЕГО в том числе даже попыток применить криптографию пускало в себя всех подряд.

linux-org-ru ()
Ответ на: комментарий от linux-org-ru

Надо бы еще список софта, использующего серверную часть libssh. А то может такого софта полторы штуки на задворках репозитория. Я только ssh-клиентов нашел.

devzero ()