Ruby-Schwachstellen

In der Ruby-Programmiersprache wurden kürzlich zwei Sicherheitsprobleme entdeckt.
Die erste Sicherheitslücke hat zur Folge, dass ein entfernter Angreifer Befehle auf dem System mit höheren Rechten ausführen kann. Der verantwortliche Programmierfehler liegt in der encodes()-Funktion (pack.c-Datei). Dort befindet sich ein Off-by-one Stack Overflow, der von dem Angreifer durch spezielle Eingaben ausgelöst werden kann. Der Overflow tritt intern beim Verarbeiten der

char buff[4096];

Variablen auf, die statisch auf dem Stack alloziert ist.
Ein zweites Sicherheitsleck in Ruby hat zur Folge, dass ein entfernter Angreifer auch Denial-of-Service-Attacken durchführen kann. Das Problem liegt hier in dem REXML-Parser und tritt auf beim Verarbeiten speziell konstruierter XML-Dokumente. In diesem Fall alloziert der REXML-Parser allen verfügbare Speicher des Systems.

Nach oben