Критическая безопасность и исправление уязвимостей
Разработчики из Paragon Software, возглавляемые Константином Комаровым, интегрировали в основное дерево ядра Linux 7.4 значительные обновления для драйвера NTFS3. Главная цель этих изменений — защита системы от поврежденных или специально сфабрикованных (maliciously-crafted) файловых систем NTFS. Исправления базируются на результатах фаззинга (fuzzing) и отчетах Kernel Address Sanitizer (KASAN), что позволяет выявить скрытые уязвимости до их эксплуатации.
Устраненные критические ошибки
Команда разработчиков устранила ряд серьезных проблем, которые могли привести к компрометации данных или стабильности системы. Среди ключевых исправлений:
- Утечка памяти: устранена возможность утечки 64 КБ данных из kernel heap в пользовательское пространство (user-space).
- Неинициализированные данные: исправлена ошибка, при которой сжатые файлы могли возвращать в user-space неинициализированное содержимое кэша страниц.
- Переполнение буфера: устранено переполнение heap (heap overflow).
- Повреждение структуры: исправлена ошибка монтирования, при которой запись выходила за пределы буфера MFT (Master File Table).
Улучшения для WSL3
Параллельно с улучшениями безопасности, драйвер NTFS3 получил новые возможности для интеграции с Windows Subsystem for Linux 3 (WSL3). Добавлена опция монтирования ugm (user/group/mode), которая включена по умолчанию. При использовании флага ugm=0 новые файлы не получают расширенные атрибуты uid/gid/mode, которые Windows не использует, что обеспечивает более чистую совместимость с файловой системой Windows.
Контекст и значимость
Драйвер NTFS3 остается основным открытым решением для чтения и записи NTFS в Linux, особенно после того, как в Linux 7.1 был интегрирован другой современный драйвер NTFS. Обновление в версии 7.4 подчеркивает зрелость NTFS3 как надежного компонента ядра, способного противостоять как случайным повреждениям дисков, так и целенаправленным атакам через файловые системы.
Источник: Phoronix ↗
