Ruby: Probleme beim Umwandeln von Strings

Eine Schwachstelle im Ruby-Interpreter hat zur Folge, dass ein entfernter Angreife Befehle mit höheren Berechtigungen ausführen kann.

Ursache ist ein Heap-Overflow-Fehler, der beim Umwandeln von Strings in Gleitkommazahlen auftritt. Das heißt, die folgenden Anweisungen sind anfällig für die Sicherheitslücke:

untrusted_data.to_f
JSON.parse untrusted_data

Dabei ist “untrusted_data” eine vom Angreifer bereitgestellte Zeichenkette, die den Overflow in der Konvertierungsfunktion auslöst. Der verantwortliche Programmierfehler befindet sich in der Quelltextdatei “trunk/util.c”. Dort ist die Funktion “ruby_strtod()” fehlerhaft.

Betroffen sind die Versionen 1.8.x, 1.9.x und 2.x jeweils vor Version 1.9.3 Patchlevel 484, 2.0.0 Patchlevel 353 und 2.1.0 Preview2.

Nach oben