Грег Кроах-Хартман, який відповідає за підтримку стабільної гілки ядра Linux дав про це знати П’ю вже кілька днів рішення про відмову в будь-яких змінах від університету Міннесоти до ядра Linux, а також скасувати всі раніше прийняті виправлення та перевірити їх.
Причиною блокади стала діяльність дослідницької групи що вивчає можливість просування прихованих вразливостей у коді проектів з відкритим кодом, оскільки ця група надіслала виправлення, що включають помилки різного типу.
З огляду на контекст використання вказівника, це не мало сенсу, і метою подання виправлення було дослідити, чи помилкова зміна пройде перевірку розробниками ядра.
На додаток до цього патчу, Були й інші спроби розробників з Університету Міннесоти внести сумнівні зміни в ядро, у тому числі пов’язані з додаванням прихованих уразливостей.
Вкладач, який надіслав виправлення, спробував виправдатись тестування нового статичного аналізатора, і зміна була підготовлена на основі результатів випробувань на ньому.
перо Грег звернув увагу на те, що пропоновані виправлення не є типовими помилок, виявлених статичними аналізаторами, а надіслані виправлення нічого не вирішують. Оскільки група дослідників, про яку йде мова, вже намагалася впровадити рішення із прихованими вразливими місцями, очевидно, що вони продовжували свої експерименти у спільноті розробників ядра.
Цікаво, що раніше керівник експериментальної групи брав участь у виправленнях законних вразливостей, таких як витік інформації на стеку USB (CVE-2016-4482) та мережах (CVE-2016-4485).
У дослідженні прихованого розповсюдження вразливостей команда університету Міннесоти наводить приклад вразливості CVE-2019-12819, спричиненої виправленням, яке було прийнято в ядро в 2014 році. Рішення додало виклик put_device до блоку помилок обробки в mdio_bus, але через п'ять років було виявлено, що така маніпуляція призведе до вільного доступу до блоку пам'яті після використання.
У той же час автори дослідження стверджують, що у своїй роботі вони узагальнили дані про 138 патчів, які вносять помилки, але не пов'язані з учасниками дослідження.
Спроби подати власні виправлення помилок обмежувались листуванням і такі зміни не потрапили на стадію коміту Git у будь-якій гілці ядра (якщо після надсилання виправлення електронною поштою супровідник виявив виправлення нормальним, то вас попросили не включати зміни, оскільки є помилка, після чого правильно патч був відправлений).
Також, судячи з активності автора критикованого виправлення, він давно просуває патчі до різних підсистем ядра. Наприклад, драйвери radeon і nouveau нещодавно прийняли зміни до помилок блоку pm_runtime_put_autosuspend (dev-> dev), це може призвести до використання буфера після звільнення пов'язаної пам'яті.
Також згадується, що Грег відкотив 190 пов'язаних комітів і розпочав новий огляд. Проблема полягає в тому, що учасники @ umn.edu не тільки експериментували з просуванням сумнівних виправлень, вони також виправляли фактичні вразливості, а відкат змін може призвести до повернення раніше виправлених проблем безпеки. Деякі супровідники вже перевірили невнесені зміни і не виявили жодних проблем, але також були виправлення помилок.
Кафедра комп'ютерних наук Університету Міннесоти видав заяву оголосивши про зупинення розслідування у цій галузі, ініціювання перевірки використовуваних методів та проведення розслідування щодо того, як це розслідування було затверджено. Звіт про результати буде переданий спільноті.
Нарешті Грег згадує, що спостерігав за реакціями громади, а також враховував процес вивчення способів обдурити процес розгляду. На думку Грега, проведення таких експериментів з метою внесення шкідливих змін є неприйнятним і неетичним.
Фуенте: https://lkml.org