URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 124621
[ Назад ]

Исходное сообщение
"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра Linux"

Отправлено opennews , 25-Июн-21 13:29 
В подсистеме eBPF, позволяющей запускать обработчики внутри ядра Linux в специальной виртуальной машине с JIT, выявлена уязвимость (CVE-2021-3600), позволяющая локальному непривилегированному пользователю добиться выполнения своего кода на уровне ядра Linux. Проблема вызвана некорректным усечением  32-разрядных регистров при выполнении операций "div" и "mod", что может привести к чтению и записи данных за границей выделенной области памяти...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=55388


Содержание

Сообщения в этом обсуждении
"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 13:29 
Опять раст виноват

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Рефрен , 25-Июн-21 13:30 
отсутвие

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 13:34 
раст виноват своим возникновением и существованием

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 13:43 
Сын мой, в день когда ты родился, сами леса опеннета прошептали твоё имя... Ра-а-аст.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено OnTheEdge , 25-Июн-21 13:29 
неделя дыр в eBPF

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 13:32 
Да какая уж тут неделя, можно уже год говорить, а с учетом 4.15 - я даже не знаю

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено OnTheEdge , 25-Июн-21 13:38 
никогда он мне не нравился

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ivan_83 , 25-Июн-21 13:40 
BPF штука клёвая, просто линуксойды как обычно тащат всё в рот не помыв и не потестировав :)

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 14:30 
Просто у любого API в ядре есть только два состояния - Experimental и Deprecated. Как все дыры закроют BPF, можно будет заменять на что-то другое, а пока только на свой страх и риск..

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено BorichL , 25-Июн-21 14:30 
А помоему они это не в рот затащили, а как обычно, через жо.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено adolfus , 25-Июн-21 17:12 
Через си они это затащили, который не умеет делить целые числа, отдавая операцию на откуп библиотеке. И если половина программистов пишут for(int i = 0;;) вместо for(size_t i = 0;;), то какие к ним могут быть претензии, что он не умеет обращаться с результатом в ..div_t.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено BorichL , 25-Июн-21 17:58 
> Через си они это затащили, который не умеет делить целые числа, отдавая
> операцию на откуп библиотеке. И если половина программистов пишут for(int i
> = 0;;) вместо for(size_t i = 0;;), то какие к ним
> могут быть претензии, что он не умеет обращаться с результатом в
> ..div_t.

Прообраз то тоже на Си был реализован...


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено PnD , 25-Июн-21 13:46 
Дежурный комментарий.
"Что может пойти не так со встроенным в ядро компилятором, если к нему предоставить доступ всем подряд."

* Не ленимся выставлять "kernel.unprivileged_bpf_disabled = 1". Ну а кто балуется с контейнерами, наверное сам сообразит.


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 16:31 
Дежурный комментарий.
Почему вы до сих пор не на BSD? Там такого нет.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 17:01 
> Дежурный комментарий.
> Почему вы до сих пор не на BSD? Там такого нет.

Уже успели утянуть:


Author: Jung-uk Kim <jkim@FreeBSD.org>
Date:   Tue Dec 6 02:58:12 2005 +0000
    Add experimental BPF Just-In-Time compiler for amd64 and i386.
    Use the following kernel configuration option to enable:
            options BPF_JITTER
    If you want to use bpf_filter() instead (e. g., debugging), do:
            sysctl net.bpf.jitter.enable=0
    to turn it off.



"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 17:52 
Но про реализацию в freebsd я не помню чтобы были новости об уязвимостях, тем более несколько на одной неделе. Почему Linux до сих пор не импортировал из BSD идеально работающий код?

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 22:15 
> Почему Linux до сих
> пор не импортировал из BSD идеально работающий код?

Потому что там есть Фатальный Недостаток?
Тем более, пингвинятам уже давно важен не "идеально работающий код", а сам процесс его ваяния, улучшения и выкидывания из-за "стагнации" (т.е. как только оно начинало нормально работать) ...


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 26-Июн-21 02:20 
>Потому что там есть Фатальный Недостаток?

Какой?


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 26-Июн-21 12:08 
>> Потому что там есть Фатальный Недостаток?
> Какой?

Отсутствие пользователей.


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 28-Июн-21 01:19 
>>>> Почему Linux до сих пор не импортировал из BSD идеально работающий код?
>>> Потому что там есть Фатальный Недостаток?
>> Какой?
> Отсутствие пользователей.

Л-логика
(ну, помимо очевидного плюха в лужу - пользователей фряхи всяко пара сотен миллионов будет)


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 26-Июн-21 13:15 
>>Потому что там есть Фатальный Недостаток?
> Какой?

NIH.
Не получится запулить очередной
"never finished, never complete, but tracking progress of technology". (с)


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 26-Июн-21 04:23 
успели, а главное как быстро! И машину заправить не забыли. Молодцы.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 17:02 
Потому, что не под GPL.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 17:04 
Там ещё много чего нет. Нет поддержки такого же количества железа, во-первых.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 22:18 
> Там ещё много чего нет. Нет поддержки такого же количества железа, во-первых.

Т.е. в архитектурных и реализационных ошибках eBPF виновата поддержка большого кол. железа?



"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 27-Июн-21 11:21 
Зачем так искажать ход беседы? Это ответ на вопрос почему не использовать BSD - от неё мало толка.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 26-Июн-21 04:25 
> Нет поддержки такого же количества железа, во-первых.

то есть такого же, как в "вашем" шиндовс?


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Майор , 27-Июн-21 11:17 
Мальчик, у меня Шиндошс не было. Сначала была OS/2, рядом появился GNU/Linux, затем он только и остался.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено др. Аноним , 28-Июн-21 01:17 
>> Нет поддержки такого же количества железа, во-первых.
> Мальчик, у меня Шиндошс не было. Сначала была OS/2, рядом появился GNU/Linux, затем он только и остался.

О да, расскажите нам еще этих кулстори о "крутой" поддержке пингвином железа в те времена!
Или это такое ловкое переобувание в прыжке?


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 17:10 
>"kernel.unprivileged_bpf_disabled = 1"

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


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 23:26 
а есть возможность насовсем отключить эту гадость?

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Шарп , 25-Июн-21 13:51 
Что-то не вижу своё сообщение, которое я писал про уязвимость в eBPF. Поэтому повторю.

>еBPF

Уникальное шерето с JIT компиляцией. Очень по хипстерски. Такого в ядре ещё не было.


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 13:57 
https://www.opennet.dev/opennews/art.shtml?num=55371

На месте все


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Шарп , 25-Июн-21 15:33 
Ааа, это новая уязвимость. Тогда ладно.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 14:01 
Тивоизированные вёдра получат рут и свободные прошивки?

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 14:52 
Нет дыры залезут в систему и апдейтом их никогда не стереть.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено ryoken , 25-Июн-21 14:43 
"Шо, опять?!"

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено deeaitch , 25-Июн-21 16:08 
Кто бы сомневался что в самой этой идее предпологается дыравость.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ordu , 25-Июн-21 17:31 
> выявлена уязвимость (CVE-2021-3600), позволяющая локальному непривилегированному пользователю добиться выполнения своего кода на уровне ядра Linux
> локальному непривилегированному

А как это предлагается локальному непривилегированному эксплуатировать? Он ведь не может загружать произвольный bpf байткод, так? То есть выходит, он должен найти существующий загруженный байткод, и дальше подсовывать тому специально-оформленные данные? Но если так, то разве это локальная уязвимость? Ведь bpf работает с данными из сети.

Нипанятна...


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Онаним , 25-Июн-21 17:42 
Што, о5?
Ну не место JIT в ядре, не место.
Стоило бы подумать о том, как это в юзерспейс вытащить.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено псевдонимус , 25-Июн-21 17:49 
Линусу зад зализать, например. Попробуй, вдруг поможет.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Lex , 25-Июн-21 18:29 
В подобных случаях зад если и лижут, то тому, кто имеет хоть какие-то полномочия..

А не шестёрке, которая прямо сейчас шлифует пердаки инвесторов. Он, наверное, языком уже центнЕр поднять может.. им же и монитор протереть.. им же шнурки завязать и машину рулить.. крч., прокачался за последние годы


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено псевдонимус , 25-Июн-21 18:31 
Ну вот и ты давно все понял. А ребята  постарше нас с тобой поняли в начале нулевых.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ordu , 25-Июн-21 18:23 
> Стоило бы подумать о том, как это в юзерспейс вытащить.

Фильтрацию файрвола вытащить в юзерспейс? Это по два переключения контекста на каждый пакет? Хмм... Ну если тебе надо, ты и вытаскивай. Впрочем, я думаю, для этого ничего особенного делать не надо в ядре, существующих возможностей достаточно.


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Онаним , 25-Июн-21 18:27 
Не обязательно на каждый, есть же очереди обработки.
Спихивать оптом всё считанное из сетевухи в один приём.
Пока мало - будет на каждый. С ростом трафика - уже пачками.

Ну мне-то не надо, в моём случае решение простое: выключил дырчатый механизм, и всё.


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено псевдонимус , 25-Июн-21 17:47 
Му-ха-ха-ха-ха!!

Так вам и надо!


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено макпыф , 25-Июн-21 18:07 
какая уже? 3-я или 4-я?

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Онаним , 25-Июн-21 18:27 
N'ная, и далеко не последняя.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено псевдонимус , 25-Июн-21 18:29 
Там сама задумка ######.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 18:58 
Шо опять?

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 19:07 
Миллионы глаз как всегда просмотрели?

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 25-Июн-21 19:55 
И ты не поверишь нашли!!!! Кто бы мог подумать. Как сказали так и сделали.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено ИмяХ , 26-Июн-21 00:20 
синдром Дженовезе

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ананоним , 25-Июн-21 21:59 
Я ж говорил СмехЖириновского.mpg, а модератор вырезал. И да, кто там хвалился что у него ядро 4.9? Типа не гадость. Оказалось гадость как и 5.x.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ананоним , 25-Июн-21 22:02 
Весто того, чтоы бы тащить в ядро всё что не попадя, лучше бы упрощали, разделив его на бинарные подсистемы с раздельной сборкой и поставкой. Типа стандарта виндовых драйверов.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 26-Июн-21 05:39 
За упрощение зарплату пока что еще никому не заплатили.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ананоним , 26-Июн-21 09:56 
Что и требовалось понять про ситуацию. Кушать хочется программистам, и ради этой великой цели они готовы любую хорошую штуку засовершенствовать до кучи д***ма.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ананоним , 25-Июн-21 22:04 
Всё таки забавное явление это ваше бекпортирование жуков.

"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Ананоним , 25-Июн-21 22:07 
> бекпортирование

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


"Уязвимость в eBPF, позволяющая выполнить код на уровне ядра ..."
Отправлено Аноним , 26-Июн-21 03:36 
Че не смеетесь? Не смешно? Не поняли да? Это Linux!