Stabsstelle DV-Sicherheit der
Universität Stuttgart (RUS-CERT)
https://cert.uni-stuttgart.de
logo
Meldung Nr: RUS-CERT-1014

[Generic/html2ps] Ausführung beliebiger Kommandos über HTML-Dateien
(2002-11-11 07:37:29.156831+00)

Quelle: http://cert.uni-stuttgart.de/archive/bugtraq/2002/10/msg00431.html

An mehreren Stellen führt html2ps Shell-Kommandos aus, die in Dateinamen eingebettet sind.

Betroffene Systeme

Nicht betroffene Systeme

Einfallstor
HTML-Dokumente und CSS-Stylesheets, die speziell gestaltete Dateinamen enthalten.

Auswirkung
Falls es einem Angreifer gelingt, ein System oder einen Benutzer zur Konvertierung eines entsprechend präparierten Dokumentes mittels html2ps zu veranlassen, kann der Angreifer beliebige Shell-Befehle mit der User-ID das html2ps-Prozesses ausführen.

Typ der Verwundbarkeit
shell code injection

Gefahrenpotential
hoch bis sehr hoch (letzteres insbesondere in Verbindung mit Druck-Servern)
(Hinweise zur Einstufung des Gefahrenpotentials.)

Beschreibung
An mehreren Stellen ruft das Perl-Skript html2ps den open-Befehl von Perl wie folgt auf:

open HANDLE, $filename;

Der open-Befehl interpretiert jedoch das zweite Argument als Shell-Kommando, falls es mit einem "|" (Pipe-Symbol) startet. (Es ist dann möglich, durch ein print o.ä. Daten an den erzeugten Unterprozeß zu schicken.) Dies ist natürlich hochgradig problematisch, falls der Wert von $filename aus einer nicht vertrauenswürdigen Quelle stammt.

Korrigieren läst sich der Fehler durch:

open HANDLE, "<$filename";

Das "<"-Zeichen weist Perl an, den Rest der Zeichenkette immer als Dateinamen zu interpretieren, der zum Lesen zu öffnen ist.

Diese Schwachstelle in html2ps läßt sich vor allem für Angriffe auf Druck-Server verwenden, die automatisch HTML-Dokumente mit html2ps in PostScript umsetzen.

Das LPRng-Paket in SuSE Linux enthält eine weitere Schwachtstelle (siehe SuSE-Advisory); die Kombination ermöglicht es einem Angreifer, der Druckjobs einreichen kann, root-Rechte auf einem Druck-Server zu erreichen.

Gegenmaßnahmen

(fw)

Hinweis
Die in diesem Text enthaltene Information wurde für die Mitglieder der Universität Stuttgart recherchiert und zusammengestellt. Die Universität Stuttgart übernimmt keinerlei Haftung für die Inhalte. Dieser Artikel darf ausschließlich in unveränderter Form und nur zusammen mit diesem Hinweis sowie dem folgenden Copyrightverweis veröffentlicht werden. Eine Veröffentlichung unter diesen Bedingungen an anderer Stelle ist ausdrücklich gestattet.

Copyright © 2017 RUS-CERT, Universität Stuttgart, https://cert.uni-stuttgart.de/


https://cert.uni-stuttgart.de/ticker/article.php?mid=1014