FreeBSD: представлена шифрованная ФС и исправлено три серьезные уязвимости
3 октября 2009 года
Обнаруженная Пшемыславов Фрасунеком ( Przemyslaw Frasunek) в конце августа уязвимость, позволяющая локальному непривилегированному пользователю FreeBSD получить root-привилегий, получила свое подтверждение. Более того, пока разработчики FreeBSD готовили исправления, Пржемыслав нашел еще одну подобную уязвимость в другой подсистеме. В итоге, сегодня опубликованы три уведомления:
- В ветке FreeBSD 6.x найдена уязвимость, позволяющая получить root-привилегии при наличии локального непривилегированного доступа к системе. Уязвимость вызвана проблемой (эффект гонки, "race condition") в коде закрытия pipe и связанна с возможностью обращения к уже освобожденной памяти на многопроцессорных системах в системном вызове kevent.
- Во всех поддерживаемых версиях FreeBSD 6.x и 7.x найдена уязвимость, которая может привести к разыменованию NULL-указателя из-за "race condition" (изменение указателя, после его проверки на NULL, но до передачи управления) в момент взаимодействия между подсистемами devfs и VFS. В итоге непривилегированный локальный пользователь может добиться выполнения кода с повышенными привилегиями;
- Третье уведомление о проблеме безопасности описывает возможность отражения кода злоумышленника на нулевой адрес (мапинг нулевого адреса на пространство пользователя), что позволяет успешно эксплуатировать предыдущие две уязвимости, позволяющие передать управление по NULL-указателю. Для управления мапингом в нулевой адрес добавлена sysctl переменная "security.bsd.map_at_zero".
Кроме того, можно отметить анонс, разработанной Глебом Курцовым (Gleb Kurtsou) в рамках программы Google Summer of Code шифрованной файловой системы pefs, обладающей следующими возможностями (Архивная копия от 5 сентября 2015 на Wayback Machine):
- Работа на уровне ядра, без использования FUSE;
- Случайный для каждого файла вектор инициализации шифрования (tweak-значение);
- Запись метаданных только в зашифрованном имени файла, не меняя содержимого файла;
- Сохранение прежнего размера файла после шифрования;
- Возможность использования произвольного числа ключей;
- Поддержка смешивания зашифрованных разными ключами файлов в одной директории;
- Прозрачный режим выполнения операций (без шифрования, только для чтения, упрощенный доступ к снапшотам ФС);
- Возможность смены ключа для зашифрованного файла;
- Поддержка алгоритмов шифрования: AES и Camellia в CTR-режиме, Salsa20.
В настоящее время система pefs используется на рабочей машине для шифрования почтовых ящиков и протестирована при работе поверх файловых систем ZFS, UFS и tmpfs. Инструкцию по установке pefs можно найти здесь (Архивная копия от 5 сентября 2015 на Wayback Machine). Также доступны результаты (Архивная копия от 5 сентября 2015 на Wayback Machine) измерения производительности, при использовании алгоритмов шифрования salsa20 и aes128 по сравнению с производительностью доступа к незашифрованным данным на ZFS разделе. Разница примерно в два раза, но это в порядке вещей - в Linux система eCryptfs демонстрирует аналогичное замедление.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.