Ce que la plupart ont mal lu
Deux débordements de tas sont apparus dans le moteur de script de nginx à quelques mois d’intervalle, et ils se ressemblent assez pour être confondus. Ce ne sont pas les mêmes — et, c’est là que ça compte, la version qui corrige l’une exécute encore l’autre.
Lisez les deux dernières lignes ensemble. Rift est corrigée en 1.30.1. La CVE-2026-42533 touche tout jusqu’à 1.31.2. Un serveur passé en 1.30.1 en mai, coché comme « corrigé », est en plein dans la plage.
Si votre dernière mise à jour nginx a été motivée par la couverture de Rift, le travail n’est pas fini.
La faille
Les deux bugs viennent de la même conception. nginx évalue les expressions de script en deux passes : la première mesure la taille de tampon nécessaire, la seconde y écrit. Quand l’état sur lequel s’appuie le moteur change entre les deux passes, l’écriture dépasse la taille mesurée, et le débordement atterrit sur le tas. Rift y parvenait via un drapeau périmé. Celle-ci y parvient via l’état des captures PCRE : il n’existe pas de sauvegarde-restauration autour, donc les captures d’une évaluation écrasent celles d’une autre. Le déclenchement exige une forme de configuration précise : un blocmap fondé sur une regex, et une directive qui référence à la fois une capture de regex et la variable de sortie du map dans la même expression. Ce n’est pas exotique. C’est une façon normale d’écrire une règle de routage.
Notez l’écart de sévérité. nginx classe celle-ci en major et Rift en medium, quand plusieurs trackers tiers ont noté Rift à 9,2 en CVSS. Les scores éditeur et tiers ne mesurent pas la même chose ; ce sur quoi agir, ce sont les plages de versions ci-dessus, pas le chiffre.
Mesurer votre exposition
La quatrième ligne mérite d’insister. Un
nginx:1.30.1 épinglé dans un Dockerfile ne se met pas à jour tout seul : seule une reconstruction le fait bouger. La preuve de concept complète publiée était calibrée spécifiquement pour des déploiements Docker — image de base, instantané de paquets et révision des sources.
Vérifier et mettre à jour
Déterminez ce que vous exécutez réellement, qui n’est pas toujours ce que croit votre gestionnaire de paquets :Si vous ne pouvez pas mettre à jour tout de suite
Aucun réglage de configuration ne désactive la faille. Ce que vous pouvez faire, c’est retirer le déclencheur : si un blocmap bâti sur une regex alimente une variable utilisée aux côtés d’une capture de regex dans la même directive, réécrire cette expression ferme le chemin en attendant le correctif.
Repérez les candidats :

