Конфликт из-за поставки устаревшей версии XScreenSaver в Debian

Мэтью Гаррет (Matthew Garrett), известный разработчик ядра Linux и один из директоров Фонда Свободного ПО, в своё время получивший от Фонда СПО премию за вклад в развитие свободного ПО, обратил внимание на обратную сторону методов обеспечения стабильности в Debian.

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

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

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

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

0_1459925318.png

В Debian используется версия XScreenSaver, выпущенная в 2014 году. В настоящее время в системе отслеживания ошибок Debian размещено около ста сообщений о проблемах, которые никак не решаются. Не получив возможности добиться исправления проблемы в дистрибутиве, пользователи направляют запросы на исправления в upstream, чем создают дополнительную нагрузку на разработчиков основных проектов. Кроме того, незаслуженно страдает репутация проектов, например, в случае XScreenSaver пользователи пытаются добиться устранения проблем, которые уже годы как исправлены в основном проекте.

©  OpenNet