LINUX.ORG.RU

Исследователям удалось добавить в ядро Linux уязвимый код

 , ,


4

1

Исследователи из университета Миннесоты — Цюши У и Канцзе Лу в рамках исследования «небезопасности» OSS модели пытались выяснить, насколько вероятно намеренное добавление уязвимостей в проекты. Среди прочего патчи были отправлены в ядро Linux.

В результате код ревью прошли 4 патча, в том числе 3 содержащих уязвимости. Представители проекта Linux обратились с жалобой на исследование к администрации университета, однако не нашли поддержки. Потому было принято решение больше никогда не принимать патчи от людей из этого заведения.

>>> Ссылка на исследование

anonymous

Проверено: xaizek ()

Ответ на: комментарий от balsoft

balsoft

Не в этом суть. Суть в том, что люди вносят уязвимости в ядро, после этого они доходят до stable, и затем эти же люди публикуют whitepaper об этих уязвимостях, не откатив их и даже не сообщив предварительно в ядро. Это неэтично и вредоносно.

Причём тут «неэтично и вредоносно»? Люди из универсистета совсем про другое исследование проводили. Они проверили безопасность «небезопасного» OSS.

И выяснился простой факт, что этот ваш Линукс решето, что дискредитировать код может гипотетически любой Васян. Или даже не Васян, а любые спецслужбы (сотрудники которых запросто могут работать в тех или иных корпорациях гигантах - типа ГУГЛ, IBM и тд.). Даже в ОТКРЫТЫЙ КОД. Что разработка и тестирование Линукса как таковая является __малоудовлетворительной__, что в этой блоатвари легко можно открытым способом внести удалённых рутов в сетевой стэк или ещё куда.

А представители проекта Linux умишком не отличились. Вместо того, чтобы сделать глубокие выводы о том, что собственно произошло, они не догадались сделать ничего лучше, как забанить исследователей. Ой, лол.

Лорчую воооон того анонима: миллионы зорких глаз опенсорса опять оказались шоколадными глазами. По всему ядру может быть разбросано таких условных «открытых» вагон и маленькая тележка закладок.

Мораль проста: самый защищённый код - это закрытый код, скомпилированный. Так как поиск багов усложняется в тысячи раз, так как придётся месяцами сидеть в дебаггере и ассемблерных листингах. И то, маловероятно, что ты что-то найдёшь. Да, но тут возникает проблема доверия к закрытому коду.

Резюме: исследователи молодцы. Показали, что эта ваша открытость фикция.

Korchevatel

Исследования такого толка должны быть такими же открытыми

Cама суть таких исследований как раз в том и заключается, что эти самые исследования неожиданным образом анализируют и показывают плачевную картину с код ревью. Если об этом исследованиях предупреждать, тогда нельзя будет доказать факт того, что гипотетически любой Васян может занести закладку.

Короче со стороны проекта Линукс реакция абсолютная неадекватная. Они так и не поняли, о чём собственно это самое исследование.

Грег Кроа-Хартман (Greg Kroah-Hartman), отвечающий за поддержку стабильной ветки ядра Linux, принял решение запретить приём в ядро Linux любых изменений, поступающих из Университет Миннесоты ... По мнению Грега проведение подобных экспериментов по внедрению вредоносных изменений является неприемлемым и неэтичным ...

О Боги! Да этому университету фиолетово на то, что им где-то что-то запрещают! Причём тут неприемлемость? Этот кейс яркий пример того, какие разрабы Линупса неадекватны, включая Грега Кроа-Хартмана. Исследование университета показало фундаментальный брак неадекватной разработки Линукса, сам факт того, как легко в ядре находится бэкдур. Университет это показал и продемонстрировал. В этом вся соль, а не в какой-то там неэтичности.

Грег Кроа-Хартман и иже с ними подменяют контекст, не понимая сути проведённого исследования.

Вообще, не удивлюсь если какая-нибудь NetBSD будет защищённее Линукса. Могут быть в нетке закладки такие же? Да, могут. Но сама ОС маргинальнее, а линукс - мэйнстрим, что гарантирует больший интерес со стороны спецслужб и корпораций к Линуксу.

anonymous ()

А они ведь патчи отправляли с почты университета?

fernandos ★★ ()

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

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

А на самом деле говно на палочке.

Реакция «мы вас забаним навсегда» говорит об уровне инфантилизма команды разработчиков. Отсюда сразу очевидным становятся всякие извращения в виде CoC, замены слов на другие, не такие обидные, большее разнообразие, пропихивание раста в ядро и прочий треш.

beck ★★ ()
Ответ на: комментарий от BceM_IIpuBeT

А кроме как пердануть в лужу, закосив под Петросяна, под «БГГ» в студии аргументов нет?

anonymous ()

Какие-то педики попытались внедрить патч, их засекли, и что? Пошли они нах на венду (откуда и пришли).

superuser ★★★ ()
Ответ на: комментарий от superuser

их засекли, и что

ты ничего не понял, регистрант…

в том-то и дело, что их не засекли. они внесли бэкдур, а потом показали, как легко всё это вошло в кодовую базу, показав всю убогость разработки ядра.

anonymous ()
Ответ на: комментарий от anonymous

И выяснился простой факт, что этот ваш Линукс решето, что дискредитировать код может гипотетически любой Васян. Или даже не Васян, а любые спецслужбы (сотрудники которых запросто могут работать в тех или иных корпорациях гигантах - типа ГУГЛ, IBM и тд.). Даже в ОТКРЫТЫЙ КОД. Что разработка и тестирование Линукса как таковая является малоудовлетворительной, что в этой блоатвари легко можно открытым способом внести удалённых рутов в сетевой стэк или ещё куда.

Вот сразу, с ходу.

Дорогой друг.

Расскажи плз, а что насчет целеполагания?

С какой целью эти исследовали замутили весь этот панопникум?

Зачем эти бурления говен?

Если ты нашел уязвимость и хочешь помочь ее закрыть - есть ведь варианты.

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

Расскажи мне плз, кого ты щас тут оправдываешь?

anonymous ()

uninitialized use

NULL dereference

use-after-free

В комментариях к этой теме уже упомянули до боли знакомое всем нам слово из четырех букв?

seiken ★★★★★ ()
Ответ на: комментарий от anonymous

Расскажи мне плз, кого ты щас тут оправдываешь?

Начинаем под дурачка косить и дурочку включать?

Никого не оправдываю. Разработчики ядра неадекватно отреагировали, правильно не восприняв результаты исследования, зачем-то забанив университет. Ахаха, ой лол… Им от этих банов ни холодно, ни жарко. Сама проблема никуда не исчезла.

anonymous ()
Ответ на: комментарий от beck

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

Не были. Они причмокивая проглотили. Что-то даже до релиз ветки дошло. После выхода исследования «Зоркий глаз» начал что-то подозревать.

anonymous ()
Ответ на: комментарий от anonymous

Работники столовой, использующие городскую свалку как источник сосисок в тесте недоумевают по поводу очередной партии, которой, как позже выяснилось, лечили геморрой по методу Малахова. Учащиеся первого класса уже успели съесть свои порции.

ахах)))

прекрасное )

olelookoe ()

Тема сисек не раскрыта. Насколько очевидны уязвимости в этом коде? Какова серьёзность уязвимостей?

erfea ★★★★★ ()
Ответ на: комментарий от anonymous

Не были.

Тогда ситуация ещё более прелестная. Можно ли вообще доверять линуксу, команде разработки линукса, если оказывается, что любой васян может закоммитить в ядро уязвимости и бэкдоры? И это никак не проверяется, а вместо реагирования на реальный инцидент и реальную угрозу команда разработчиков строит из себя обиженок и анально огораживается.

И как вот это вот использовать в критически важных областях? Или постойте, это так и должно быть и оно works as designed именно таким образом, а все разговоры про открытость и проверяемость есть туфта рекламная для собрать хомячков и стричь?

beck ★★ ()
Ответ на: комментарий от torvn77

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

Никак не отвечает и никакой ответственности не несёт.

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

Речь идёт не о хипстерах, сидящих на source based и красноглазящих в компиляцию и в её параметры. К этому надо добавить ещё и то, что какой нибудь RHEL или Oracle накладывает кучу своих патчей.

hummer ()
Ответ на: комментарий от anonymous

Только дауны хамят из под анонимуса. Выпей яду.

hummer ()
Ответ на: комментарий от erfea

Насколько очевидны уязвимости в этом коде?

очевидны для тех, кто вносил закладки.

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

сколько таких «спящих» закладок может быть в ядре можно только догадываться.

Какова серьёзность уязвимостей

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

тут всё написано - https://raw.githubusercontent.com/QiushiWu/qiushiwu.github.io/main/papers/OpenSourceInsecurity.pdf

anonymous ()
Ответ на: комментарий от beck

или же они так бы и попали в прод, если бы не уведомление от экспериментаторов?

Они и попали в прод. Вот один из тех трёх патчей: https://github.com/torvalds/linux/commit/8e949363f017

вот обсуждение:

https://lore.kernel.org/linux-nfs/YIAta3cRl8mk%2FRkH@unreal/

А, уже анон ответил… Я прослоупочил, ну ладно…

fsb4000 ★★★★★ ()
Последнее исправление: fsb4000 (всего исправлений: 1)
Ответ на: комментарий от anonymous

+1

Вообще эта новость изначально должна была состоять из двух отдельных новостей:

1. Какие-то козлы смогли беспрепятственно добавить вредоносный код в ядро. И они реально козлы.

2. Какие-то козлы, ответственные за безопасность ядра реально публично обоср@лись и профукали вредоносный код в ядре. И они ещё козлее, чем те козлы из первого пункта.

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

Chord ★★ ()
Ответ на: комментарий от Shaman007

Коммитер может быть и не с улицы, но автор (в git - это два разных поля) может быть кто угодно. Аудит присылаемых патчей явно страдает и именно это продемонстрировал эксперимент. Теперь представь, что какая-то спецслужба хочет иметь бекдор. Для этого им нужно прислать достаточно полезный патч или серию патчей, в которых этот бекдор находится в достаточно завуалированном виде. И хорошо, если это обнаружат лет через 10, а ведь могут и вообще не обнаружить.

hummer ()
Ответ на: комментарий от beck

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

Ключевое, да. Отсюда и обидки на университет.

anonymous ()
Ответ на: комментарий от hummer

Никак не отвечает и никакой ответственности не несёт.

Как не несёт если институт вот только что ответил?

torvn77 ★★★★★ ()
Ответ на: комментарий от anonymous

Дорогой друг. Расскажи плз, а что насчет целеполагания? С какой целью эти исследовали замутили весь этот панопникум?

Третьего дня, по совету проверенных камрадов, решили внести изменения в ядро Линукс. Ощущения- атас. Оказалось, можно вносить любую хрень, никто ничего не заметит.

Понятно ли я излагаю, камрад ?

anonymous ()

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

Отличное решение! Ожидаю что в следующий раз дыры будут добавлять молча и никого уведомлять об этом не будут.

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

anonymous ()

Есть идея локального исследования. Проверить ЛОРовцев, которые поддерживали травлю деда. Потом тех, кто оправдывает собирателей огурцов с помойки, которые их не моют перед приготовлением салата. Подозреваю, будет большое пересечение. Вангую, плюс-минус это одно и то же подмножество.

anonymous ()
Ответ на: комментарий от anonymous

Расскажи мне плз, кого ты щас тут оправдываешь?

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

И да, реакция, которую в ответ продемонстрировали разработчики ядра, вызывает чувство стыда и жалости.

Manhunt ★★★★★ ()
Последнее исправление: Manhunt (всего исправлений: 1)
Ответ на: комментарий от hummer

Речь идёт не о хипстерах, сидящих на source based и красноглазящих в компиляцию и в её параметры.

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

torvn77 ★★★★★ ()
Ответ на: комментарий от Ende

Представляешь себе да, иначе это уголовное преступление.

В какой стране?

hateyoufeel ★★★★★ ()
Ответ на: комментарий от beck

Внезапно оказывается всё держится на том, что никто не додумался просто коммитить в ядро уязвимости. Или додумался?

А я тут подумал ещё вот что. Лицензия BSD не требует возврашать наработки и открывать код проектов, то есть в принципе можно проделать внутренний аудит кода, и никому про это не говорить. Тогда эксплуатация уязвимостей становится сложнее.

А вот для gpl эти уязвимости будут обязательно, а если будут исправлены, можно внести тут же новые.

Не в этом ли причина, что линукс стал мейнстримом? Линукс контролируем полностью, а бсд - нет.

И второй любопытный вопрос. О роли Столлмана и его деятельности. Играют ли его втемную или он прекрасно представляет себе, на какой камень он наводит всю слепошарую секту свободно открытого кода?

beck ★★ ()
Ответ на: комментарий от beck

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

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

Реакция «мы вас забаним навсегда» говорит об уровне инфантилизма команды разработчиков.

Думаю, что подгореть в данном случае может неиллюзорно от того, что принципиальни никак эту проблему проходного двора не решить, и даже то, что можно предложить в таких статьях - это полумеры. Что-то типа обратиться к ширнармассам: «ребята, давайте всем миром больше не делать ошибок», с прогнозируемым результатом.

Отсюда сразу очевидным становятся всякие извращения в виде CoC, замены слов на другие, не такие обидные

Вообще-то, CoC это не только про всякие соцравноправия, но и просто правила поведения в общем смысле. Только CoC тут не поможет. Вот, что пишут авторы:

We believethat an effective and immediate action would be to updatethe code of conduct of OSS, such as adding a term like “bysubmitting the patch, I agree to not intend to introduce bugs.”Only committers who agreed to it would be allowed to goahead to submit the patches.

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

seiken ★★★★★ ()
Ответ на: комментарий от seiken

We believethat an effective and immediate action would be to updatethe code of conduct of OSS, such as adding a term like “bysubmitting the patch, I agree to not intend to introduce bugs.”Only committers who agreed to it would be allowed to goahead to submit the patches.

Это формальность. Как часто в инструкциях пишут типа не пытайтесь засунуть XYZ в свою жопу, так как оно очень горячее.

anonymous ()
Ответ на: комментарий от seiken

We believethat an effective and immediate action would be to updatethe code of conduct of OSS, such as adding a term like “bysubmitting the patch, I agree to not intend to introduce bugs.”Only committers who agreed to it would be allowed to goahead to submit the patches.

Ахахахахахахахах! Уааааххахахахахахах! Господи твою жеж мать! xD

Они это правда серьёзно? Да?

hateyoufeel ★★★★★ ()
Ответ на: комментарий от hateyoufeel

Внендрение трояна - это не баг, это фича.

anonymous ()
Ответ на: комментарий от beck

А я тут подумал ещё вот что. Лицензия BSD не требует возврашать наработки и открывать код проектов, то есть в принципе можно проделать внутренний аудит кода, и никому про это не говорить. Тогда эксплуатация уязвимостей становится сложнее.

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

А вот для gpl эти уязвимости будут обязательно, а если будут исправлены, можно внести тут же новые.

А в bsd новые уязвимости вносить религия запрещает, штоли?

Manhunt ★★★★★ ()
Ответ на: комментарий от hateyoufeel

Ахахахахахахахах! Уааааххахахахахахах! Господи твою жеж мать! xD

Они это правда серьёзно? Да?

Когда визу в США получаешь, тебя же спрашивают «Вы террорист? Да/Нет», «Вы спонсируете терроризм? Да/Нет» и ещё пяток таких вопросов. Не знаю, а вдруг работает! Кто-то спалится при заполнении.

anonymous ()

что не делается к лучшему. Может после этого в корне изменится подход к приему кода

anonymous ()
Ответ на: комментарий от anonymous

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

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

beck ★★ ()
Ответ на: комментарий от beck

авторы статьи, осуществившие данный эксперимент. По ссылке не ходил?

seiken ★★★★★ ()
Ответ на: комментарий от beck

Вот именно. Внезапно оказалось, что эта ваша хваленая открытость снижает безопасность.

В закрытом проекте уязвимость будет добавлена по решению тайного суда (их же ещё не отменили?), но об этом никто никогда не узнает.

anonymous ()
Ответ на: комментарий от anonymous

по решению тайного суда

с распитием крови христианских младенцев!

anonymous ()
Ответ на: комментарий от hateyoufeel

Они это правда серьёзно? Да?

С другой стороны, а что ещё им остаётся? Ядро - это десятки миллионов SLOC на говносишке. Как этим управлять?

Manhunt ★★★★★ ()
Ответ на: комментарий от seiken

массовость ни фига не гарант качества.

а вопрос не так ставится.

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

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

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

olelookoe ()
Последнее исправление: olelookoe (всего исправлений: 1)
Ответ на: комментарий от Manhunt

если всем расскажешь об обнаруженных уязвимостях, тогда вскоре их эксплуатация станет невозможной не только у тебя, но и вообще у всего сообщества

Пока что всё наоборот.

А в bsd новые уязвимости вносить религия запрещает, штоли?

Нет, разумеется. Вопрос в контроле кода. В случае bsd тот, кому надо, не может контролировать код, а в случае gpl, как мы видим, может.

beck ★★ ()
Ответ на: комментарий от beck

В случае bsd тот, кому надо, не может контролировать код, а в случае gpl, как мы видим, может.

Это уже не про лицензию, а про процесс разработки.

Manhunt ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.