Модель угроз и особенности оценки уязвимостей в ядре Linux

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 1453
Зарегистрирован: 20.08.2022

#

Модель угроз и особенности оценки уязвимостей в ядре Linux
Дата публикации:Sat, 16 May 2026 18:38:42 +0300

Линус Торвальдс принял в состав ядра документ, регламентирующий процесс обработки ошибок, связанных с безопасностью, определяющий модель угроз, поясняющий, какие ошибки в ядре трактуются как уязвимости, и разбирающий действия с ошибками, выявленными при помощи AI. Документ подготовлен Вилли Тарро (Willy Tarreau), автором HAProxy и давним разработчиком ядра Linux, отвечавшим за сопровождение нескольких стабильных веток ядра. В качестве основы использованы договорённости, достигнутые в ходе обсуждения недавно выявленных критических уязвимостей в ядре (1, 2, 3, 4), раскрытых до публикации исправлений и для которых, благодаря AI, удалось сразу создать рабочие эксплоиты.
Основную массу связанных с безопасностью ошибок предписывается обрабатывать публично, чтобы привлечь максимально широкую аудиторию и найти оптимальное решение. В отдельный приватный список рассылки предлагается отправлять только экстренные сообщения об уязвимостях, легко эксплуатируемых, представляющих угрозу для многих пользователей и позволяющих получить расширенные привилегии или возможности.
Уязвимости, выявленные при помощи AI-ассистентов, всегда предлагается обсуждать публично, так как подобные проблемы часто обнаруживаются одновременно несколькими исследователями. При этом не следует раскрывать в отчёте экплоит - достаточно упомянуть, что он доступен, и передать его в частном порядке в ответ на запрос сопровождающего.
Отдельно описываются правила передачи отчётов, созданных при помощи AI-ассистентов. Подобных отчётов присылают очень много и благодаря им время от времени удаётся выявлять ошибки в плохо отрецензированных частях кода, но сопровождающие часто их игнорируют из-за низкого качества и неточностей. Основные требования к отчётам, созданными при участии AI:
  • Краткость, без воды и с указанием сути и важных деталей в самом начале. Только голый текст без Markdown-тегов и декорирования. Понимание модели угроз и указание проверяемых фактов (например, "ошибка позволяет любому пользователю получить CAP_NET_ADMIN"), а не теоретических измышлений и домыслов о последствиях уязвимости. Перед отправкой отчёта обязательно тщательно протестировать работоспособность эксплоита, сформированного через AI, и убедиться в возможности воспроизвести проблему. Привлечение AI для разработки и тестирования исправления выявленной проблемы.
По статистике сопровождающих, большинство отчётов об ошибках, присылаемых под видом устранения уязвимостей, таковыми не являются, и должны обрабатываться в общем порядке как обычные ошибки. Для разделения уязвимостей и обычных ошибок описана модель угроз ядра Linux. Среди возможностей и гарантий, нарушение которых может рассматриваться как уязвимость:
  • Изоляция на уровне пользователей: доступ к файлам только для владельца, память процесса недоступна другим пользователям, ptrace запрещён для чужих процессов, изоляция IPC и сетевых коммуникаций. Защита на основе capabilities: без CAP_SYS_ADMIN нельзя менять конфигурацию ядра, память, состояние системы, без CAP_NET_ADMIN нельзя менять сетевые настройки или перехватывать трафик, без CAP_SYS_PTRACE нельзя отслеживать процессы других пользователей. Пространство имён идентификаторов пользователей (CONFIG_USER_NS) позволяет непривилегированным пользователям создавать свои изолированные окружения, из которых нельзя влиять на глобальное пространство имён, например, менять время, загружать модули и монтировать блочные устройства. Отладочные интерфейсы (/proc/kmsg, perf, debugfs), через которые можно получить доступ к конфиденциальной информации, доступны только после явного предоставления доступа администратором.
Возможности, которые не рассматриваются как уязвимости:
  • Использование устаревших веток ядра. Сборка с включением опций для разработчиков или снижающих безопасность (например, CONFIG_NOMMU). Выставление небезопасных настроек sysctl, опций командной строки, прав доступа в ФС, capabilities или открытие непривилегированным пользователям доступа к привилегированным интерфейсам (например, доступ на запись в procfs и debugfs). Проблемы в функциях, предназначенных только для разработки и отладки ядра, таких как LOCKDEP, KASAN и FAULT_INJECTION, которые не предназначены для включения в рабочих конфигурациях. Проблемы в драйверах, модулях и подсистемах, находящихся в секции STAGING или помеченных как экспериментальные, небезопасные или неработоспособные. Использование сторонних модулей ядра или неофициальных форков ядра. Требование избыточных привилегий, таких как необходимость выполнения действий с правами root или от пользователя, имеющего права CAP_SYS_ADMIN, CAP_NET_ADMIN, CAP_SYS_RAWIO и CAP_SYS_MODULE. Теоретические атаки, требующие лабораторных условий, миллиардов попыток, эмуляции или модификации оборудования, несоразмерных затрат и нереалистичных конфигураций (например, системы с десятками тысяч ядер CPU). Обход механизмов защиты (например, ASLR) без демонстрации эксплоита. Отсутствие проверок аргументов и возвращаемых кодов ошибок, не имеющих явных последствий. Случайные утечки информации, неподконтрольные атакующим, такие как остаточные данные в сообщениях об ошибках и утечки адресов/указателей на память ядра без прямой возможности эксплуатации. Ошибки при монтировании повреждённых дисковых образов, если драйвер не заявлен как пригодный для использования с не заслуживающими доверия носителями. Проблемы с дисковыми образами, выявляемые и устраняемые через запуск утилиты fsck. Атаки требующие физического доступа к оборудованию, модификации оборудования или подключения аппаратных устройств, таких как платы для атаки на DMA и логические анализаторы, если система специально не настроена для защиты от подобных атак (IOMMU). Регрессии c функциональностью и производительностью, устраняемые настройкой прав и лимитов.
Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=65461

Жизнь за Нер'зула!

Ответить