Три опасные уязвимости во 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".
Источники
правитьЛюбой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.