08.12.2022

Критика политики Фонда СПО по отношению к прошивкам

Ариадна Конилл (Ariadne Conill), создатель музыкального проигрывателя Audacious, инициатор разработки протокола IRCv3 и лидер команды по обеспечению безопасности Alpine Linux, выступила с критикой политики Фонда СПО в отношении пропритарных прошивок и микрокода, а также правил инициативы «Respect Your Freedom«, направленной на сертификацию устройств, соответствующих требованиям обеспечения приватности и свободы пользователей. По мнению Ариадны, политика Фонда ограничивает пользователей устаревшим оборудованием, стимулирует производителей, желающих получить сертификат, к переусложнению аппаратной архитектуры, не способствует разработке свободных альтернатив проприетарным прошивкам и мешает использованию должных методов обеспечения безопасности.

Проблема вызвана тем, что сертификат «Respect Your Freedom» может получить только устройство, всё поставляемое программное обеспечение в котором должно быть свободным, включая прошивки, загружаемые с использованием основного CPU. При этом закрытыми могут оставаться прошивки, используемые на дополнительных встроенных процессорах, если они не подразумевают обновления после попадания устройства в руки потребителя. Например, устройство должно поставляться со свободным BIOS, но загружаемый чипсетом микрокод к CPU, прошивки к устройствам ввода/вывода и конфигурация внутренних связей FPGA могут оставаться закрытыми.

Создаётся ситуация, что если проприетарная прошивка загружается в процессе инициализации операционной системой, оборудование не может получить сертификат Фонда СПО, но если прошивка для тех же целей загружается отдельным чипом — устройство может быть сертифицировано. Подобный подход рассматривается как ущербный, так как в первом случае прошивка на виду, пользователь контролирует её загрузку, знает о ней, может провести независимый аудит безопасности и в случае появления свободного аналога легко заменить. Во втором же случае, прошивка представляет собой чёрный ящик, который проблематично проверить и о наличии которого пользователь может не догадываться, ложно полагая, что все программное обеспечение под его контролем.

В качестве примера манипуляций, нацеленных на получение сертификата Respects Your Freedom, приводится смартфон Librem 5, разработчики которого чтобы получить и использовать в маркетинговых целях метку соответствия требованиям Фонда СПО использовали отдельный процессор для инициализации оборудования и загрузки прошивок. После завершения стадии инициализации управление передавалось основному CPU, а вспомогательный процессор отключался. В итоге, формально сертификат мог быть получен, так как ядро и BIOS не загружали бинарные блобы, но кроме внесения лишних усложнений ничего бы не изменилось. Интересно, что в итоге все эти усложнения оказались напрасны и компания Purism так и не смогла получить сертификат.

Проблемы с безопасностью и стабильностью также создают рекомендации Фонда СПО по использованию ядра Linux Libre и прошивки Libreboot, очищенных от загружаемых в оборудование блобов. Следование данным рекомендациям может приводить к возникновению различного рода сбоев, а скрытие предупреждений о необходимости установки обновления прошивок к неисправленным ошибкам и возможным проблемам с безопасностью (например, без обновления микрокода система останется уязвимой для атак класса Meltdown и Spectre). Отключение обновления микрокода воспринимается как абсурд, в условиях, что встроенная версия того же микрокода, в которой остаются уязвимости и неисправленные ошибки, загружается в процессе инициализации чипа.

Другая претензия касается невозможности получения сертификата Respect Your Freedom для современного оборудования (самая новая модель из сертифицированных ноутбуков датирована 2009 годом). Сертификации более новых устройств мешает наличие технологий, подобных Intel ME. Например, ноутбук Framework поставляется с открытой прошивкой и ориентирован на полную подконтрольность пользователю, но навряд ли Фонд СПО когда-либо рекомендует его из-за использования процессоров Intel с технологией Intel ME (для отключения механизма Intel Management Engine можно удалить из прошивки все модули Intel ME, не связанные с начальной инициализацией CPU, и деактивировать основной контроллер Intel ME, воспользовавшись недокументированной опцией, что например, делают компании System76 и Purism в своих ноутбуках).

Примером также является ноутбук Novena, развиваемый в соответствии с принципами Open Hardware и поставляемый с открытым кодом драйверов и прошивок. Так как для работы GPU и WiFi в SoC Freescale i.MX 6 была необходима загрузка блобов, несмотря на то, что в разработке находились ещё не готовые свободные варианты данных блобов, для сертификации Novena Фонд СПО потребовал механически отключить данные компоненты. Свободные замены в конце-концов были созданы и предоставлены пользователям, но сертификация лишила бы пользователей возможности их использования, так как GPU и WiFi, для которых на момент сертификации не было свободных прошивок, при поставке с сертификатом Respect Your Freedom должны были бы быть физически отключены. В итоге разработчик Novena отказался от прохождения сертификата Respect Your Freedom, а пользователи получили полноценное, а не урезанное устройство.

Источник.