Миллиард манифестов против дрейфа

Chainguard за шесть месяцев увеличила выпуск с 500 миллионов до более чем 1 миллиарда манифестов. За этой цифрой стоят свыше 3 000 уникальных контейнерных образов и более 675 000 их версий. Такой объём нужен не ради рекорда: каждый новый CVE, релиз зависимости или исправленный компонент требует заново собрать связанные артефакты, проверить их, подписать и доставить пользователям. Без постоянной пересборки даже недавно защищённый образ начинает устаревать.
Миллиард манифестов против дрейфа
Изображение носит иллюстративный характер

Chainguard OS устроена как специализированная Linux-система для облачных нагрузок с полным контролем цепочки поставок ПО. Вместо крупных релизов примерно раз в полгода здесь действует rolling-release: интеграция, доставка, нанообновления и пересборки идут непрерывно, а новые артефакты выходят в течение всего дня. Исправления безопасности, функциональные изменения и улучшения производительности поэтому не ждут следующего календарного выпуска.
Производственный контур Chainguard Factory собирает каждый артефакт из исходного кода и добавляет несколько защитных слоёв. Результат получает подтверждение происхождения SLSA Level 3, подпись Sigstore и полный SBOM, то есть перечень программных компонентов. Декларативные воспроизводимые сборки не оставляют места скрытому состоянию и уменьшают расхождение между заданной конфигурацией и фактическим продуктом. Но одной воспроизводимости мало: система должна сама понимать, когда пересобирать Python, Go, go:1.26.5, nginx, libc и тысячи зависимых артефактов.
Первая версия Factory принимала описание пакета, разрешала зависимости, собирала его, подписывала и публиковала. По мере роста каталога событийная архитектура превратилась во внутренне названный «каскадный беспорядок». SRE захлёбывались в уведомлениях, очереди ломались, одинаковые сборки падали повторно, рабочие задания конфликтовали, а частичные сбои приходилось разбирать вручную. Конфигурации тем временем дрейфовали и ветшали.
Так возник «порочный круг CVE»: инженеры постоянно устраняли очередное ухудшение, но не успевали опередить уязвимости. Factory 2.0 меняет сам принцип работы с помощью DriftlessAF, открытого агентного фреймворка Chainguard. Детерминированная автоматизация остаётся основой, а агентное согласование с применением ИИ берёт на себя ситуации, где жёсткого сценария уже недостаточно.
DriftlessAF непрерывно сравнивает желаемое состояние с реальным. Разрыв может появиться из-за нового CVE, свежей версии upstream-пакета, принятой инженерной практики или другого требования. Множество ботов-согласователей получает задания из общей очереди, сверяет репозитории кода, ленты безопасности и прочие источники, после чего двигает каталог к заданному состоянию. Задача описывает конечный результат, а не хрупкое одноразовое действие, поэтому неудачную работу можно отбросить или повторить: отдельный шаг вправе сорваться, система всё равно продолжит сближение с целью.
ИИ подключается там, где требуется разбор неструктурированной ситуации. Например, нужно понять роль компонента, появившегося в минорном релизе, перенести исправление CVE на старую версию пакета или языка либо применить удачный прежний патч к другим устаревшим веткам. Агент работает через структурированные проверяемые инструменты, что ограничивает выдуманные и недействительные результаты. Если патч старой библиотеки проходит тест обратного переноса, этот опыт можно использовать при следующем исправлении.
Скорость пересборки стала частью модели безопасности. Атакующие применяют ИИ для поиска уязвимостей, создания эксплойтов, анализа графов зависимостей и связывания нескольких слабостей в рабочую цепочку атаки. Защитникам приходится сокращать собственный цикл как минимум тем же темпом. Каждый час между upstream-изменением и появлением пересобранного, подписанного и проверенного образа оставляет противнику дополнительное окно. Рост до более чем миллиарда манифестов показывает, что согласовательная модель уже работает в масштабе, соответствующем этой гонке.
Инженеры Chainguard теперь выступают экспертами для агентов, разбирают спорные изменения, совершенствуют инфраструктуру Factory и качество результатов. Освободившаяся ёмкость позволяет расширять каталог, включая Chainguard Libraries, Chainguard Agent Skills, Chainguard Actions и другие продукты, которые Factory собирает и сопровождает.
Следующий этап развития DriftlessAF предусматривает больше ботов-согласователей и источников для общей очереди. Chainguard намерена переводить новые части каталога в самовосстанавливающийся цикл и сокращать зависимость от прежнего событийного пути. Открытое ядро DriftlessAF позволяет другим командам применять этот подход к крупномасштабной автоматизации, а актуальный состав поставок доступен в каталоге контейнерных образов Chainguard; устройство системы раскрывают документация и технические материалы DriftlessAF.


Новое на сайте

Ссылка