В Samba устранена одна из самых опасных уязвимостей за всю историю проекта

Представлена внеплановая порция обновлений Samba — 3.6.4, 3.5.14 и 3.4.16, в которых устранена критическая уязвимость (CVE-2012-1182), позволяющая удалённому злоумышленнику выполнить свой код с правами пользователя root. Для успешной эксплуатации уязвимости не требуется прохождение стадии аутентификации, атака может быть осуществлена анонимным не аутентифицированным злоумышленником при наличии доступа к сетевому порту Samba. По оценке разработчиков, выявленная проблема является одной из наиболее серьёзных уязвимостей за всю историю проекта.

Проблеме подвержены все версии Samba с 3.0.x по 3.6.3 включительно. Всем пользователям Samba рекомендуется в экстренном порядке провести обновление до представленных корректирующих выпусков. Для уже не поддерживаемых веток Samba подготовлены патчи. Пакеты с устранением уязвимости пока недоступны, проследить выход обновлений для популярных дистрибутивов можно на данных страницах: FreeBSD, Ubuntu, Gentoo, Slackware, Mandriva, openSUSE, CentOS, Fedora, RHEL и Debian. Кроме патча обходного пути решения проблемы не найдено, можно только закрыть доступ к порту Samba. В качестве крайней меры можно ограничить доступ к порту для доверительных хостов при помощи опции «hosts allow» в smb.conf, но это не поможет от атаки с поддельного IP-адреса.

Уязвимость была выявлена участниками программы Zero Day
Initiative, т.е. не исключено наличие 0-day эксплоита в диком виде. Примечательно, что на исправление ошибки потребовался почти месяц, о проблеме изначально было сообщено ещё 15 марта. Проблема вызвана ошибкой в генераторе кода для механизма RPC (Remote Procedure Call), которая приводит к формированию небезопасного кода, участвующего в осуществлении передаваемых по сети RPC-вызовов. В результате ошибки проверка переменной через которую передаётся размер массива и проверка переменной с запрошенной под этот массив памятью производятся независимо друг от друга. Значение обеих переменных устанавливаются на стороне клиента и полностью контролируются им. Таким образом создаётся возможность передачи массива заведомо большего размера, чем может вместить выделенный под него буфер, что приведёт к наложению «хвоста» массива на другие структуры данных.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.