CVE-2017-17405: Schwachstelle in Net::FTP erlaubt Ausführung von beliebigen Shell-Befehlen

Es gibt eine Schwachstelle in der mit Ruby mitgelieferten Bibliothek Net::FTP, welcher die CVE-Nummer CVE-2017-17405 zugewiesen wurde.

Details

Net::FTP#get, getbinaryfile, gettextfile, put, putbinaryfile, und puttextfile nutzen Kernel#open, um lokale Dateien zu öffnen. Wenn aber das Argument localfile mit einem Pipe-Zeichen "|" beginnt, wird der dem Zeichen nachfolgende String als Shell-Kommando ausgeführt. Der Standardwert von localfile ist File.basename(remotefile), was es böswilligen FTP-Servern erlaubt, beliebige Shell-Befehle auzuführen.

Alle Nutzer einer betroffenen Veröffentlichung sollten umgehend aktualisieren.

Betroffene Versionen

  • Ruby 2.2er-Serie: 2.2.8 und früher
  • Ruby 2.3er-Serie: 2.3.5 und früher
  • Ruby 2.4er-Serie: 2.4.2 und früher
  • Ruby 2.5er-Serie: 2.5.0-preview1
  • Trunk vor Revision r61242

Danksagung

Dank geht an Etienne Stalmans von Herokus Produkt-Sicherheits-Team für die Meldung des Problems.

Historie

  • Erstmals veröffentlicht am 2017-12-14 16:00:00 (UTC)