Annoncer
Ordinateurs

Ruby corrige des failles RCE dans le moteur Onigmo

Les versions Ruby 4.0.9, 3.4.12 et 3.3.13 corrigent des doubles libérations et des dépassements d'entiers permettant une exécution de code à distance.

L'équipe de développement de Ruby a publié le 23 octobre 2026 (UTC) des mises à jour de sécurité qui corrigent plusieurs problèmes dans Onigmo, le moteur d'expressions régulières utilisé par le langage, selon forest.watch.impress.co.jp. GitLab, à l'origine du signalement, estime que ces failles peuvent permettre une exécution de code à distance sur les serveurs GitLab.

Quatre numéros CVE ont été attribués : CVE-2026-89078, CVE-2026-93577, CVE-2026-97229 et CVE-2026-110264. Les problèmes recensés comprennent une double libération dans l'analyseur d'expressions régulières et des dépassements d'entiers dans le compilateur, y compris le compilateur d'expressions régulières utilisé pour la CI/CD.

Des motifs d'expressions régulières spécialement conçus peuvent corrompre la mémoire lorsque Ruby les compile, ce qui peut ouvrir la voie à une exécution de code à distance. Les applications concernées sont celles qui compilent des expressions régulières à partir de chaînes contrôlées par un attaquant, par exemple via Regexp.new, Regexp.union ou Regexp.compile, ou lorsqu'une telle chaîne est interpolée dans un littéral d'expression régulière. Les applications qui n'utilisent que des expressions régulières écrites par les développeurs ne sont pas affectées.

Mises à jour et mesures de contournement

Les versions corrigées sont Ruby 4.0.9, Ruby 3.4.12 et Ruby 3.3.13. Dans cette dernière, la bibliothèque resolv intégrée a également été mise à jour vers la version 0.3.2. L'équipe Ruby précise que les délais d'expiration et les limites de longueur de motif ne constituent pas des mesures d'atténuation fiables.

Les utilisateurs qui ne peuvent pas mettre à jour immédiatement sont invités à éviter de compiler des expressions régulières à partir d'entrées non fiables. L'équipe indique par ailleurs qu'elle n'a pas encore décidé de traiter elle-même ces problèmes comme des vulnérabilités et qu'elle n'a pas demandé de numéros CVE : il convient donc, pour l'instant, de s'appuyer sur les numéros CVE émis par GitLab.

GitLab avait déjà corrigé la version de Ruby intégrée à GitLab v19.4.1, v19.4.2 et v19.5.1, et ces correctifs ont désormais été intégrés aux branches de publication de Ruby. Ruby a été lancé en 1993 par Yukihiro Matsumoto, dit Matz, et continue d'être développé en open source.

En bref

Quelles versions de Ruby corrigent les failles Onigmo ?

Ruby 4.0.9, Ruby 3.4.12 et Ruby 3.3.13, publiées le 23 octobre 2026.

Quelles applications sont concernées ?

Celles qui compilent des expressions régulières à partir de chaînes contrôlées par un attaquant, par exemple via Regexp.new, Regexp.union ou Regexp.compile. Celles qui n'utilisent que des expressions régulières écrites par les développeurs ne sont pas affectées.

Quels numéros CVE suivre ?

Les numéros émis par GitLab : CVE-2026-89078, CVE-2026-93577, CVE-2026-97229 et CVE-2026-110264.

Source