Три опасные уязвимости во FreeBSD: nfsclient, OPIE и jail

27 мая 2010 года

Во FreeBSD обнаружены три опасные уязвимости:

  • В коде NFS-клиента обнаружена уязвимость, позволяющая локальному злоумышленнику организовать выполнение кода в контексте ядра и получить привилегии суперпользователя. Для успешной эксплуатации уязвимости в системе должен быть активирован отключенный по умолчанию режим vfs.usermount, позволяющий обычным пользователям выполнять операции по монтированию разделов. Уязвимость вызвана ошибкой в коде проверки длины передаваемых при монтировании параметров. Проблеме подвержены все выпуски FreeBSD начиная с версии 7.2, в качестве временной меры достаточно запретить возможность монтирования непривилегированными пользователями (sysctl vfs.usermount=0).

Разработчики отмечают, что даже после применения устраняющего уязвимость патча функции монтирования непривилегированными пользователями не могут быть отнесены к категории безопасных. Большинство реализаций файловых систем FreeBSD реализованы без оглядки на возможность злонамеренных действий (например, монтирование определенным образом поврежденной ФС). Несмотря на то, что подобные ошибки исправляются при обнаружении, полный аудит безопасности кода файловых систем не проводился.

  • В реализации библиотеки для работы с одноразовыми паролями OPIE обнаружена возможность переполнения буфера, приводящая к записи дополнительного нулевого байта за конец стека. Ошибка позволяет удаленному злоумышленнику инициировать крах серверного процесса сервиса OPIE при включении в системе режима защиты от переполнения стека. Примечательно, что уязвимости подвержены все поддерживающие OPIE-аутентификацию системные сервисы, даже при отключении поддержки OPIE в системе. Например, можно удаленно вызвать крах ftpd. Не исключена, хотя и отнесена к маловероятным, возможность эксплуатации данной проблемы для организации атакующим выполнения своего кода на сервере. Проблеме подвержены все поддерживаемые выпуски FreeBSD (6.x, 7.x, 8.x). В качестве временной меры достаточно недопустить выполнение связанных с libopie.so серверных приложений.
  • В утилите jail, через которую осуществляется запуск процесса в изолированном окружении, не производится по умолчанию смена текущей рабочей директории, что позволяет атакующему получить доступ к файлам вне изолированного окружения, если до момента запуска jail одним из родительских процессов был открыт файловый десктиптор, связанный с данной рабочей директорией. По умолчанию скрипт для инициализации Jail-окружений /etc/rc.d/jail не подвержен данной уязвимости, так как для запуска jail в нем используются опции "-l -U root" подразумевающие выполнение вызова chdir. Но если администратор вручную убрал данные флаги путём использования своего набора параметров jail_*flags в rc.conf, данный скрипт может быть использован для совершения атаки. Проблеме подвержены только выпуски FreeBSD 8.x. В качестве временной меры достаточно при вызове Jail указывать параметры "-l -U root".

Источники править

 
 
Creative Commons
Эта статья содержит материалы из статьи «Три опасные уязвимости во FreeBSD: nfsclient, OPIE и jail», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.