Ruby behebt drei Regex-Bugs: GitLab-Instanzen und betroffene Anwendungen müssen aktualisiert werden

Ruby hat drei Fehler in der integrierten Engine Onigmo behoben. Die am 23. Oktober vorliegende Analyse ordnet die Fehler vier kritischen Remote-Code-Execution-Lücken zu, die GitLab im vergangenen Monat geschlossen hat. Betroffen sind vor allem Anwendungen, die reguläre Ausdrücke aus Eingaben von Angreifern erzeugen; für selbstverwaltete GitLab-Instanzen ist zusätzlich das passende GitLab-Update erforderlich.

Auslöser ist ein speziell präpariertes Muster, das beim Kompilieren eines regulären Ausdrucks Speicher beschädigen kann. Der Bericht beschreibt als mögliche Folge die Ausführung von Code auf den Servern der betroffenen Anwendung. Das Risiko beschränkt sich damit nicht auf GitLab: Ruby nennt grundsätzlich jede Anwendung als betroffen, die ein Muster aus kontrolliertem Angreifertext kompiliert.

Relevant ist eine konkrete Nutzung von Ruby: Programme müssen dafür eine solche Zeichenkette an Regexp.new, Regexp.union oder Regexp.compile übergeben oder die Eingabe per Interpolation in ein Muster einsetzen. Anwendungen mit ausschließlich von ihren Entwicklern festgelegten regulären Ausdrücken sind laut der Analyse nicht betroffen. Betreiber sollten deshalb zunächst prüfen, ob untrusted input in diesen Pfad gelangt.

Für Ruby 4.0 ist Version 4.0.9 vorgesehen, für Ruby 3.4 Version 3.4.12 und für Ruby 3.3 Version 3.3.13. Die Version 4.0.8 reicht nicht aus, weil sie eine der Schwachstellen nicht behebt. Ruby 3.2 und ältere Versionen erhalten laut Bericht keinen Fix; Ruby 3.2 ist seit dem 1. April 2026 aus dem Support.

Wer noch nicht aktualisieren kann, soll die Kompilierung regulärer Ausdrücke aus nicht vertrauenswürdigen Eingaben stoppen. Zwei naheliegende Maßnahmen gelten dagegen nicht als verlässlich: Regexp.timeout verhindert die Fehler nicht, und auch eine Begrenzung der Musterlänge schützt nicht zuverlässig, weil kurze Muster die Bugs auslösen können.

Für GitLab ist die Lage besonders relevant, weil die Plattform reguläre Ausdrücke aus Nutzereingaben verarbeitet, etwa in CI/CD-Konfigurationen. Vier CVEs wurden zwischen dem 23. September und dem 21. Oktober veröffentlicht. Die beiden im Oktober veröffentlichten Lücken CVE-2026-97229 und CVE-2026-110264 benötigen laut Bericht kein Konto; die zweite erreicht jede GitLab-Version ab 7.0.

Betreiber selbstverwalteter GitLab-Instanzen müssen die Version einspielen, die CVE-2026-110264 behebt. GitLab hat diesen Fix am 21. Oktober veröffentlicht und bis Version 18.11.13 zurückportiert. GitLab.com läuft laut Bericht bereits mit einer korrigierten Version; für selbstverwaltete Systeme gibt es außerdem Erkennungsregeln, mit denen Administratoren nach Hinweisen auf Ausnutzungsversuche suchen können.

Eine zusätzliche Einschränkung betrifft die Erkennung: Ruby hat für die eigenen Fixes bislang keine eigenen CVE-Nummern beantragt. Die GitLab-CVE-Einträge nennen nur GitLab als betroffenes Produkt. Scanner, die ausschließlich CVE-Daten gegen installierte Ruby-Versionen abgleichen, können die betroffene Runtime deshalb übersehen.

Quellen

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert