Update Framework, средство для безопасной проверки и загрузки обновлений.

Было объявлено о выпуск новой версии 1.0 The Update Framework, более известный как TUF, который характеризуется тем, что является фреймворком, предоставляющим средства для безопасной проверки и загрузки обновлений.

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

О ТУФ

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

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

Для интеграции с приложениями и системами установки обновлений предусмотрен низкоуровневый API для доступа к метаданным и реализация высокоуровневого клиентского API ngclient, готового к интеграции приложений.

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

Защита от компрометации инфраструктуры поставщика программного обеспечения достигается за счет ведения отдельных поддающихся проверке записей о состоянии репозитория или приложения.

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

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

В системе используется иерархия ролей со своими ключами, например, роль root подписывает ключи для ролей, отвечающих за метаданные в репозитории, данные о времени формирования обновлений и целевых сборок, в свою очередь, роль, отвечающая за сборки, подписывает роли, связанные с сертификацией доставленные файлы.

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

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

Опубликованная версия TUF 1.0.0 предлагает полностью переписанную эталонную реализацию. и стабилизированная версия спецификации TUF, которую вы можете использовать в качестве готового примера при создании собственных реализаций или интеграции в свои проекты.

Новая реализация содержит значительно меньше кода (1400 строк вместо 4700), проще в обслуживании и легко расширяется, например, если нужно добавить поддержку определенных сетевых стеков, систем хранения или алгоритмов шифрования.

Проект разрабатывается под эгидой Linux Foundation. и используется для повышения безопасности доставки обновлений в таких проектах, как Docker, Fuchsia, Automotive Grade Linux, Bottlerocket и PyPI (в ближайшее время ожидается включение проверки загрузки и метаданных в PyPI).

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


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.