The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Предложен killswitch для экстренного отключения уязвимой функциональности в ядре Linux

08.05.2026 21:35 (MSK)

Саша Левин (Sasha Levin) из компании NVIDIA, занимающийся сопровождением LTS-веток ядра Linux и входящий в консультативный совет организации Linux Foundation, подготовил набор патчей с реализацией механизма killswitch для ядра Linux. Предложенная возможность позволяет мгновенно отключить доступ к определённой функциональности работающего ядра. Предполагается, что killswitch будет полезен для временного блокирования уязвимостей на время до установки обновления ядра с исправлением.

Управление killswitch осуществляется через файл "/sys/kernel/security/killswitch/control", позволяющий настроить перехват обращений к функциям ядра по их именам. Например, для блокирования уязвимости Copy Fail достаточно записать в управляющий файл команду "engage af_alg_sendmsg -1" для включения перехвата вызова функции af_alg_sendmsg и вместо её выполнения возвращения кода ошибки "-1".

В качестве имён могут использоваться любые символы, поддерживаемые подсистемой kprobes. Многие из недавно найденных в ядре серьёзных уязвимостей присутствуют в подсистемах, используемых относительной небольшим числом пользователей (например, AF_ALG, ksmbd, nf_tables, vsock, ax25). Для большинства пользователей неудобство из-за прекращения работоспособности отдельных функций не сравнится с риском использования в работе ядра с известной неисправленной уязвимостью на время до установки исправления. Механизм killswitch особо актуален в контексте сегодняшней уязвимости Dirty Frag, эксплоит для которой был опубликован раньше, чем проблема была устранена в ядре.

  1. Главная ссылка к новости (https://lore.kernel.org/all/20...)
  2. OpenNews: Уязвимости Dirty Frag, изменяющие страничный кэш для получения root в любых дистрибутивах Linux
  3. OpenNews: Copy Fail - уязвимость в ядре Linux, позволяющая получить root в большинстве дистрибутивов
  4. OpenNews: Уязвимость в ядре Linux, позволяющая повысить свои привилегии через VSOCK
  5. OpenNews: Выпуск LKRG 1.0.0 для защиты от эксплуатации уязвимостей в ядре Linux
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65407-killswitch
Ключевые слова: killswitch, kernel
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (24) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Colorado_House_of_Representatives (?), 21:48, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Ага, а потом из-за этого возникнет уязвимость в цепочке инструментов, которые полагались на эту функцию ядра.
     
     
  • 2.23, Аноним (-), 00:10, 09/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Я тоже не могу понять, почему не rm -rf /*

    Потом сдаешь инфру ночной смене, приходишь утром, а все уже обновлено, огоньки мигают.

     

  • 1.2, Аноним (2), 21:49, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >engage af_alg_sendmsg -1

    а зачем писать "engage" и "-1"?
    достатачно просто редактировать список подсистем и не надо будет помнить формат записи, который нужен раз в 1000 лет
    А еще эта муть добавит лишние проверки

     
     
  • 2.3, Аноним (3), 21:54, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ну вот иди и скажи им если такой умный
     
     
  • 3.7, Аноним (2), 22:13, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну вот иди и скажи им если такой умный

    не нужно так сильно завидовать

     
  • 2.26, Аноним (26), 00:27, 09/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Код возврата нужен, чтобы наименее инвазивно захукать нужную функцию (не разрушая логику вокруг неё).

    Ключевое слово нужно, чтобы обозначить действие над функцией - заменить, пропустить, перенаправить и т.п.

     

  • 1.4, Аноним (4), 21:55, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >используемых относительной небольшим числом пользователей

    Кто знает редко используемый это символ или нет. Не все же инсайдеры ядра, разбирающиеся в его хитросплетениях. Совет тоже не дашь - ванговать чужую конфигурацию сложно. Зато появляется прямой вектор для захватившего рут.

     
  • 1.5, SubGun (??), 22:07, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ой, сейчас костылей понапридумывают...
     
     
  • 2.16, Аноним (16), 23:07, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это же линукс, там не бывает по-другому.
     

  • 1.6, Аноним (6), 22:07, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    лишние проверки просадят производительность
     
     
  • 2.17, Аноним (17), 23:18, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В зависимости от реализации, проверка может занимать менее 10 тактов процессора.
     

  • 1.8, Аноним (4), 22:14, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Некрасиво хайповать на таких случаях.
     
  • 1.9, Аноним (9), 22:31, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Даешь ядро общего назначения с минимумом модулей
     
     
  • 2.10, Аноним (4), 22:35, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тогда оно не будет "общего назначения".
     

  • 1.11, Мемоним (?), 22:39, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не хватает подписей к фотографиям:
    – А я тебе говорил!
    – Да пофиг, и так схавают.

    https://en.wikipedia.org/wiki/Tanenbaum–Torvalds_debate

     
     
  • 2.12, Colorado_House_of_Representatives (?), 22:43, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Хотите чтобы модули ядра были в user space и в них находили уязвимости как в каком-нибудь pypi пакетах? Разницы между этими ядрами нет по сути. Способы организации кода.
     

  • 1.13, pashev.ru (?), 22:52, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Теоремы Гёделя неумолимы. Сколько там уже в ядре всяких механизмов защиты?
     
     
  • 2.15, Мемоним (?), 22:59, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Теоремы Гёделя неумолимы. Сколько там уже в ядре всяких механизмов защиты?

    Гегеля? Или Гоголя?

     
     
  • 3.18, Хру (?), 23:28, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Гуголя :)
     

  • 1.19, cyberslug (-), 23:29, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Они там уже лет 7 прокрутку в консоли не могут пофиксить, а тут такая оказия свалилась на их светлые головушки.
     
  • 1.20, Аноним83 (?), 23:34, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Забавно, но кажется такой же функционал на FBSD можно реализовать через собственный MAC модуль, без правки ядра и загружать хоть на рабочей системе.
     
  • 1.22, Аноним (22), 00:06, 09/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Для большинства пользователей неудобство из-за прекращения работоспособности отдельных функций не сравнится с риском использования в работе ядра с известной неисправленной уязвимостью на время до установки исправления.
    >Для большинства пользователей неудобство из-за прекращения работоспособности не сравнится с риском

    И что же мне это напоминает, а?

     
  • 1.24, Аноним (24), 00:22, 09/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    О, надо же, этот израильский погромист переизобрёл Патч Бармина.
     
  • 1.25, Аноним (25), 00:27, 09/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я не особо в теме - а что всякие аппарморы, селинуксы да секкомпы не умеют ровно то же самое?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру