The OpenNET Project / Index page

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

23.12.2017 10:23  Критические уязвимости в подсистеме eBPF ядра Linux

В подсистеме eBPF, позволяющей запускать обработчики для трассировки, анализа работы подсистем и управления трафиком, выполняемые внутри ядра в специальной виртуальной машине с JIT, выявлена серия уязвимостей, которые могут быть использованы локальным атакующим для запуска кода с правами ядра через загрузку специально оформленного eBPF-приложения. Выявленные уязвимости проявляются в ядрах Linux 4.9+ и 4.14+, но в общем виде проблемы в eBPF представляют опасность начиная с ядра 4.4, в котором появилась возможность загрузки программ eBPF непривилегированными пользователями.

Так как помимо опубликованных исследователями прототипов эксплоитов в сети выявлено наличие публично доступного рабочего эксплоита для получения root-доступа через данные уязвимости, рекомендуется срочно отключить поддержку запуска eBPF непривилегированными пользователями при помощи "sysctl kernel.unprivileged_bpf_disabled=1", что приведёт к невозможности использования обычными пользователями средств трассировки и анализа производительности на базе eBPF.

Исправление пока доступно только в виде патчей, которые ещё не включены в основной состав ядра. Дистрибутивы пока не выпустили обновления: Debian, openSUSE, Fedora и Ubuntu. Проблемы не затрагивают ядро из состава SUSE Linux Enterprise и Red Hat Enterprise Linux 5, 6 и 7. Отмечается, что публично доступные эксплоиты корректно не работают в Debian 9 с ядром 4.9 (eBPF включен по умолчанию для обычных пользователей), но, по мнению разработчиков Debian, могут быть легко адаптированы для атаки.

Уязвимости вызваны семью ошибками (CVE-2017-16996), появившимися в ядре 4.14, и одной ошибкой в ядре 4.9 (CVE-2017-16995). Проблемы вызваны некорректным преобразованием типов и отсутствием должных проверок в коде верификации eBPF-приложений (bpf/verifier.c), что позволяет осуществлять управляемое чтение и запись в произвольные области памяти ядра. Ряд проблем вызван тем, что в проверочном вызове check_alu_op() не осуществляется разделение между операциями BPF_ALU64|BPF_MOV|BPF_K (знаковое заполнение при чтение 32-разрядных значений в 64-разрядные ячейки) и BPF_ALU|BPF_MOV|BPF_K (добавочное заполнение нулями). Другие проблемы связаны с некорректным обрезанием значений регистров при преобразовании в значения меньшего размера, отсутствием проверки выхода за границы и выравнивания указателя стека.

  1. Главная ссылка к новости (http://openwall.com/lists/oss-...)
  2. OpenNews: Релиз ядра Linux 4.4
  3. OpenNews: Средства трассировки в ядре Linux достигли уровня DTrace
  4. OpenNews: Google представил Cilium, сетевую систему для Linux-контейнеров, основанную на BPF
Лицензия: CC-BY
Тип: Проблемы безопасности
Ключевые слова: ebpf, kernel, linux
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (-), 11:04, 23/12/2017 [ответить] [показать ветку] [···]     [к модератору]
  • –5 +/
    А ведь eBPF почти продвинули как адекватную альтернативу DTrace, но видно не суд... весь текст скрыт [показать]
     
     
  • 2.2, Аноним (-), 11:19, 23/12/2017 [^] [ответить]    [к модератору]  
  • +3 +/
    Отладкой всё равно занимаются на локалхосте, где повышение привилегий не страшно. А вот по умолчанию лучше бы отключить, пока не вылижут.
     
     
  • 3.7, Аноним (-), 13:59, 23/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Цимес DTrace именно в том, что он был создан для анализа проблем в продакшене, т... весь текст скрыт [показать]
     
     
  • 4.16, Аноним (-), 18:20, 23/12/2017 [^] [ответить]    [к модератору]  
  • +4 +/
    Цимес любого дебагера - в том что им можно поиметь всех по самые гланды.
     
  • 4.27, EHLO (?), 19:26, 23/12/2017 [^] [ответить]     [к модератору]  
  • +/
    В Солярисе DTrace можно было sic пользоваться без повышения привилегий ... весь текст скрыт [показать]
     
     
  • 5.56, Знаток (?), 12:53, 24/12/2017 [^] [ответить]    [к модератору]  
  • +/
    > В Солярисе DTrace можно было(sic!) пользоваться без повышения привилегий?

    Да, и во FreeBSD тоже. Всё, что доступно тебе для отладки, доступно и для DTrace.

     
     
  • 6.58, EHLO (?), 13:24, 24/12/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    Не знаток проприетари, но простое гугление подсказывает, что в Оракле с тобой не... весь текст скрыт [показать]
     
  • 6.64, Аноним (-), 17:05, 24/12/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    CODE анон bsd usr share dtrace watch_execve dtrace failed to initialize... весь текст скрыт [показать]
     
     
  • 7.72, Аноним (-), 21:07, 24/12/2017 [^] [ответить]    [к модератору]  
  • +/
    > root@bsd # sysctl security.bsd.unprivileged_proc_debug:1

    По-моему, в сабже как раз и написано популярным языком что после этого ожидать...

     
     
  • 8.73, Аноним (-), 02:51, 25/12/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    Сабж про пингвина Это разрешает неруту запускать дебагер в бзде А отвечал я в... весь текст скрыт [показать]
     
     
  • 9.77, Аноним (-), 00:09, 26/12/2017 [^] [ответить]     [к модератору]  
  • +/
    И там как раз написано что случается после того как нерут что-нибудь основательн... весь текст скрыт [показать]
     
     
  • 10.81, EHLO (?), 01:16, 26/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Что ж теперь strace-ом и gdb юзерам запретить пользоваться ... весь текст скрыт [показать]
     
     
  • 11.85, Аноним (-), 19:09, 26/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Представляешь, было vuln-ов связанных с трассировкой процессов И в лине и в бзд... весь текст скрыт [показать]
     
  • 10.84, Аноним (-), 02:50, 26/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Однако, простой дебагинг приложения, без влезания в ядро, намного более проста... весь текст скрыт [показать]
     
     ....нить скрыта, показать (13)

  • 1.5, Аноним (-), 11:44, 23/12/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +5 +/
    Целый год радовали уязвимости, доступные через user namespace, а теперь настал черёд eBPF. Кому вообще в голову пришло по дефолту включать их для обычных пользователей.
     
     
  • 2.10, Нанобот (ok), 14:13, 23/12/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    > Кому вообще в голову пришло по дефолту включать их для обычных пользователей?

    Если не ошибаюсь, оно используется песочницой хромиума для изоляции рабочих процессов

     
     
  • 3.35, Мое имя (?), 00:42, 24/12/2017 [^] [ответить]    [к модератору]  
  • +/
    в скрытых настройках хрома присутствует этот параметр.
     
     
  • 4.53, Аноним (-), 12:29, 24/12/2017 [^] [ответить]    [к модератору]  
  • +/
    Покажи, что ли.
     
  • 2.14, пох (?), 16:53, 23/12/2017 [^] [ответить]    [к модератору]  
  • +/
    > Кому вообще в голову пришло по дефолту включать их для обычных пользователей.

    тем, разумеется, кто ни разу не жаждал давать программистам для отладки рутовый доступ на прод.

     
     
  • 3.30, EHLO (?), 20:45, 23/12/2017 [^] [ответить]     [к модератору]  
  • +2 +/
    То есть программисты, занимающиеся отладкой в проде без рутового доступа -- это ... весь текст скрыт [показать]
     
     
  • 4.57, Знаток (?), 12:55, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Нормально, если они занимаются выяснением проблемы, где именно тормозит вот этот... весь текст скрыт [показать]
     
     
  • 5.59, EHLO (?), 13:30, 24/12/2017 [^] [ответить]     [к модератору]  
  • +2 +/
    Соболезную эксплуататорам и разработчикам проприетари Что еще могу сказать, для... весь текст скрыт [показать]
     
     
  • 6.60, Аноним (-), 14:29, 24/12/2017 [^] [ответить]    [к модератору]  
  • +2 +/
    соболезную авторам Hello-world. Которым не приходится собирать данные о работе программы в продакшене, из-за какого нить рейса в коде.
     
     
  • 7.62, EHLO (?), 15:24, 24/12/2017 [^] [ответить]     [к модератору]  
  • +2 +/
    Не соболезную анонимам, которые не знают что такое отладка продакшену в котор... весь текст скрыт [показать]
     
  • 3.39, Аноним (-), 03:20, 24/12/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    Тяжела и неказиста участь тех кто не смог в контейнеры и виртуалки А чего таког... весь текст скрыт [показать]
     
  • 1.6, Аноним (-), 13:04, 23/12/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    По ссылке уязвимости в 8-ми разных версиях ядра в разных версиях Debian, откуда ... весь текст скрыт [показать]
     
     
  • 2.8, Аноним (-), 14:00, 23/12/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    The following bug was introduced in 4 9 fixed by bpf fix incorrect sign ext... весь текст скрыт [показать]
     
  • 1.9, axredneck (?), 14:02, 23/12/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    Android подвержен? (чтобы рутануть, само собой)
     
     
  • 2.15, dasrfatwet (?), 18:09, 23/12/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    да конечно чтобы рутануть, чтобы майнера установить скрытного в системе так и скажи.
     
     
  • 3.18, Аноним (-), 18:24, 23/12/2017 [^] [ответить]    [к модератору]  
  • +6 +/
    > да конечно чтобы рутануть, чтобы майнера установить скрытного в системе так и скажи.

    Чтобы майнер был незаметным - требуется чемодан-невидимка с батарейками :)

     
     
  • 4.32, Аноним (-), 22:04, 23/12/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    > Чтобы майнер был незаметным - требуется чемодан-невидимка с батарейками :)

    Кстати, если у кого такой чемодан есть - дайте два! И черт с ним, с майнером.

     
     
  • 5.54, Аноним (-), 12:32, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    И чёрт с ним, с невидимкой Пусть будет просто невесомка ... весь текст скрыт [показать]
     
  • 1.11, Ilya Indigo (ok), 14:49, 23/12/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Линус, как всегда, был прав!
    Очень плохо, когда заранее объявляют, что данное ядро будет LTS.
    Все, кому не лень, а как раз именно те кому лень тщательно тестировать, постараются запихнуть в него по-скорее всё что можно без должного тестирования.
     
  • 1.12, Аноним (-), 15:28, 23/12/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • –1 +/
    приведёт к невозможности использования обычными пользователями средств трассир... весь текст скрыт [показать]
     
  • 1.13, Аноним (-), 15:54, 23/12/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • –1 +/
    Есть ли где внятное сравнение на счёт пользы от внедрения JIT-та в ядро, мол пос... весь текст скрыт [показать]
     
     
  • 2.55, Аноним (-), 12:33, 24/12/2017 [^] [ответить]    [к модератору]  
  • –3 +/
    Почитай, что такое eBPF. JIT только в нём.
     
  • 1.19, Аноним (-), 18:27, 23/12/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –7 +/
    >некорректным преобразованием типов и отсутствием должных проверок

    c-проблемы "гениальных" программистов

     
     
  • 2.21, Michael Shigorin (ok), 19:11, 23/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Вы забыли ссылку на своё беспроблемное, хоть и ни разу не гениальное, ядро Даж... весь текст скрыт [показать]
     
     
  • 3.33, Аноним (-), 23:15, 23/12/2017 [^] [ответить]     [к модератору]  
  • –5 +/
    вы забыли если вообще знали матчасть, Мишенька Plan9, Inferno, clive, gopher-... весь текст скрыт [показать]
     
     
  • 4.34, ыы (?), 23:49, 23/12/2017 [^] [ответить]    [к модератору]  
  • +2 +/
    Уточните пожалуйста:
    Вы утверждаете что все эти вещи написали Вы?
    или же
    Вы утверждаете что эти вещи не содержат проблемных мест?
     
     
  • 5.36, Аноним (-), 00:49, 24/12/2017 [^] [ответить]     [к модератору]  
  • –6 +/
    пропущена запятая а что, о на этом форуме комментировать могут только те, кто пи... весь текст скрыт [показать]
     
     
  • 6.37, Аноним (-), 01:04, 24/12/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    А у вас точно в конце предложения Кстати предложения начинаются с большой бук... весь текст скрыт [показать]
     
     
  • 7.38, Аноним (-), 01:34, 24/12/2017 [^] [ответить]     [к модератору]  
  • –3 +/
    статистика С банально устарел с тех пор как он был придуман когда язы... весь текст скрыт [показать]
     
     
  • 8.41, Аноним (-), 03:28, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Статистика ЧЕГО На си написано дофига кода Наверное логично что в дофига кода ... весь текст скрыт [показать]
     
     
  • 9.43, Аноним (-), 03:55, 24/12/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    в том и проблема сколько уже было критических уязвимостей в линуксе и других фу... весь текст скрыт [показать]
     
     
  • 10.66, Аноним (-), 19:57, 24/12/2017 [^] [ответить]     [к модератору]  
  • +2 +/
    Я бы понял эти претензии, если бы за тот же интервал времени не нашлось 100500 к... весь текст скрыт [показать]
     
     
  • 11.87, Джон Ленин (?), 23:33, 23/02/2018 [^] [ответить]     [к модератору]  
  • +/
    Не парься Их трудно как-нибудь просветить Пофиг людям, что ракеты падают не из... весь текст скрыт [показать]
     
  • 6.40, Аноним (-), 03:22, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Видный специалист в криптографии и безопасности DJB готов с вами поспорить Он к... весь текст скрыт [показать]
     
     
  • 7.42, Аноним (-), 03:33, 24/12/2017 [^] [ответить]     [к модератору]  
  • –2 +/
    да что вы говорите и сколько лет у него уйдёт, чтобы переписать Linux и выложи... весь текст скрыт [показать]
     
     
  • 8.45, . (?), 07:20, 24/12/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    Наверное много Но весь прикол в том что на чём то другом - не напишут вообше ... весь текст скрыт [показать]
     
     
  • 9.46, Аноним (-), 07:38, 24/12/2017 [^] [ответить]    [к модератору]  
  • +/

    > Но весь прикол в том что на чём то другом - не напишут вообше :-р
    > А с другойстороны - конкретно ты - вообще не напишешь.

    мда, докультивировались тут на опёнке..

     
  • 8.68, Аноним (-), 20:48, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Проект размером с Linux неизбежно будет содержать много багов Часть из них окаж... весь текст скрыт [показать]
     
  • 6.47, Аноним (-), 07:49, 24/12/2017 [^] [ответить]     [к модератору]  
  • +2 +/
    Plan9 - ANSI C Inferno - C clive - Что это вообще Даже гугл ответ не даёт goph... весь текст скрыт [показать]
     
     
  • 7.48, Аноним (-), 09:24, 24/12/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    молодец читай дальше спойлер для ленивых там написано что отменено в пользу I... весь текст скрыт [показать]
     
     
  • 8.49, Аноним (-), 10:11, 24/12/2017 [^] [ответить]    [к модератору]  
  • +/
    Я даже спорить не буду, потому что в любом случае в любых ядрах используется ассемблер, даже в gopher, а ассемблер это ещё хуже С.
     
     
  • 9.52, Ordu (ok), 12:10, 24/12/2017 [^] [ответить]    [к модератору]  
  • +/
    https://lesswrong.ru/w/%D0%A1%D0%BE%D1%84%D
     
     
  • 10.61, Аноним (-), 15:21, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    А я и не утверждал что есть вообще что-то лучше Всё в компьютерах плохо и все к... весь текст скрыт [показать]
     
     
  • 11.63, Ordu (ok), 16:57, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Ну я и говорю софизм серого В попытке казаться взрослым и умудрённым опытом ци... весь текст скрыт [показать]
     
     
  • 12.65, Аноним (-), 19:51, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    А может ты ещё раз перечитаешь а потом пере-перечитаешь моё сообщение Я хотел п... весь текст скрыт [показать]
     
     
  • 13.67, Ordu (ok), 20:45, 24/12/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    Очевидно Но ты ведь закончил этим выводом И я не вижу каким образом из этой то... весь текст скрыт [показать]
     
     
  • 14.83, Аноним (-), 02:37, 26/12/2017 [^] [ответить]    [к модератору]  
  • +/
    Ordu ты открыл мне глаза, большое человеческое спасибо!
     
  • 13.70, Аноним (-), 21:00, 24/12/2017 [^] [ответить]     [к модератору]  
  • –1 +/
    А ты научился понимать себя ... весь текст скрыт [показать]
     
  • 8.50, Аноним (-), 10:14, 24/12/2017 [^] [ответить]     [к модератору]  
  • +/
    Понимаешь в чём проблема, тем, что ты тут перечислил пользуются 2 5 гика Осталь... весь текст скрыт [показать]
     
  • 3.86, Джон Ленин (?), 23:09, 23/02/2018 [^] [ответить]     [к модератору]  
  • +/
    Он какой-то левый утюг запакует щаз, и будет наблюдать как вы его тщетно загрузи... весь текст скрыт [показать]
     
  • 2.51, Ordu (ok), 12:08, 24/12/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Ты б в описание багов заглянул, прежде чем утверждать подобное.
     
     ....нить скрыта, показать (28)

  • 1.74, Аноним (-), 07:26, 25/12/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Это eBPF оно мне вообще надо? И почему оно включено по умолчанию?
     
     
  • 2.78, Аноним (-), 00:15, 26/12/2017 [^] [ответить]    [к модератору]  
  • +/
    > Это eBPF оно мне вообще надо?

    Кто тебя знает? Не надо - выключи.

    > И почему оно включено по умолчанию?

    Потому что разработчикам ядра или майнтайнерам дистра было надо, очевидно.


     
  • 2.82, EHLO (?), 01:21, 26/12/2017 [^] [ответить]    [к модератору]  
  • +/
    > Это eBPF оно мне вообще надо? И почему оно включено по умолчанию?

    А где [было написано что] оно включено по умолчанию?
    На первый вопрос ответ "нет".


     
  • 1.79, Аноним (-), 00:34, 26/12/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Ну так какой прок от eBPF (где цифры, слайды, видео)?
    История успеха, так сказать...
     
     
  • 2.88, Аноним (88), 12:38, 13/08/2018 [^] [ответить]    [к модератору]  
  • +/
    https://www.youtube.com/watch?v=sV3XfrfjrPo&feature=youtu.be&t=1851
    Это таймкод, вот.
     

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


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