Geschrieben von Quintus am 18.2.2011
Eine durch Symlink-Race-Conditions verursachte Sicherheitslücke in
FileUtils.remove_entry_secure
wurde entdeckt. Die Sicherheitslücke
erlaubt lokalen Nutzern beliebige Dateien und Verzeichnisse zu löschen.
Betroffene Versionen
- Ruby 1.8.6-p420 und alle vorherigen Versionen
- Ruby 1.8.7-p330 und alle vorherigen Versionen
- Entwicklerversionen von Ruby 1.8 (1.8.8-dev)
- Ruby 1.9.1-p430 und alle vorherigen Versionen
- Ruby 1.9.2-p136 und alle vorherigen Versionen
- Entwicklerversionen von Ruby 1.9 (1.9.3-dev)
Lösungen
Wir haben das Problem bereits gelöst; alle betroffenen Nutzer sollten ihre Ruby-Installation aktualisieren.
Nimm aber bitte zur Kenntnis, dass Symlink-Race-Attacks unvermeidbar sind, wenn eines der Elternverzeichnisse des Verzeichnisses, aus dem du löschen willst, jemand Unglaubwürdigem gehört. Um wirklich sicher zu sein, musst du sicherstellen, dass alle Elternverzeichnisse nicht von unglaubwürdigen Benutzern verschoben werden können. So sollten etwa Elternverzeichnisse nicht von unglaubwürdigen Nutzern besessen werden und sollten nicht für alle schreibbar sein (außer wenn das Sticky-Bit gesetzt ist).
Updates
- 1.8.7-p334 wurde zur Lösung des Problems veröffentlicht. Nutzern von 1.8.7 wird empfohlen, zu aktualisieren.
- 1.9.1-p431 wurde zur Lösung des Problems veröffentlicht. Nutzern von 1.9.1 wird empfohlen, zu aktualisieren.
- 1.9.2-p180 wurde zur Lösung des Problems veröffentlicht. Nutzern von 1.9.2 wird empfohlen, zu aktualisieren.
- Alle betroffenen 1.9er-Versionen gefixt.