Pull to refresh

Comments 74

На самом деле надо понимать причину, почему "разозлились". Дело не в том, что на них проводят эксперименты, а в том, что им осложняют работу.


Обычные коммиты очень трудно читать, чтобы понять, не "ломает ли оно что-то", а тут люди ещё специально изголяются с целью сделать максимально неприятно.


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


А вы остались со стенкой, которую не только перекрашивать надо, но и заново шкурить, отдирать прилипший мусор и т.д. Как вы к таким "исследователям" отнесётесь?

Сообщество должно быть готово к атакам. Радоваться надо, что вектор атаки протестировали исследователи, а не злоумышленники.
В аналогии с краской — в следующий раз можно будет не ждать, пока вся стена будет заляпана, а отправить "помощника" подальше сразу же.

Сообщество должно быть готово к атакам.

Ну вот их поймали и забанили, как сделали бы с "настоящими" злоумышленниками. Оправдание, что это было исследование, не прокатило. Потому что оно было без согласия. Надо было сначала заручится поддержкой какого-то из руководства (например, Линуса). На чистоту эксперимента это бы не повлияло.


Вся эта история очень похожа на оправдание после пранка: "ребята, не бейте! Это был социальный эксперимент!".


Какую-то пользу они принесли сообществу? Установление очевидного как мокрость воды факта, что на код-ревью можно иногда протолкнуть каку — пользой не является.


А время и силы отняли. Еще и баги в стабильные ветки закомитили в итоге.

Ну вот их поймали и забанили

После того как они сами опубликовали? Такое себе достижение.

Нет, очередной багованный коммит выбесил мейнтенеров. Там еще автор "дурака" включил и все отрицал.

А вот это интересно, и очень похоже на операции «под чужим флагом», этот университет для Пентагона никаких контрактов не исполнял?

Да не. Там очень похоже, что студент проводил эксперимент, очевидно, для новой статьи. И он вообще индус, а не китаец.


А дурака включил тоже понятно зачем. Если признаться, то больше экспериментировать не дадут.

Очень важно вовремя заподозрить злоумышленника в коллеге. А вдруг, он шпион?


Вот, например, вот тот хрен в очереди передо мной — а вдруг, он с собой канистру яда принёс? А вот та бабка странно смотрит — вдруг, она собралась взорвать автобус?


А коллега! Почему это он улыбается и здоровается? Он же в кофе мне плюнул, когда я на секунду отвернулся. А вот тот глаза отводит — ну точно по карманам шарится.

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

"Доверия больше чем надо! Надо сбалансировать!" — практически, лозунг Шапокляк. Извините, конечно.

Очень важно вовремя заподозрить злоумышленника в коллеге. А вдруг, он шпион?
Не обязательно шпион. Может быть, просто криворукий дурак. Поэтому на заводах есть ОТК, где все изделия проверяются, и ставятся штампы в паспорта изделий.

Здесь же никакого контроля нет (либо есть, но крайне слабый и не достаточный).

Никакого контроля нет! Читай журналистов, насилуй учёных!


Почитайте историю про многочисленные срачи в районе этих патчей.

Надо заметить что "исследователи" не отозвали свои изменения после исследования что ставит под вопрос действительно ли они исследователи.

Возможно, что спонсором исследования было АНБ или другое трёхбуквенное.

Если они нанесли ущерб (а по мнению сообщества они нанесли), то они не исследователи, а вредители. Иначе так исследованиям можно свести что угодно. Был у них злой умысел или нет — это уже второстепенное, многие катастрофы случились без злого умысла, многие незначительные действия со злым умыслом в конечном счете привели к позитивным последствиям.
Я думаю, позитивным окончанием истории было бы принесение публичных извенений с просьбой снять ограничения под обещание больше так не делать, и помощь в устранении последствий. А не оправдания себя исследованиями.

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

РБМК образца 1986 года в любом случае, рано или поздно, рванул бы, хоть с экспериментом, хоть без.

Да ладно! Много ли их рвануло, кроме этого, над которым проводили неудачный эксперимент?
Рекомендую изучить тему, прежде чем пытаться что-то доказать.
Эксперименты проводились над всеми подобными ( дефектными реакторами ) и многократно, это штатная процедура для АЭС вообще-то. Но стечение определённых обстоятельств, читай параметров, произошло только в Припяти 26 апреля 1986го
стечение определённых обстоятельств, читай параметров

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

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

Не просто не делать как не надо, а конструкторский дефект реактора РБМК-1000 был исправлен, после чего при всех тех же параметрах аварии больше не произойдёт. В России по сей день работают десять реакторов, идентичных тем, что были использованы в Чернобыле — три реактора на Ленинградской, три на Смоленской и еще четыре на Курской АЭС. (14 июля 2019)

Хотя вопрос их безопасности весьма дискуссионный:
www.bbc.com/russian/features-48872901

Как раз и разозлились из-за того, что был проведён неэтичный эксперимент. Неэтичный — в данном случае означает "проведённый без уведомления и согласия подопытных". К тому же те, кто пытался пропихнуть патчи, задним числом объявили их "созданными по результатам работы статического анализатора", при этом Грег К-Х справедливо заметил, что подобные патчи от добросовестных контрибьюторов в заголовке несут информацию, что они были созданы анализатором или по результатам работы анализатора, и какого именно. Яснее всего это сформулировал Theodore Ts'o: https://lore.kernel.org/linux-nfs/YICB3wiptvvtTeA5@mit.edu/

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

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


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

погодите, а если бы кто-нибудь из проверяемых ментейнеров (которых не уведомляли бы, ибо, что это за проверка) обиделся бы, в таком случае, уже на Линуса и послал бы всех к чертям? Что это вы на мне тут опыты проводите?
После истории с RMS видно, какие все сейчас ранимые и обидчивые

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

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

Что-то мне подсказывает, что это только начало истории, и впереди будет много интересного.
а вместо этого свежекрашенную стенку гладит грязным веником
Немного не так: «исследователь» вместо чистой кисти подарил грязный веник. А красящий стену не проверил подарок, сходу принял его и запачкал стену. При этом, считается, что стену очень трудно запачкать, потому что там всё с открытым исходным кодом, все кисточки на виду, и грязный веник сразу же заметят.
Грязный веник подали когда было уже темно, красящий стену устал, да еще и доверял помощнику как профессионалу…
Что значит «темно» и «устал»? А отдохнуть и дождаться утра — нельзя? Кто-то торопит с выпуском нового ядра? На мой взгляд, работа с ядром ОС должна быть неспешной и как можно более надёжной.

В смысле личных отношений и личного доверия, «эксперимент» не слишком этичный. Но с т.з. интересов дела, с т.з. устранения организационных косяков — экспериментаторов наградить нужно, а не банить их.
ИМХО, тут неэтичность исследования, если эти кривые патчи действительно попали в ядро, или если их нельзя просто так взять и откатить, если они породили своим появлением новые патчи от других разработчиков.
Т.е., геморроя исследователи, конечно, добавили. Но такая реакция больше похоже на обиду из-за того, что ментейнерам показали, что они не святые полубоги на олимпе.

ну вот если у меня в какой-то мой проект кто-то такой эксперимент проведёт, то я его тоже стану игнорировать в мерджах. Потому что ему "for fun", а у меня серьёзное напряжение мозга.

так это не «for fun» же.
Наверное, можно было провести такой же эксперимент, тупо изучая появление чужих бажных коммитов и степень их одобрения ментейнерами. Но тут тоже можно придраться: вы видели, что тут баг и никому не сказали, а похихикивая писали свою статейку поганую…

Это и называется 'for fun'. Читайте оригинал. Они присылали дурные патчи, утверждая, что это результат исправления ошибок, найденных статическими анализаторами. Мейнтейнеры с ними не соглашались, они настаивали.


Т.е. это реально саботаж чужой работы.

у нас разное понимание термина «for fun».
Если изучалась возможность проникновения кривого патча в ядро, то, да, одна из задач — увиливать от закономерных вопросов ментейнера. Чтобы он тебя не забанил и ты мог продолжать исследование.
А по мне, «for fun» — это когда мамкин кулхацкер шлет rm -rf в ядро, чтобы похвастаться перед пацанами на переменке
В общем проведенное исследование полезно. Оно показало фундаментальную уязвимость открытого ПО от атак такого типа. Конечно, если вспомнить stuxnet, то и не открытое ПО подвержено такого вида атакам, но думаю на это надо гораздо больше ресурсов.
ИМХО
Думаю таким путем в ядро уже давно завезены «нужные» дыры. Прото про это не сильно хочется думать, потому что не понятно что с этим делать.
Оно показало фундаментальную уязвимость открытого ПО от атак такого типа.

Любого ПО тогда уж, хоть открытого хоть закрытого. Такого "исследователя" всегда же могут заслать конкуренты, или купить уже имеющегося. Ну, теоретически же могут? Могут. Значит, "фундаментальная уязвимость" наличествует.
Хуже того, это не только ПО касается, но и любых других вопросов где взаимодействуют два и более человек. Начиная с выбора свежей зеленушки и прочей еды качественной на рынке. Фундаментальная уязвимость человеков и доверия. Причём веками, а то и тысячелетиями, известная. Просто в чуть новой форме. И не повод расслабляться, и не повод поднимать панику.

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

citation needed
Особенно на фоне того, что в закрытое ПО "дверь" могут внести секретным запрещённым и к разглашению, и к "канарейке", обращением органов. Более чем в одной крупной стране "первого ранга". Так что Ваше утверждение "больше людей смогут" совершенно не очевидно.

В смысле? ) Органы могут внести бекдоры только в ПО созданное фирмой в своей юрисдикции(без насилия так сказать), в открытое ПО может же любая спецслужба внести)

Между "могут попытаться" и "могут успешно внести" есть разница. А вот то, что, как Вы утверждаете, "в открытое ПО внести легче" — ещё требуется доказать. Потому что в своей юрисдикции в закрытое внести могут в 100% нужным им случаев.

Так разве исследование не доказало как раз что можно внести?

Только вот Вы утверждаете, что


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

чего из обсуждаемой статьи ну никак не следует, потому что сравнение "куда проще занести бэкдур, в опенсурс или проприетарный код" там не рассматривается вообще. Так что, всё ещё citation needed.

не думаю, просто цена быть пойманным, в корпоративном секторе немного другая. Но с другой стороны stuxnet встраивали практически сами производители, но за отдельные деньги, и по отдельному контракту.
Так что, то была не атака, а так вовремя встроенный код
Эксперементаторам нужно было не статью в паблик релизить, а как только они закончили свои грязные делишки — дать списки коммитов мейнтейнерам, описать баги и бекдоры и только после отзыва коммитов — релизить статью.

Да. И извиниться. Даже если цели преследовали благие и важно было не предупреждать о опыте для чистоты.

Оба автора (аспирант и его профессор) — китайцы, которые изначально учились в материковом Китае. Учитывая нагнетаемую в США и не только синофобию и небезосновательное опасение по отношению к спецслужбам Китая эти два товарищи поступили сквернейшим образом.
Так мож у них задание было?
Получается непродолжительная 'грязноватая' рекламная кампания GNU/Linux.

Сначала маркет.петиция вокруг WIn7
Фонд свободного программного обеспечения (Free Software Foundation) отправил в компанию Microsoft посылку с пустым жестким диском и распечаткой подписей более тринадцати тысяч пользователей, которые поддерживали петицию Фонда СПО. Планируется, что после получения такого подарка специалисты Microsoft скопируют на этот диск исходный код Windows 7 и отправят обратно в Фонд СПО
Источник

GNU: Шумиха со Столлманом.
Linux: Шумиха с ядром.
Да, с той лишь поправкой, что в столовой регулярно смертельные случаи отравлений.
Представьте, на скольких устройствах, от которых зависит жизнь человека, установлен Linux.
UFO just landed and posted this here

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

UFO just landed and posted this here
Их изменения, связанные с исследованием, не попадали в код (по их заявлениям).
Авторы исследования утверждают, что в своей работе они обобщили данные о 138 патчах, вносящих ошибки, но не связанных с участниками исследования. Попытки же отправки собственных патчей с ошибками ограничивались email-перепиской, и подобные изменения не достигли стадии Git-коммита в какую-либо ветку ядра (если после отправки патча по email мэйнтейнер считал патч нормальным, то его просили не включать изменение так как там ошибка, после чего присылали правильный патч).

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

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

Какая ОС, по вашему мнению, не "решето" и гарантирует защиту от backdoor'ов?

Очевидно, только та, которой не существует

Любая решето, вопрос размера дырок. Просто где-то нужны дырки поменьше, а где-то удобство и простота. Некоторые риски надо диверсифицировать, а на некоторые можно забить, и не переживать.

Эксперимент хоть и не этичный, но он реальной важный, и чистота эксперимента здесь очень важна.

IMHO, реальная важность неэтичного эксперимента слегка переоценена в свете вашего:


Любая решето, вопрос размера дырок.

"Экспериментаторы" подпортили себе репутацию и подставили свой универ, выясняя, что "вода мокрая".

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

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

Так их же обнаружили:


Kroah-Hartman, normally a man who is the epitome of politeness, lost his cool when these patches were sent as it needlessly created additional work for him. He maintains the stable line of kernels.

Или коммиты с уязвимостями попали в ядро?
Опять же, если они бы сумели внедрить RCE и показать, что это работает на свежих дистрибутивах, например Debian (пусть testing) и CentOS, тогда это причина задуматься.

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

Конечно, предварительно они должны были заявить мейнтейнерам, а уже потом написать статью, когда баги убраны.
Но это напоминает известный эпизод с сетевым стеком OpenBSD.
И показывает, что История не учит ничему.
Возможно, что такой скандал всё же заставит людей подумать над созданием команды для тестирования на уязвимости.
Думаю, желающие поучаствовать найдутся, и важность их работы не меньше, чем у разработчиков.

Похоже, что там были не только баги, а ещё и китайский код: 'Qiushi Wu and Kangjie Lu published the paper in question, which is titled "On the feasibility of stealthily introducing vulnerabilities in open-source software via hypocrite commits"'.


Это укладывается в то, что озвучил мейнтейнер: "these patches were sent as it needlessly created additional work for him".
Вот мужик и сорвался...

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

Sign up to leave a comment.

Other news