| Дата публикации: | 19.09.2002 |
| Всего просмотров: | 1474 |
| Опасность: | Средняя |
| Наличие исправления: | Да |
| Количество уязвимостей: | 1 |
| CVE ID: | Нет данных |
| Вектор эксплуатации: | Локальная |
| Воздействие: | Повышение привилегий |
| CWE ID: | Нет данных |
| Наличие эксплоита: | Нет данных |
| Уязвимые продукты: | FreeBSD 4.x |
| Описание: | kvm (3) библиотека предоставляет единый интерфейс, для того, чтобы обратиться к виртуальной памяти ядра, включая существующую систему и дамп аварийного отказа. Доступ к системе осуществляется через /dev/mem и /dev/kmem. kvm (3) библиотека обеспечивает однородный интерфейс для того, чтобы обратиться к ядерным виртуальным отображениям памяти, включая оперативные системы и дампы аварийного отказа. Обратитесь к оперативным системам - через/dev/mem и/dev/kmem. Функция kvm_openfiles (3) открывает специальные файлы устройства /dev/mem и /dev/kmem, и возвращает непрозрачный идентификатор (opaque handle), который нужно передать к другим библиотечным функциям. Приложения, которые хотят получить системную информацию, типа использования swap, виртуальной памяти, центрального процессора и т.д, могут использовать библиотеку kvm (3), чтобы читать непосредственно память ядра и собирать эту информацию. Такими приложениями типично должен быть выполнен set-group-ID kmem так, чтобы запрос к kvm_openfiles (3) мог обратиться к /dev/mem и /dev/kmem. Если приложение тогда использует exec (2), чтобы запустить другое приложение, новое приложение унаследует доступ к открытым файловым дескрипторам к/dev/mem и/dev/kmem. Чтобы это не произошло, обычно дескрипторы файлов отмечают как close-on-exec, но так как идентификатор, возвращенный kvm_openfiles (3) непрозрачен, нет никакого прямого пути для приложения, чтобы определить, какие дескрипторы файла были открыты на библиотеку. В результате, вызываемые программы могут получить доступ к этим дескрипторам. Уязвимость обнаружена в FreeBSD 4.2-4.6 |