Skip to content

USB-Würmer - Gute und schlechte Nachrichten

Würmer, die sich über USB-Sticks verbreiten, sind ein Dauerproblem. Zumindest für Windows gehört in den Satz demnächst ein "gewesen" hinter das "Dauerproblem", sofern man sich auf die Würmer beschränkt, die sich über die AutoRun-Funktion verbreiten. Für Linux könnte es nötig werden, ein "neues" davor zu setzen, da es ja auch andere Möglichkeiten gibt, über einen USB-Stick Schadcode einzuschleusen

Windows: AutoRun on the run

In Windows 7 hat Microsoft die AutoRun-Funktion gegenüber den Vorgängerversionen geändert: Sie funktioniert nur noch für optische Laufwerke, so dass sie nicht mehr durch Schadsoftware ausgenutzt werden kann, um sich selbst von z.B. USB-Sticks zu starten. Besonders negativ war in der Hinsicht der RPC-Wurm Conficker aufgefallen: Der hebelte die bereits verbesserte Schutzfunktion von Windows Vista, das die AutoRun-Programme erst nach einer Nachfrage startet, aus, indem ein gefälschtes Icon den Benutzer denken ließ, er würde nur einen Ordner öffnen.

Microsoft hatte das Verhalten von Windows 7 bereits 2009 für Windows XP, Server 2003, Vista und Server 2008 rückportiert, diese Lösung aber nur über das Download Center bereit gestellt. So sollte Entwicklern, die die AutoRun-Funktion z.B. zur Installation von Software verwendeten, Zeit um Umstieg gegeben werden. Jetzt wurde der zugehörige Patch über Windows Update allgemein bereit gestellt.

Würmern und anderen Schädlingen dürfe damit die Verbreitung deutlich schwerer fallen. Sie können sich zwar weiterhin ungehindert auf USB-Sticks und andere mobile Massenspeicher schreiben, werden aber von hoffentlich immer weniger Rechnern von diesen gestartet.

Security Advisory, aber "non-security update"

Es ist schade, dass Microsoft sich nicht dazu durchringen konnte, den Patch als "Security Update" über ein Security Bulletin anzukündigen. Ein optionales "important, non-security update", auch wenn es mit einem Security Advisory kommt, wird doch recht häufig nicht installiert, denn wenn es nicht Sicherheitsrelevant ist, ist es ja nicht so besonders wichtig. Noch dazu, wenn es nur ein aktualisiertes Advisory von 2009 ist.

Natürlich ist Microsofts Argumentation

"We're marking this as an "Important, non-security update." It may seem a little odd to call this a "non-security update," especially since we're delivering it alongside our February bulletins. But at Microsoft we reserve the term "Security Update" to mean "a broadly released fix for a product-specific security-related vulnerability." And it would be odd to refer to Autorun as a vulnerability. That term is generally used, and we use it, to mean accidental functionality that allows someone to violate the security of the system. But Autorun isn't an accident -- it's by design, and as I mentioned we care about the very real positive uses of the feature. In other words, in a very real sense, it's not a bug, it's a feature, and we documented it as such."

völlig richtig. Aber man hätte ja auch argumentieren können, dass die Freigabe von AutoRun für Massenspeicher wie USB-Sticks etc. ein Designfehler und damit eben doch eine Schwachstelle ist. Wenn man sich schon dazu durchringt, dass endlich auch für die alten Windows-Versionen zu ändern (immerhin unterstützte Windows 7 dieses "Feature" ja aus guten Grund von Anfang an nicht), hätte man es ruhig konsequenter machen können.

Glänzende Lücke

Ein Problem bzw. Einfallstor bleibt außerdem in allen Windows-Versionen bestehen: Die AutoRun-Funktion erlaubt weiterhin den Start von Programmen von CD- und DVD-Laufwerken sowie den gleich behandelten U3-Sticks und allgemein virtuellen CD-Laufwerken, es erfolgt lediglich eine Rückfrage beim Benutzer, ob das Programm gestartet werden soll.

Zwar ist es unwahrscheinlich, dass sich ein Wurm über z.B. CD-Rs verbreitet (obwohl ich es durchaus für möglich halte, die Benutzer über Social Engineering auch zum Einlegen eines CD-Rohlings zu bewegen), aber im Rahmen gezielter Angriffe kann die Funktion weiterhin missbraucht werden. Außerdem besteht natürlich die Gefahr, dass im Rahmen des Produktionsprozesses ein AutoRun-Schädling auf eine CD gelangt, so wie es mit anderer Schadsoftware ja schon öfter der Fall war, und es gibt Schädlinge, die sich beim Brennen einer CD oder DVD selbst einschleusen. Gut möglich, dass es davon in Zukunft mehr geben wird, wenn das die einzige Möglichkeit ist, sich über AutoRun zu verbreiten. Darum: Vorsicht beim Einlegen unbekannter CDs und DVDs, auch da könnte ein Schädling drauf sein - starten Sie also ein vorgeschlagenes Programm nur dann, wenn Sie von dessen Harmlosigkeit überzeugt sind! Und nachdem schon Conficker die Benutzer durch ein gefälschtes Icon getäuscht hat, sollten Sie vielleicht auch besser keine Ordner über die AutoPlay/AutoRun-Dialogbox öffnen.

Und wofür braucht man AutoRun überhaupt? Wenn ein Benutzer eine CD/DVD einlegt, um ein Programm zu installieren, wird er wohl auch dazu in der Lage sein, ein Icon zum Start des Installationsprogramms anzuklicken. Ggf. kann man es ja so einrichten, dass dessen Icon das einzige ist, was der Benutzer beim einfachen Öffnen der CD sieht. Zumal die AutoRun-Funktion bei CDs ja auch schon negativ aufgefallen ist, z.B. als Sony darüber 2005 ein Rootkit installierte.

Mit Linux wäre das nichtauch passiert...

So erfreulich das Ende von AutoRun und damit der sich darüber verbreitenden USB-Würmer für Windows ist, so unerfreulich ist eine neue Entdeckung für Linux: Jon Larimer von X-Force zeigte auf der Sicherheitskonferenz ShmooCon 2011, wie sich über einen USB-Stick Schadcode auf ein Linux-System einschleusen lässt.

Jon Larimer umging in seiner Präsentation den Bildschirmschoner-Schutz eines Linux-Systems, indem er einen präparierte USB-Stick an den Rechner anschloss. Das Betriebssystem mountete das neu hinzu gekommene Laufwerk automatisch (was für sich genommen zumindest in diesem Fall noch kein Problem ist) und zeigte den Inhalt im Dateiexplorer an (dass der durch den Bildschirmschoner nicht zu sehen ist, ist dabei egal). Beim Erzeugen der anzuzeigenden Thumbnails wurde dann durch eine präparierte Datei eine Schwachstelle in Gnomes Dokumentenanzeiger Evince ausgenutzt und Code eingeschleust. Ggf. können dabei auch Schutzmaßnahmen wie ASLR und AppArmor umgangen werden, um die Demonstration zu beschleunigen, hat Jon Larimer die Schutzfunktionen dafür aber deaktiviert.

Noch kein Linux-Wurm in Sicht

Obwohl nun bewiesen wurde, dass über USB-Sticks Schadcode in Linux-Systeme eingeschleust werden kann, müssen sich die Linux-Benutzer nicht sofort auf eine Wurmwelle einrichten. Linux schützt ebenso wie Mac OS X die Tatsache, dass es viel mehr leichte Windows-Opfer gibt, vor großmaßstäblichen Schadsoftware-Angriffen - es lohnt sich einfach (noch) nicht, einen Schädling für Linux zu entwickeln. Wobei es bei Linux einen zusätzlichen Schutzfaktor gibt: Es gibt zwar "das" Windows und "das" Mac OS X (wenn auch jeweils in einigen wenigen Versionen), aber "das" Linux gibt es nicht. Ein Wurm, oder überhaupt irgend eine Schadsoftware, für Linux würde sehr wahrscheinlich immer nur eine mehr oder weniger große Teilmenge aller Linux-Installationen infizieren können. Es gibt so viele Distributionen und Konfigurationen, dass ein Angriff auf alle gleichzeitig schon allein am Mangel an passenden Schwachstellen scheitern dürfte. Der von Jon Larimer demonstrierte Angriff ist z.B. nur möglich, wenn das angegriffene System mit Gnome läuft. Ob die Anzeige der Thumbnails sofort automatisch oder erst nach Öffnen des Laufwerks durch den Benutzer erfolgt, ist aber egal bzw. nur interessant, wenn der USB-Stick einen Angreifer mit Zugang zum Rechner quasi als "Türöffner" dient. Einem Wurm ist es egal, ob er ausgeführt wird, weil das System die Thumbnails automatisch nach dem Mounten des Sticks erzeugt oder weil der Benutzer den von ihm eben eingesteckten USB-Stick öffnet.

Mit Boonana gibt es den ersten Schädling für Windows, Linux und Mac OS X gemeinsam, warum sollte es also nicht irgendwann einen USB-Wurm für eine Linux-Distribution geben?

USB-Würmer mit und ohne AutoRun

Das Ende von AutoRun für USB-Sticks ist nicht das Ende der USB-Würmer generell. Die verbreiten sich nicht nur über die AutoRun-Funktion über USB-Sticks, sondern auch durch die Ausnutzung anderer Schwachstellen. Das beste Beispiel dafür ist Stuxnet, der sich über die Shortcut-Lücke ganz unabhängig von AutoRun verbreitete. Eigentlich hat Stuxnet in der Hinsicht sogar große Ähnlichkeit mit Jon Larimers Proof of Concept für Linux, denn auch über die Shortcut-Lücke wurde der Code eingeschleust, wenn das zugehörige Icon angezeigt werden sollte.

Carsten Eilers

Trackbacks

Dipl.-Inform. Carsten Eilers am : Gefährliche Peripherie: USB

Vorschau anzeigen
Auch über Angriffe über den USB-Port habe ich bereits 2005 in About Security etwas geschrieben. Damals war das Podslurping ein relativ neuer Angriff: Wenn ein präparierter USB-Massenspeicher, z.B. ein iPod, an einen Rechner angeschl

Dipl.-Inform. Carsten Eilers am : USB-Sicherheit - Ein Überblick

Vorschau anzeigen
2014 wurden mit BadUSB und der angeblich beim Laden über USB den Strom spendenden Rechner mit Schadsoftware infizierenden E-Zigarette zwei neue kritische Angriffe auf/über USB gemeldet. Das schreit nach einem Überblick über di