Руководитель группы разработки и обслуживания ядра Linux Грег Кроа-Хартман (Greg Kroah-Hartman) запретил Миннесотскому университету впредь участвовать в развитии ядра Linux. Причиной послужили внесенные им неоднозначные патчи, вызывающие ряд вопросов. Ранее специалисты университета опубликовали исследование под названием «Возможность незаметного внедрения уязвимостей в ПО с открытым исходным кодом через фальшивые коммиты». Очевидно, что под «ПО с открытым исходным кодом» исследователи подразумевали ядро Linux, в которое они в экспериментальных целях добавили уязвимость использования памяти после высвобождения. Если это еще можно с натяжкой назвать этическим экспериментом, то дальнейшие действия специалистов Миннесотского университета не лезут ни в какие ворота. Аспирант факультета компьютерных наук и инженерии Адитья Пакки (Aditya Pakki) добавил в ядро Linux еще одну серию «явно некорректных патчей» в виде нового статического анализатора, но отрицал какой-либо злой умысел, уверяя, будто у него просто мало опыта в разработке Linux. «Грег, я со всем уважением прошу вас прекратить разбрасываться обвинениями, граничащими с клеветой. Эти патчи были доставлены как часть нового написанного мной статического анализатора, точность которого, очевидно, желает лучшего. Я отправил патчи в надежде получить обратную связь. Мы не эксперты в области ядра Linux и постоянно слышать такие заявления противно. Да, это был неправильный шаг, но ваши предвзятые предубеждения настолько сильны, что вы делаете необоснованные утверждения и не даете возможности поверить нам на слово. Я не буду больше отправлять патчи из-за такого отношения, которое не только нежелательно, но и отпугивает новичков и неспециалистов», – ответил Пакки на запрет впредь участвовать в развитии ядра Linux. В свою очередь, Грег Кроа-Хартман написал следующее: «Вы и ваша команда публично признались в отправке явно некорректных патчей с целью посмотреть на реакцию сообщества и даже опубликовали целое исследование на эту тему. Теперь вы снова добавили серию явно некорректных патчей, и что я должен думать? Очевидно, что они НЕ были созданы инструментом статического анализа, поскольку представляют собой результаты разных паттернов и не исправляют вообще ничего. Так что же я должен думать, если не то, что, отправляя бессмысленные патчи, вы и ваша группа продолжаете экспериментировать с сообществом разработчиков?». Как пояснил Кроа-Хартман, созданные инструментами патчи обычно сопровождаются припиской «обнаружено инструментом таким-то, мы не уверены, корректно оно или нет, пожалуйста, посоветуйте», однако никаких таких приписок с патчами Пакки не было. «Вы не просили о помощи, вы заявляли, что это легитимные исправления, и вы ЗНАЛИ, что они некорректные. Любой, кто хоть как-то знаком с C, за пару минут может выяснить, что ваши материалы вообще ничего НЕ делают, поэтому заявления, будто их создал инструмент, а вы считали их действительным «исправлением», выставляет в невыгодном свете вас, а не нас. Вы сами виноваты, быть подопытными кроликами для созданного вами инструмента – это не наша работа», – заявил Кроа-Хартман. Руководство Миннесотского университета отнеслось к конфликту с большой серьезностью, и проводимое Пакки исследование было приостановлено. Администрация намерена проверить используемые исследователем методы и процесс их одобрения, а также принять все необходимые меры для предотвращения подобных случаев в будущем. https://www.securitylab.ru/news/519174.php
Университет Миннесоты отстранён от разработки ядра Linux за отправку сомнительных патчей Грег Кроа-Хартман (Greg Kroah-Hartman), отвечающий за поддержку стабильной ветки ядра Linux, принял решение запретить приём в ядро Linux любых изменений, поступающих из Университета Миннесоты, а также откатить все ранее принятые патчи и провести их повторное рецензирование. Причиной блокировки стала деятельность исследовательской группы, изучающей возможность продвижения скрытых уязвимостей в код открытых проектов. Указанная группа отправляла патчи, включающие различного рода ошибки, наблюдала за реакцией сообщества и изучала пути обмана процесса рецензирования изменений. По мнению Грега проведение подобных экспериментов по внедрению вредоносных изменений является неприемлемым и неэтичным. Поводом блокировки послужила отправка участниками данной группы патча, который добавлял проверку указателя для исключения возможного двойного вызова функции "free". С учётом контекста использования указателя проверка была бессмысленна. Целью отправки патча было изучение того, пройдёт ли ошибочное изменение рецензирование разработчиками ядра. Кроме указанного патча всплыли и другие попытки разработчиков из Университета Миннесоты внести сомнительные изменения в ядро, в том числе связанные с добавлением скрытых уязвимостей. Отправивший патчи участник попытался оправдаться тем, что испытывает новый статический анализатор и изменение подготовлено на основе результатов проверки в нём. Но Грег обратил внимание на то, что предложенные исправления не характерны для ошибок, выявляемых статическими анализаторами, и присланные патчи ничего не исправляют. C учётом того, что рассматриваемая группа исследователей уже пыталась в прошлом продвигать исправления со скрытыми уязвимостями, очевидно, что они продолжили свои эксперименты над сообществом разработчиков ядра. Интересно, что в прошлом руководитель проводящей эксперименты группы принимал участие в легитимном исправлении уязвимостей, например, выявил утечки информации в USB-стеке (CVE-2016-4482) и сетевой подсистеме (CVE-2016-4485). В исследовании скрытого продвижения уязвимостей группа из Университета Миннесоты приводит пример уязвимости CVE-2019-12819, вызванной исправлением, принятым в ядро в 2014 году. Исправление добавляло в блок обработки ошибки в mdio_bus вызов put_device, но спустя пять лет всплыло, что подобная манипуляция приводит к обращению к блоку памяти после его освобождения ("use-after-free"). При этом авторы исследования утверждают, что в своей работе они обобщили данные о 138 патчах, вносящих ошибки, но не связанных с участниками исследования. Попытки же отправки собственных патчей с ошибками ограничивались email-перепиской, и подобные изменения не достигли стадии Git-коммита в какую-либо ветку ядра (если после отправки патча по email мэйнтейнер считал патч нормальным, то его просили не включать изменение так как там ошибка, после чего присылали правильный патч). Дополнение 1: Судя по активности автора раскритикованного исправления он уже давно отправляет патчи в различные подсистемы ядра. Например, в драйверы radeon и nouveau недавно были приняты изменения с вызовом pm_runtime_put_autosuspend(dev->dev) в блоке ошибки, не исключено, что приводящему к использованию буфера после освобождения связанной с ним памяти. Дополнение 2: Грег откатил 190 коммитов, связанных с адресами "@umn.edu" и инициировал их повторное рецензирование. Проблема в том, что участники с адресами "@umn.edu" не только экспериментировали с продвижением сомнительных патчей, но и устраняли реальные уязвимости, и откат изменений может привести к возвращению ранее исправленных проблем с безопасностью. Некоторые мэйнтейнеры уже перепроверили отменённые изменения и не нашли проблем, но нашлись также патчи с ошибками. Дополнение 3: Руководство факультета компьютерных наук Университета Миннесоты опубликовало заявление, в котором объявило о приостановке исследований в данном направлении, инициировании проверки корректности используемых методов и проведении разбирательства того, как подобное исследование было одобрено. Отчёт с результатами будет передан сообществу. https://www.opennet.ru/opennews/art.shtml?num=55000
Интересно они сами "догадались" или кто их подтолкнул с каких-либо органов, ну и спалились вовремя. И где избитая фраза: это русские хакеры виноваты!!!
Скорее всего немного все проще. Там о догадках речи нет. Никто не палился, самородки подтолкнули к данной ситуации, в которой приходится разбираться . Что возможно, для отвода.
Команда из Университета Миннесоты пояснила мотивы экспериментов с сомнительными коммитами в ядро Linux Группа исследователей из Университета Миннесоты, приём изменений от которой на днях был заблокирован Грегом Кроа-Хартманом, опубликовала открытое письмо с извинениями и пояснением мотивов своей деятельности. Напомним, что группа занималась исследованием слабых мест рецензирования поступающих патчей и оценкой возможности продвижения в ядро изменений со скрытыми уязвимостями. После поступления от одного из участников группы сомнительного патча с бессмысленным исправлением было сделано предположение, что исследователи вновь пытаются проводить эксперименты над разработчиками ядра. Так как подобные эксперименты потенциально представляют угрозу безопасности и отнимают время у коммитеров, было решено заблокировать приём изменений и отправить все ранее принятые патчи на повторное рецензирование. В своём открытом письме участники группы заявили, что их деятельность была мотивирована исключительно благими намерениями и желанием улучшить процесс рецензирования изменений путём выявления и устранения слабых мест. Группа уже много лет изучает процессы, приводящие к появлению уязвимостей, и активно работает по выявлению и устранению уязвимостей в ядре Linux. Утверждается, что все из отправленных на повторное рецензирование 190 патчей являются легитимными, исправляют существующие проблемы и не содержат преднамеренных ошибок или скрытых уязвимостей. Вызвавшее опасение исследование по продвижению скрытых уязвимостей было проведено в августе прошлого года и ограничилось отправкой трёх патчей с ошибками, ни один из которых не попал в кодовую базу ядра. Связанная с данными патчами активность ограничилась только обсуждением и продвижение патчей было остановлено на стадии до добавления изменений в Git. Код трёх проблемных патчей пока не приводится, так как это раскроет лица тех, кто проводил начальное рецензирование (информация будет раскрыта после получения согласия от разработчиков, не распознавших ошибки). Основным источником исследования были не собственные патчи, а анализ когда-либо добавленных в ядро чужих патчей, из-за которых в последующем всплывали уязвимости. К добавлению данных патчей команда Университета Миннесоты не имеет никакого отношения. Всего было изучено 138 проблемных патчей, приводивших к появлению ошибок, и к моменту публикации результатов исследования все связанные с ними ошибки были исправлены, в том числе при участии команды, проводившей исследование. Исследователи сожалеют, что они воспользовались неуместным методом проведения эксперимента. Ошибкой было то, что исследование было проведено без получения разрешения и без уведомления сообщества. Мотивом скрытой деятельности было желание добиться чистоты эксперимента, так как уведомление могло привлечь отдельное внимание к патчам и их оценке не на общих основаниях. Несмотря на то, что целью было улучшение безопасности ядра, сейчас исследователи осознали, что использование сообщества в качестве подопытного кролика было некорректным и неэтичным. При этом исследователи уверяют, что никогда намеренно не навредили бы сообществу и не допустили бы внесение новых уязвимостей в рабочий код ядра. Что касается бессмысленного патча, который послужил катализатором блокировки, то он не имеет отношения к прошлому исследованию и связан с новым проектом, нацеленным на создание инструментария для автоматизированного выявления ошибок, появляющихся в результате добавления других патчей. Сейчас участники группы пытаются найти пути возврата к участию в разработке и намерены наладить свои отношения с Linux Foundation и сообществом разработчиков, доказав свою полезность в деле повышения безопасности ядра и выразив желание усиленно работать для общей пользы и возвращения доверия. Дополнение: Грег Кроа-Хартман ответил, что в пятницу технический совет организации Linux Foundation отправил в Университет Миннесоты письмо с изложением конкретных действий, которые нужно предпринять для восстановления доверия к группе. До тех пор, пока указанные действия не выполнены, обсуждать пока нечего. 25.04.2021 https://www.opennet.ru/opennews/art.shtml?num=55026
Разработчики ядра Linux завершили аудит всех патчей от Университета Миннесоты Технический совет организации Linux Foundation опубликовал сводный отчёт с разбором инцидента с исследователями из Университета Миннесоты, связанного с попыткой продвижения в ядро патчей, содержащих скрытые ошибки, приводящие к уязвимостям. Разработчики ядра подтвердили ранее опубликованную информацию о том, что из 5 патчей, подготовленных в ходе исследования "Hypocrite Commits", 4 патча с уязвимостями были отвергнуты сразу и по инициативе мэйнтейнеров и не попали в репозиторий ядра. Один патч был принят, но он корректно исправлял проблему и не содержал ошибок. Также были проанализированы 435 коммитов, включающих исправления, отправленные разработчиками из Университета Миннесоты и не связанные с проведением эксперимента по продвижению скрытых уязвимостей. С 2018 года группа исследователей из Университета Миннесоты достаточно активно участвовала в исправлении ошибок. Повторное рецензирование не выявило в данных коммитах вредоносной активности, но вскрыло отдельные неумышленные ошибки и недоработки. 349 коммитов признаны корректными и оставлены без изменений. В 39 коммитах обнаружены проблемы, требующие исправления - данные коммиты отменены и до выпуска ядра 5.13 будут заменены на более корректные исправления. Ошибки в 25 коммитах оказались исправлены в последующих изменениях. 12 коммитов потеряли актуальность, так как затрагивали устаревшие системы, уже удалённые из ядра. Один из корректных коммитов был отменён по запросу автора. 9 корректных коммитов были отправлены с адресов @umn.edu задолго до образование разбираемой группы исследователей. Для восстановления доверия к команде из Университета Миннесоты и возвращения возможности участия в разработке ядра организация Linux Foundation выдвинула ряд требований, большая часть из которых уже выполнена. Например, исследователи уже отозвали публикацию "Hypocrite Commits" и отменили своё выступление на конференции IEEE Symposium, а также публично раскрыли всю хронологию событий и предоставили детальную информацию об отправленных в ходе исследования изменениях. 06.05.2021 https://www.opennet.ru/opennews/art.shtml?num=55095