Разработчики Fedora Linux столкнулись (https://lists.fedoraproject.org/archives/list/devel-announce.../) с заслуживающей внимания проблемой, связанной с ненадлежащей работой предоставляемых в GCC дополнительных проверок для блокирования проблем, вызванных ошибками форматирования строки. Начиная с Fedora 21 пакеты в дистрибутиве собираются (https://fedoraproject.org/wiki/Changes/FormatSecurity) с опцией "-Werror=format-security", которая приводит к выводу ошибки в случае выявления компилятором GCC проблем с форматированием строк, которые потенциально могут привести к появлению уязвимостей.
В процессе тестирования новой ветки Fedora, в которой будет задействован GCC 7 (релиз GCC 7 ожидается в апреле), разработчики столкнулись с ошибкой, вызванной тем, что флаг "-Werror=format-security" игнорировался при определённом стечении обстоятельств. В итоге возникла ситуация когда массовая пересборка всех пакетов проходила без ошибок, но фактически сборка ряда пакетов должна была завершиться ошибкой, чего не произошло и проблемы с форматированием строк в данных пакетах оставались незамеченными.
Проблема всплыла только после внесения в GCC 7 изменения (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79677), исправляющего ошибку (https://bugzilla.redhat.com/show_bug.cgi?id=1425825) разбора параметров командной строки (одновременное указание "-Werror=format-security" и "-Wall" или "-Wformat" приводило к игнорированию "-Werror=format-security"). Ошибка присутствует достаточно давно и проявлялась (https://gcc.gnu.org/ml/gcc-bugs/2012-04/msg02134.html) как минимум в ветке GCC 4. При обновлении GCC 7 некоторые пакеты в Fedora перестали собираться и уполномоченным разработчикам пришлось в экстренном порядке вносить правки (как правило замена printf(variable) на printf("%s", variable)), не дожидаясь реакции мэйнтейнеров.
Дополнительно можно отметить решение (https://lists.fedoraproject.org/archives/list/devel-announce.../) отложить альфа-выпуск Fedora 26 на одну неделю в связи с невыполнением критериев качества.
В частности, в репозитории остаются неисправленными 4 проблемы (https://qa.fedoraproject.org/blockerbugs/milestone/26/alpha/...), которые отнесены к категории блокирующих выпуск: проблемы с настройкой ssh-ключей в cloud-init, сбой в запуске gnome-initial-setup, если в инсталляторе не был добавлен пользователь, крах пакета с ядром на Allwinner SoC, проблемы с настройкой FreeIPA в инсталляторе. В качестве новой даты релиза Fedora 26 названо (https://fedoraproject.org/wiki/Releases/26/Schedule) 20 июня, вместо изначально запланированного 6 июня. Напомним, что начиная с Fedora 27 подготовка альфа-выпуска будет упразднена (https://www.opennet.ru/opennews/art.shtml?num=46173).
URL: https://lists.fedoraproject.org/archives/list/devel-announce.../
Новость: https://www.opennet.ru/opennews/art.shtml?num=46224