Zwei kleine Schwachstellen in X11-Anwendungen

Florian Weimer

Heute rang ich mich endlich dazu durch, zwei kleine Schwachstellen in X11-Anwendungen etwas besser zu dokumentieren. Eine betrifft die Funktion XGrabKeyboard, die andere die meisten Xt-Anwendungen.

Einige Programme verwenden die XGrabKeyboard-Funktion <http://uw713doc.sco.com/en/man/html.X3xlib/XGrabKeyboard.X3xlib.html>, in der Annahme, dadurch den Tastaturzugriff für die übrigen Anwendungen zu sperren. So soll verhindert werden, daß eine böswillige Anwendung Paßwörter und ähnliches mitschneidet. Leider war XGrabKeyboard nie dafür gedacht, deswegen ist es wenig überraschend, daß XGrabKeyboard nicht wie erwartet funktioniert. Das Erstaunliche ist, daß dieses Detail seit mindestens zehn Jahren bekannt ist, sich aber unter den Programmierern nie wirklich herumsprach.

Die andere Schwachstelle betrifft das Editres-Protokoll, das über eine kleine Anwendung namens editres <http://uw713doc.sco.com/en/man/html.X1/editres.X1.html> genutzt werden kann. Damit lassen sich X11-Anwendungen wie xterm <http://docsrv.sco.com:8457/cgi-bin/man?mansearchword=xterm&mansection=> frei umkonfigurieren, eben soweit es die X11-Resourcen gestatten. Bei xterm kommt als zusätzliches Schmankerl hinzu, daß die Autoren die allowSendEvents-Option als sicherheitskritisch dokumentierten, diese aber auch umgesetzt werden kann. Weitere Informationen gibt's im Editres-Advisory, allerdings vergaß ich zu erwähnen, daß auch Motif-Anwendungen betroffen sind. Die Sicherheitsimplikationen von Editres sind vermutlich zuvor nicht öffentlich dokumentiert worden (auch wenn sie vor Jahren mal an X.Org übermittelt wurden).

Alles in allem geht durch diese kleinen Probleme sicherlich nicht die Welt unter (erfahrungsgemäß vermögen dies nicht einmal Windows-Kernel-Schwachstellen, die übers Netz für Angriffe nutzbar sind). Trotzdem zeigen sie, daß auch die X11-Fraktion mit Schwachstellen, die den Shatter-Angriffen auf Windows <http://security.tombom.co.uk/shatter.html> ähneln, zu kämpfen hat.

Revisions


Florian Weimer
Home Blog (DE) Blog (EN) Impressum RSS Feeds