Tous les articles

This Shit is Hard : La vie et la mort d'un CVE dans l'usine de Chainguard

Patrick Smyth, ingénieur principal des relations avec les développeurs

C'est le lundi précédant Thanksgiving, un matin doux à Cary, en Caroline du Nord. À 9 h 54, Keith Zantow, ingénieur chez Anchore, effectue une validation. Un peu moins d'un jour plus tard, le 25 novembre à 9 h 18, un avis de sécurité GitHub est diffusé.

La machine se met en marche.

La machine

Dans les deux heures qui suivent l'avis de sécurité, la Chainguard Factory signale qu'un nouveau correctif est disponible. Un correctif est mis en file d'attente.

Mercredi soir, des scanners sont lancés sur tous les paquets de l'usine en fonction de ces nouvelles informations. Une correspondance est détectée : k9s dépend du code vulnérable.

À 18 h 11, un problème est créé. Immédiatement, Driftless AF, le cadre agentique de Chainguard, se met en marche. Dans ce contexte, l'agent détient à la fois l'état actuel et l'état requis du code et s'efforce de les réconcilier. Quarante et une secondes plus tard, l'agent dépose un commentaire :

Il s'agit d'une vulnérabilité confirmée de haute gravité, et la correction est simple : faire passer Grype de la version 0.101.1 à la version 0.104.1.

Le problème reste dans la file d'attente toute la nuit. Il est 7 heures du matin, le jour de Thanksgiving. À New York, les chars de la parade s'alignent sur la Cinquième Avenue. Les tartes sortent du four et la dinde attend son tour.

À 7 h 20, le matin de Thanksgiving, le robot OctoSTS ouvre une demande d'extraction. Une ligne est ajoutée à k9s.yaml. Vingt-neuf contrôles CI sont exécutés. Onze minutes plus tard, le PR est fusionné. Puisque le PR est un saut de version et que tous les tests sont réussis, aucune intervention humaine n'est nécessaire. À 7h37, l'avis arrive sur le flux public : k9s 0.50.16-r4, fixed. Cela fait 46 heures que l'avis CVE a été diffusé sur la GHSA.

Dans six heures, les Packers affronteront les Lions, ce qui laisse beaucoup de temps pour la sauce aux airelles.

Novembre : Un mois à retenir

La CVE-2025-65965 n'était pas une CVE exceptionnelle : elle avait un taux de gravité élevé mais un rayon d'action relativement faible, et elle a été facilement corrigée en modifiant les versions. Ce qui était excellent, cependant, c'est que novembre 2025 a été le mois le plus important pour la détection et la remédiation de CVE dans l'histoire de Chainguard.

Au cours du mois, Chainguard a remédié à 2 960 CVE uniques, en triant 10 493 hits de scanners contre des paquets. Cela représente une augmentation de plus de 9 fois par rapport au mois d'octobre. Pendant cette période, Chainguard a respecté à 100 % son accord de niveau de service (SLA), qui exige que tous les CVE critiques soient remédiés dans les 7 jours et tous les CVE élevés, moyens et faibles dans les 14 jours.

Si le mois de novembre a été mémorable, ce n'est pas parce que nos chapeaux étaient en feu. Outre les congés pour les vacances aux États-Unis, nos ingénieurs avaient également besoin de temps pour se rendre à une réunion d'ingénierie et en revenir. Comment a-t-il été possible d'effectuer la plus grande restauration jamais réalisée sans un incendie à cinq alarmes ?

L'usine

L'usine est le cœur battant, rempli de YAML, de tout ce que nous faisons chez Chainguard. Fondamentalement, il s'agit d'un système de construction qui surveille plus de 10 000 projets open source. Lorsqu'une version est étiquetée en amont, ou que les flux GHSA ou NVD sont mis à jour, l'usine entre en action, récupérant les sources, vérifiant les sommes de contrôle, appliquant les règles de construction, reconstruisant, et testant, testant, testant. En outre, nous reconstruisons également tout projet qui dépend d'une reconstruction, et nous reconstruisons périodiquement le monde, simplement parce que cela fait du bien d'être en vie.

Grâce à Factory, les CVE sont remédiés chez Chainguard en deux jours en moyenne, et seulement 22 % des remédiations CVE nécessitent une intervention humaine directe. En 2026, avec l'arrivée de Factory v2 et de Driftless AF, nous prévoyons que ce chiffre continuera à baisser. Cela permet à nos ingénieurs de passer à un niveau supérieur, en prenant plus de temps pour concevoir des tests, affiner les processus et construire de manière plus sécurisée dès le départ, plutôt que de trier manuellement des CVE individuels.

Le Black Friday et au-delà

L'écrivain G.K. Chesterton a écrit un jour : "Le chaos est ennuyeux, parce que dans le chaos, le train peut effectivement aller n'importe où. Non, prenez vos livres de simple poésie et de prose ; laissez-moi lire un calendrier, avec des larmes de fierté". Chez Chainguard, nous préférons également l'ordre au chaos. Pour nous, une automatisation en douceur est de la pure poésie, et nous considérons chaque journée ennuyeuse pour nos clients comme une victoire.

À 23 h 15 (heure de l'Est), les constructions nocturnes de nos conteneurs Chainguard démarrent et les remédiations pour CVE-2025-65965 sont intégrées dans les images. Avant même que nous ayons pu déguster les restes de Thanksgiving ou planifier nos courses de vendredi dans les grandes surfaces, notre CVE a été remédié dans toutes les étiquettes et versions, prêt à être récupéré par nos clients le matin du Black Friday. Pendant la semaine de Thanksgiving, CVE-2025-65965 a été un CVE typique au sein d'un système atypiquement efficace : la Chainguard Factory. Que diriez-vous d'une bonne affaire ?

Share this article

Articles connexes

Vous souhaitez en savoir plus sur Chainguard?

Contactez-nous