The OpenNET Project / Index page

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

Уязвимость в ядре Linux, позволяющая обойти ограничения режима Lockdown

21.07.2022 10:28

В ядре Linux выявлена уязвимость (CVE-2022-21505), позволяющая легко обойти механизм защиты Lockdown, который ограничивает доступ пользователя root к ядру и блокирует пути обхода UEFI Secure Boot. Для обхода предлагается использовать подсистему ядра IMA (Integrity Measurement Architecture), предназначенную для проверки целостности компонентов операционной системы по цифровым подписям и хэшам.

В режиме lockdown ограничивается доступ к /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, отладочному режиму kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), некоторым интерфейсам ACPI и MSR-регистрам CPU, блокируются вызовы kexec_file и kexec_load, запрещается переход в спящий режим, лимитируется использование DMA для PCI-устройств, запрещается импорт кода ACPI из переменных EFI, не допускаются манипуляции с портами ввода/вывода, в том числе изменение номера прерывания и порта ввода/вывода для последовательного порта.

Суть уязвимости в том, что при использовании загрузочного параметра "ima_appraise=log", допускается вызов kexec для загрузки новой копии ядра, если в системе не активен режим Secure Boot и режим Lockdown используется обособленно от него. IMA не допускает включения режима "ima_appraise" при активном Secure Boot, но не учитывает возможность использования Lockdown отдельно от Secure Boot.

  1. Главная ссылка к новости (https://www.openwall.com/lists...)
  2. OpenNews: Методы отключения защиты Lockdown в Ubuntu для удалённого обхода UEFI Secure Boot
  3. OpenNews: В ядро Linux 5.4 приняты патчи для ограничения доступа root к внутренностям ядра
  4. OpenNews: Релиз ядра Linux 5.4
  5. OpenNews: Уязвимости в GRUB2, позволяющие обойти UEFI Secure Boot
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/57534-lockdown
Ключевые слова: lockdown, linux, kernel
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (72) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, АнонимкаРастуимка (?), 10:33, 21/07/2022 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –20 +/
     

     ....ответы скрыты (8)

  • 1.6, Иноагент (?), 10:54, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Ненавязчивое пропихивание Secure Boot?
     
     
  • 2.43, Аноним (43), 19:32, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ох...я бы с радостью с ним бы работал, если бы была бы его настройка с линуксом более юзерфрендли и если был компании не начудили подписями. Самое грустно, этой проблеме более 5-7 лет и никто ничего с этим не хочет делать
     
     
  • 3.51, Аноним (-), 09:49, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    1 Сабж ортогонален секурбуту как таковой Это режим усиленной безопасности сист... большой текст свёрнут, показать
     
  • 2.50, Аноним (-), 09:39, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Полезность замка зависит от того у кого ключи. Я для себя это использую и вот так это секурити фича. Зарубающая некоторые направления взлома системы для того кто не owner. Пруфом owner'ства является ключ подписи модулей ядра и т.п.. - им же по моему и образ ядра для kexec можно подписать.

    Без этого защита с подписями модулей и проч - немного декоративная: даже если root не может грузить подписаные модули, он может полностью перехватить систему через /dev/mem например, напрямую порулив железом или что-нибудь пропатчив. Или допустим сделав kexec на свое ядро, которое мы приперли и которое никаких подписей вообще не хочет.

    Может ли корпорас использовать фичу для того чтобы вас выпереть из НеВашей системы? О, разумеется. И тут вопрос за кого вас держат в том или ином случае.

     
     
  • 3.61, Аноним (-), 11:29, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты еще расскажи, как подписываешь на изолированном от внешнего мира компьютере в подземном бункере.

    А на деле окажется, что подкроватный локалхост - неуловимый джо, который никому не нужен.

     
     
  • 4.62, Аноним (-), 11:43, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Ты еще расскажи, как подписываешь на изолированном от внешнего мира компьютере в
    > подземном бункере.

    Как говорил заяц волку в анекдот - "а кайф - в том чтобы яйца вовремя с рельсов убрать". Самый кайф это когда некий IO есть а вот возможности получения вреда от него - минимизированы.

    > А на деле окажется, что подкроватный локалхост - неуловимый джо, который никому не нужен.

    Да мало ли что и где окажется. Ты можешь устроить у себя в системах проходной двор, если тебе так больше вштыривает.

     

  • 1.8, Ананоним (?), 11:17, 21/07/2022 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +3 +/
     

     ....ответы скрыты (3)

  • 1.12, microsoft (?), 11:30, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    > механизм защиты Lockdown

    Это не для защиты. Так что не баг а фича, и полезная.

     
  • 1.15, Аноним (14), 12:02, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    вопрос немного не в тему: как собрать ядро минимального размера, с хорошей производительностью? zstd?
     
     
  • 2.16, Аноня (?), 12:23, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Что zstd? Это же метод сжатия, он не влияет.
    Ищи конфиги, где порезано лишнее, zen-kernel например.

    Поддержу вопрос, может эксперты знают. Если что-то стоящее по теме найдёшь, приноси.

     
     
  • 3.18, Аноним (14), 12:29, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    для моего случая:
    + genkernel
      + по идее итак лишнее отсеивается (лишние модули)
    + в настройках включить:
      + оптимизация для размера (-O)
      + сильное сжатие ядра
    + удалить System.map
     
  • 2.20, Аноним (-), 12:35, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > минимального размера

    размер чего? образа на диске/флешке? потребляемой памяти при работе?

    Обычно на настольных компьютерах, размер диска намного больше размера оперативной памяти. Сам можешь оценить смысл такой оптимизации/минимизации.

     
     
  • 3.23, Аноним (14), 12:54, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    в общем да - размер ядра на разделе /boot довольно небольшой (9.2M), большой размер initramfs (208M)
     
     
  • 4.25, Анончик (?), 12:57, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    initramfs - это уже не ядро.
     
  • 4.28, Аноним (-), 13:34, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > initramfs

    В котором glibc, coreuils, bash, lvm, весь набор существующих на свете драйверов, микрокоды ко всем процессорам и устройствам, и остальной ненужный хлам?

    Но это не важно, initramfs выгружается после переключения на rootfs. Но это не точно.

     
  • 4.35, Аноним (35), 14:31, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Откуда столько? У нас на арче с любым ядром и сжатием zstd размер загрузочного образа метров 20. У меня так размер самого раздела /boot всего 200 метров, и это еще с лихвой выделено "про запас".
     
     
  • 5.37, Аноним (14), 16:02, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    gentoo: genkernel, lvm, luks, btrfs
     
  • 3.24, Анончик (?), 12:56, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Размер монолитного образа ядра в оперативной памяти. Вопрос не про смысл, а про баланс.
     
     
  • 4.26, Аноним (-), 13:26, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вопрос в чём? Ну, включил в монолитное ядро драйвер графики, который больше всего остального вместе взятого и в образе, и в памяти, и во время работы. Что оптимизировать, графику отключить?
     
     
  • 5.27, Анончик (?), 13:33, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Сколько занимает драйвер графики в этих 9.2M, если он такой большой? Почему он такой большой? Что кроме графики отключить, чтобы стало меньше?

    Вопрос в том, как собрать ядро минимального размера, с хорошей производительностью.

     
     
  • 6.29, Аноним (-), 13:56, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Оптимизационные задачи поиска (глобального) экстремума можно решать методом градиентного спуска (при определенных условиях).
     
     
  • 7.33, Анончик (?), 14:27, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Жду опыт, а не советы.
     
     
  • 8.45, Аноним (45), 19:44, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Какой опыт, градиентный спуск Примерный план делаешь шаг-действие включаешь о... текст свёрнут, показать
     
  • 6.30, Аноним (30), 13:57, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вы определитесь что нужнее - размер или производительность.
     
     
  • 7.34, Анончик (?), 14:30, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А что, есть опции? Минимизация - значит убрать лишнее, неиспользуемое, ненужное.
     
     
  • 8.42, Michael Shigorin R7 (?), 19:00, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Телепаты в отпуске, а ТЗ не наблюдается Размер и производительность бывают связ... текст свёрнут, показать
     
  • 8.44, Аноним (43), 19:37, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так сначала нужно понять, что Вы считаете лишним Вообще непонятно для чего Вам... текст свёрнут, показать
     
     
  • 9.47, Какаянахренразница (ok), 03:40, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чего непонятно-то Аноним задал простой и естественный вопрос какпройтивбиблиоте... текст свёрнут, показать
     
     
  • 10.48, Анончик (?), 07:13, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот спасибки, ну хоть беседу поддержать и то хорошо ... текст свёрнут, показать
     
  • 3.65, Аноним (65), 12:48, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >Обычно на настольных компьютерах, размер диска намного больше размера оперативной памяти.

    И в эмбедете тоже много памяти? Мой роутер находится в категории 4/32 и его выпилили из openwrt за то что современный линукс слишком жирный что суда влезть!

     
     
  • 4.67, Аноним (-), 17:10, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > И в эмбедете тоже много памяти? Мой роутер находится в категории 4/32
    > и его выпилили из openwrt за то что современный линукс слишком
    > жирный что суда влезть!

    Вообще, 32 мегов RAM нормально. А вот в 4 мега не лезет разжиревшая Люся. Урезанный образ без гуя до сих пор реально сделать, но места там впритык. Если делать нехрен и флешка SPI'ная, ее можно при сильном желании перепаять, 8 пинов не особо утомительно. Параллельную ну нафиг - гиморнее.

     
  • 2.46, fuggy (ok), 03:08, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Использовать ядро версии 2.6
     
  • 2.52, Аноним (-), 10:11, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Использовать мозг Самый очевидный способ отпилить все что лично вам не надо в ... большой текст свёрнут, показать
     
     
  • 3.70, Анончик (?), 13:42, 24/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >более 9000 дров для ненужно

    Списочек можно? Какие дрова типично выкидываются для десктопного применения.

     
     
  • 4.73, Аноним (-), 14:27, 25/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Списочек можно? Какие дрова типично выкидываются для десктопного применения.

    Врядли у вас на десктопе есть что-нибудь с infiniband или иное откровенно датацентровое и энтерпрайзное за много денег. Или вооооон тот сенсор давления на SPI - откуда он в десктопе? Там и SPI скорее всего нет (в планшетных уродцах даже на x86 он таки может быть).

    А так зазырить свои lsmod, builtin модули и dmesg - даст некое понимание чего активно вообще и почему. Вот это придется собирать, иначе работать не будет. Модули файлух тоже лучше все же собрать, невозможность подцепить ту или иную ФС все же обидна. Хотя есть серьезный шанс что NILFS2 вы на жизненном пути не встретите. Как и JFS. И так далее.

     
  • 3.71, Анончик (?), 13:47, 24/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Или для серверов без экзотического железа, некоторой степени выдержки (максимально стандартного железа).
     
  • 2.66, Anybody (??), 14:41, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >как собрать ядро

    Какое ядро? Учебники собирай, мамкин собиратель.

     

  • 1.17, Аноним (17), 12:28, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    > To defeat lockdown, boot without Secure Boot and add ima_appraise=log to the kernel command line

    Ясно.

     
  • 1.22, Alladin (?), 12:45, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Придумали защиту защитную для многих только мешающую.

    А потом хоба защиту ломанули, но никто не заметил ее.. так как мало кто включает:)

     
     
  • 2.54, Аноним (-), 10:17, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > А потом хоба защиту ломанули, но никто не заметил ее.. так как
    > мало кто включает:)

    А все потому что 95% далеко не гроссмейстеры и на их системах творится помойка. Хотя корпы вам фич и без этого на каком-нибудь андроиде включат, потому что если вы не хозяин в системе и так решено - то уж не хозяин.

     

  • 1.36, ИмяХ (?), 15:52, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >>ограничивает доступ пользователя root

    А как этого пользователя зовут? SYSTEM? Или TrustedInstaller?

     
     
  • 2.38, Аноним (38), 16:31, 21/07/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Внезапно, его зовут root...
     
  • 2.58, Аноним (-), 10:59, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > А как этого пользователя зовут? SYSTEM? Или TrustedInstaller?

    Root в классических парадигмах *никс круче чем они оба вместе взятые. Он настолько крут, что, кроме всего прочего, без вон той фичи может спокойно забить на подписи модулей и ядер нехитрыми манипуляциями, если некоторые вещи не заткнуть.

     

  • 1.40, Аноним (40), 16:45, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    И снова чтобы получить рут нужен рут. Обожаю уязвимости в Линуксе.
     
     
  • 2.53, Аноним (53), 10:15, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    У каждой новости есть заказчик.
     
  • 2.57, Аноним (57), 10:53, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > И снова чтобы получить рут нужен рут.

    Идея сабжа в том чтобы на рута все же применялись некоторые ограничения. А CVE в том что на эти ограничения рут как оказалось все же может забить. Хоть это и не было частью плана.


     

  • 1.41, Skullnet (ok), 16:45, 21/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > блокирует пути обхода UEFI Secure Boot

    И так отключен, поэтому пофиг)

     
     
  • 2.55, Аноним (57), 10:51, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > И так отключен, поэтому пофиг)

    Skullnet решил блеснуть системной экспертизой на двоих с переводчиком новости... впрочем от того кто сисчитает иксы чем-то хорошим иного и не ожидалось.

     
     
  • 3.68, Skullnet (ok), 00:41, 23/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Для глупых, secure boot нужен, чтобы зафорсить винду. На этом его полезность заканчивается.
     
     
  • 4.74, Аноним (-), 14:45, 25/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    ORLY А я то им пользуюсь для того чтобы я мог грузить мои системные компоненты,... большой текст свёрнут, показать
     

  • 1.49, Аноним (49), 07:48, 22/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    "уязвимость (CVE-2022-21505), позволяющая легко обойти механизм защиты Lockdown, который ограничивает доступ пользователя root к ядру и блокирует пути обхода UEFI Secure Boot"

    Так это уязвимость дле проталкивателей Secure boot, для нормальных людей - это фича!

     
     
  • 2.56, Аноним (57), 10:52, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Так это уязвимость дле проталкивателей Secure boot, для нормальных людей - это фича!

    Secure boot можно и для себя использовать так то. Вплоть до обладания мастер ключом платформы. Тогда это лишь инструмент безопасности.

     
     
  • 3.59, Мимокрокодилъ (?), 11:04, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Так это уязвимость дле проталкивателей Secure boot, для нормальных людей - это фича!
    > Secure boot можно и для себя использовать так то. Вплоть до обладания
    > мастер ключом платформы. Тогда это лишь инструмент безопасности.

    Можно, но не нужно. Переусложнение системы, где без этого можно обойтись, это верная дорога к дополнительным потенциальным проблемам. Чем сложнее механизм, тем больше "точек отказа".
    А в случае с Secure boot, так это вообще механизм вендорлока by design, поводок ещё не затянули, но он уже наброшен, а скоро и намордник подоспеет.

     
     
  • 4.63, Аноним (-), 11:52, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А с чего вы будете за всех рещать что и кому нужно Я вот фичой пользуюсь Если ... большой текст свёрнут, показать
     
     
  • 5.69, Иван Васильевич (?), 11:38, 23/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> Можно, но не нужно.
    > А с чего вы будете за всех рещать что и кому нужно?
    > Я вот фичой пользуюсь. Если вам не надо - не включайте
    > ее в системе сборки да и делов.

    Вы о чём вообще? Речь про механизм Secure boot на уровне недобиоса, причём тут система сборки?!
    И потом, "а с чего это вы будете решать за всех", нужно ли оно во всём железе, может быть те, кому это надо, будут покупать это опицонально устанавливать в своё железо? Ах уже почти нигде нельзя, потому что почти везде оно есть уже дефолтно, а что так, любители под свою любимую ОС, компания-производитель которой держит за гениталии все эти ключи, имея "одно кольцо, чтобы управлять всеми" может значит решать за всех, так получается?!

    Претензия не к подписям, а к поводку, который by design реализован таким образом, что он для вендорлока, а не для какой-то там "защиты", хотя, если для "защиты", от потенциальных конкурентов, то да.
    C Pluton'ом же тоже будет защита, от ...нежелательного конкурента, но вы продолжайте верить в "галактико опасносте"

     
     
  • 6.75, Аноним (-), 14:58, 25/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Secure Boot можно делать по разному И BIOS ом вон тот бутлоадер может и не явля... большой текст свёрнут, показать
     
  • 3.60, Аноним (-), 11:18, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Вплоть до обладания мастер ключом платформы.

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

    Например, я удалили корневой ключ от ms в secureboot, но он все равно светится в efivars. Что с ним делает чужой блоб?

     
     
  • 4.64, Аноним (-), 11:54, 22/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Ключом-секретом является информация, которая недоступна недоверенному лицу. Блоб - это
    > недоступная тебе информация, это тоже ключ-секрет, которым ты не обладаешь.

    Спасибо Капитан Очевидность.

    > Например, я удалили корневой ключ от ms в secureboot, но он все
    > равно светится в efivars. Что с ним делает чужой блоб?

    Я не знаю о чем вы и как это относится к именно сабжу или тому коменту. У вас какой-то вклин на конкретных взбрыках какого-то UEFI с какими-то мудасофтскими ключами. И все это круто, но не понятно при чем тут я.

     

  • 1.72, pavlinux (ok), 10:57, 25/07/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > ограничивается доступ к /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs,
    > отладочному режиму kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS, некоторым
    > интерфейсам ACPI и MSR-регистрам CPU, блокируются вызовы kexec_file и
    > kexec_load, запрещается переход в спящий режим, лимитируется использование DMA
    > для PCI-устройств, запрещается импорт кода ACPI из переменных EFI, не  
    > допускаются манипуляции с портами ввода/вывода, в том числе изменение
    > номера прерывания и порта ввода/вывода для последовательного порта.

    Вот, бл.., скажите, кто оставляет в ядре всю эту шнягу, на том серваке, где можно ждать атак?    

     
     
  • 2.76, Аноним (-), 15:04, 25/07/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Дистры линукса, лол. Кроме того - ну, э, /dev/mem так то штатная фича линуха. А то что тебе через него можно всю систему развандалить, имея рут, ну... такой вот интерфейс, рут же изначально супербог. Проблема в том что поимение рута в такой парадигме ведет к полному и необратимому взъ#$у системы, к тому же не детектированному так изначально.
     

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



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

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