Suche
Close this search box.

.zip considered harmful

Die Zeiten, als die Top Level Domains (TLDs) im Internet entweder .com, .org, .edu , .mil oder eines der Länderkürzel lauteten, sind schon länger vorbei. Seit 2013 können interessierte Unternehmen, Organisation und Behörden eigene TLDs einführen und dabei auch festlegen, gemäss welchen Regeln entsprechende Domains vergeben werden. In der Schweiz gibt es neben .ch (wo Domains quasi an alle vergeben werden) auch .swiss welche vom Bakom betrieben wird und bei der Domaininhaber einen konkreten Bezug zur Schweiz nachweisen müssen. Insgesamt gibt es unterdessen eine sehr lange Liste derartiger Domains, die Verbreitung ist insgesamt gesehen aber vernachlässigbar.

Vor einigen Wochen hat Google nochmals nachgelegt und acht neue Toplevel-Domains eingeführt: .dad, .phd, .prof, .esq, .foo, .zip, .mov, and .nexus. Und während man bei den meisten mit einem Schulterzucken oder leichter Irritation reagieren kann (warum .dad aber kein .mom?), haben .zip und .mov nicht nur in IT-Sicherheitskreisen zu mehr als nur einem Stirnrunzeln geführt. Befürchtet wird, dass diese neuen TLDs zu neuen Angriffsmöglichkeiten auf unvorsichtige oder schlicht nichts-ahnende Benutzer führen wird. Wer bei .zip an komprimierte Dateianhänge von Emails denkt, ist schon mal auf der richtigen Spur.

Auch wenn es um via URL ladbare Malware geht: Sämtliche als Link markierten URLs im folgenden Text können gefahrlos angeklickt werden.

Der allzu hilfreiche Email-Client

Das erste Problem liegt nicht direkt an der TLD selbst, sondern am «hilfreichen» Verhalten diverser Email-Clients, Chat-Apps, Twitter-Direktnachrichten, Online-Foren etc, einen Textabschnitt dem User als klickbaren Link anzuzeigen wenn er nach einem Link aussieht. Konkret bedeutet dies, dass ich eine Mail mit folgendem Text schreiben kann

Hilfreich dazu ist dnip.ch/2023/04/01/verdient-google-mit-der-suche-nach-marco-odermatt-wirklich-geld/

(den Link also nur als Text einfüge) und der Mail-Client der Empfängerin dann beim Anzeigen

Hilfreich dazu ist dnip.ch/2023/04/01/verdient-google-mit-der-suche-nach-marco-odermatt-wirklich-geld/

draus macht. Das funktioniert dank den neuen TLDs ( sofern der Mail-Client diese als solche versteht) dann auch mit Textabschnitten welche auf .zip bzw. .mov enden. Aus einem gesendeten

Wir haben die virengeprüften Dokumente unter virusfrei.zip auf unserer Download-Seite bereitgestellt.

wird dann beim Empfänger halt

Wir haben die virengeprüften Dokumente unter virusfrei.zip auf unserer Download-Seite bereitgestellt

auch wenn das eigentlich keine URL war und die Domain virusfrei.zip gar nicht der Absenderin gehört. Das Risiko ist da doch eher gross, dass der Email-Empfänger ohne gross nachzudenken den Link anklickt, in der Annahme so das Archiv laden zu können. Im besten Fall öffnet sich der Browser mit einer «Seite nicht gefunden»-Meldung, im schlechtesten (falls jemand die entsprechende Domain schon gekauft hat und darüber Malware ausspielt) wird eine infizierte Datei heruntergeladen die man dann sorglos öffnet/ausführt da man der Quelle in der Mail ja vertraut. Nun ist virusfrei.zip nicht unbedingt ein gängiger Filename, die Erfolgschancen einer solchen Malware wären daher nicht sonderlich gross. Aber es gibt ja auch noch gängigere Begriffe wie setup.zip, installer.zip oder schlicht unbenannt-1.zip, welche durchaus plausibel in Mails enthalten sein können.

Fun with Unicode

Noch spannender wird es, wenn man sich vor Augen führt, wie eine regelkonforme URL aufgebaut sein kann. Meistens sehen wir URL in Formen wie https://dnip.ch, https://dnip.ch/ueber-uns/ oder bei Suchmaschinen allenfalls auch https://home.cern/search/node?keys=birth+of+web. In voller Länge kann eine URL jedoch noch mehr Teile enthalten:

  • Scheme definiert das zu verwendende Protokoll für den Zugriff auf die URL, im Web ist das typischerweise https oder http. Es gibt aber auch andere Protokolle wie zum Beispiel mailto oder ftp (für Zugriffe auf einen FTP-Server)
  • Userinfo erlaubt es, Login-Informationen direkt in eine URL zu packen. Inwieweit es sinnvoll ist, insbesondere ein Passwort direkt in die URL zu schreiben, sei mal dahingestellt (der Passwort-Teil ist drum auch optional), wichtig hier ist, dass text@ ein gültiger Teil einer URL darstellt.
  • Hostname ist der DNS-Name des angesprochenen Servers
  • Port ist die Nummer des TCP-Ports (quasi der Türe) des Servers. Bei http wird defaultmässig 80 verwendet, bei https 443, ein Webserver kann grundsätzlich aber auch einen anderen Port verwenden und durch die Angabe der Port-Nummer erreicht werden.
  • Path, Query und Fragment dienen im Falle von Webserver-URLs der Addressierung innerhalb des Servers. Der Query-Teil wird meist zur Übergabe von Parametern verwendet, der Fragment-Teil zum Beispiel zum direkten Anspringen von Unterkapiteln auf einer Seite.

Für die durch die TLDs .zip und .mov entstehenden Probleme sind konkret nur die Teile «Userinfo» und «Hostname» relevant. Damit lassen sich URLs erzeugen, welche auf den ersten Blick harmlos aussehen, tatsächlich aber nicht ganz das sind was sie zu sein scheinen.

Wohin führt ein Klick auf https://dnip.ch@bing.com? Mit einem Blick auf die obige Darstellung ist das leicht zu erraten: Der Teil bis zum @ (also dnip.ch) wird vom Browser als Userinfo interpretiert (ein mit : abgetrenntes Passwort ist optional), der Hostname (und damit die Seite auf welcher man nach einem Klick landet) lautet bing.com (wer mit Firefox unterwegs ist, wird beim Draufklicken immerhin gewarnt, in allen anderen Browsern landet man direkt bei Bing).

Nun wäre https://dnip.ch@virusfrei.zip eine eher ungewohnte URL, und meine Erfolgschancen, auf diese Art Menschen zu überlisten, vermutlich recht gering. Überzeugender wären URLs im Stil von https://dnip.ch/downloads/@virusfrei.zip, aber da «/» innerhalb des Userinfo-Teils kein gültiges Zeichen ist, funktioniert der Klick darauf leider nicht. Also Fehlanzeige? Leider zu früh gefreut.

Zuerst ein kleiner Exkurs zum Thema „wie speichert ein Computer einen Text“: Grundsätzlich sind Texte eine Folge von Bytes, und es gibt Standards welche sicherstellen, dass über Computer und Betriebssysteme hinweg derselbe Bytewert denselben Buchstaben repräsentiert. Früher war das der ASCII-Standard (der zum Beispiel definiert, dass der Bytewert 65 dem Buchstaben A entspricht), der ist aber in seiner ursprünglichen Form auf 7 Bit limitiert und kann so nicht einmal Umlaute darstellen. Um tatsächlich alle denkbaren Zeichen aller menschlichen Sprachen abbilden zu können, wurde der Unicode-Standard geschaffen, welcher je nach Zeichen 8, 16 oder 32 Bits verwendet und so einen weit grösseren Umfang hat.

Zu Hilfe kommt dem allfälligen Angreifer nun die Tatsache, dass Unicode viele ähnlich aussehende, mit unterschiedlichen Bytewerten codierte Zeichen enthält: Welches der folgenden drei Zeichen ist der normale Slash wie wir ihn aus Pfadnamen kennen: /, ⁄, oder ∕? Das erste Zeichen ist der Schrägstrich den wir täglich nutzen (Unicode-Wert U+002f), die anderen beiden haben die Unicode-Werte U+2044 bzw. U+2215.

Auch wenn die Unterschiede von Auge noch leicht erkennbar ist: Wie sieht es aus, wenn wir einen der «falschen» Slashes in eine URL packen? Der Algorithmus zum Lesen einer URL erkennt nur U+002f als relevantes Zeichen für einen Pfadtrenner (Slash), die beiden übrigen werden schlicht gleich behandelt wie Buchstaben aus dem Alphabet. Und so wird der Email-Client einen entsprechenden Text hilfreicherweise als

Weitere Informationen haben wir in https://dnip.ch∕downloads∕@virusfrei.zip zum Download bereitgestellt

formatieren, und man muss schon sehr genau hinschauen um die Manipulation zu erkennen. Für den Mail-Client (wie auch anschliessend für den Browser) besteht diese URL aus „https“ (dem Scheme), „dnip.ch∕downloads∕“ als Userinfo, und „virusfrei.zip“ als Hostname, ein Klick auf den Link führt also mitnichten auf DNIP.

Windows macht das Leben leichter

Die beiden oben aufgeführten Probleme mit .zip/.mov basieren auf allzu „hilfreichen“ Email- und Chat-Apps welche Textstellen automatisch in klickbare Links umwandeln. Noch viel einfacher wird es, wenn man sich passende Funktionalität im Betriebssystem selber anschaut, konkret den File Explorer von Windows.

Dieser hat die durchaus nützliche Eigenschaft, nach Eingabe eines Dateinamens direkt nach dieser Datei zu suchen. Dasselbe Eingabefeld kann allerdings auch für eine Internet-Suche bzw. den Zugriff auf eine URL genutzt werden.

Und so öffnet sich, unter der Annahme, es keine entsprechend benannte ZIP-Datei auf dem Rechner gibt, bei Eingabe von virusfrei.zip unsere bereits von oben bekannte Webseite im Browser.

Wie der Sicherheitsforscher mr.d0x gezeigt hat, lässt sich diese Eigenschaft von Windows dann recht einfach für Phishing-Attacken nutzen. Dazu reicht es, der über die URL erreichbaren Webseite ein Aussehen zu geben, welches zumindest grundsätzlich wie das GUI eines Archivier-Programms unter Windows aussieht.

Da braucht es dann schon sehr viel Aufmerksamkeit auf Seiten des Benutzers um zu erkennen, dass man einen Browser vor sich hat und keine Archivier-Applikation wie das unter Windows verbreitete WinRAR. Die eigentliche Malware kann dann sowohl in Invoice.pdf wie auch in Installer.exe verborgen sein, wichtig ist in diesem Moment ja nur, dass man den Benutzer dazu bringt, eine der Dateien zu öffnen. Und dazu dürften dieselben Methoden reichen welche heute schon in den diversen „Your DHL parcel is blocked“-Mails und „Hello, I’m calling from Windows Support“-Anrufen verwendet werden: vorgegaukelter Zeitdruck und das Gefühl, etwas zu verpassen falls man nicht reagiert. Da es für den Benutzer nicht offensichtlich ist, dass er hier gerade Daten aus dem Internet herunterlädt, greifen auch die üblichen Warnungen („keine Links anklicken die man nicht kennt“, „keine Daten vom Internet laden“) nicht.

Um das nochmals zu verdeutlichen:

  • Der Benutzer ist der Meinung, im Suchfeld des File-Explorers den Dateinamen eines lokal gespeicherten ZIP-Files einzugeben
  • Als Ergebnis der Suche öffnet sich ein Fenster welches den Inhalt dieses ZIP-Files anzuzeigen scheint
  • In Realität handelt es sich um ein Browserfenster, aber das dürften viele Benutzer schlicht übersehen.

Noch einfacher wird die Attacke übrigens, wenn sich hinter der URL ein WebDAV-Server verbirgt (WebDAV ist ein Protokoll, mit dem vereinfacht gesagt Disks eines über das Internet erreichbaren Computers direkt im Explorer angezeigt werden können). Da geht bei Eingabe von setup.zip dann das entsprechende Verzeichnis direkt im Explorer auf, es braucht noch nicht mal eine GUI-mässig präparierte Webseite dazu. Für die Benutzerin sieht das im Explorer dann praktisch gleich aus wie wenn sie ein real auf der eigenen Festplatte gespeichertes ZIP-File geöffnet hätte.

Was bedeutet das nun?

Google hat die TLDs bewusst eingeführt, es ist nicht anzunehmen, dass sie jetzt wegen den oben beschriebenen Problemen wieder vom Markt genommen werden. Und während man bei den ersten zwei Problemen durchaus argumentieren kann, dass diese nicht direkt mit der TLD zu tun hat sondern primär mit dem Verhalten von Email- und Chat-Clients, so ist das Windows-Problem einiges grösser.

Ob .zip/.mov-Domains kurz- und mittelfristig als zusätzliches Sicherheitsrisiko im IT-Alltag bleiben, hängt davon ab ob

  • Anbieter von Email-Clients etc. in Zukunft text.zip als klickbare URL anzeigen oder eben aus Sicherheitsgründen darauf verzichten,
  • Microsoft einen Schutzmechanismus einbaut (oder zumindest die Suchfunktion nicht automatisch im Internet suchen lässt falls lokal nichts gefunden wird),
  • Google allenfalls aktiv nach Malware- und Missbrauchtsdomains Ausschau hält und diese nötigenfalls blockiert.

Letzteres hat Google jedenfalls gegenüber BleepingComputer angekündigt:

Google takes phishing and malware seriously and Google Registry has existing mechanisms to suspend or remove malicious domains across all of our TLDs, including .zip.  We will continue to monitor the usage of .zip and other TLDs and if new threats emerge we will take appropriate action to protect users.

https://www.bleepingcomputer.com/news/security/new-zip-domains-spark-debate-among-cybersecurity-experts/

Angesichts der Tatsache, dass sich hinter microsoft-office.zip eine höchstwahrscheinlich nicht zu Microsoft führende Office365-Login-Maske verbirgt welche täuschend echt aussieht, und angesichts von «gut gewählten» und bereits gekauften .zip-Domainnamen wie safedownload.zip, taxdocuments.zip oder cryptowallet.zip (Liste von Github) ist davon auszugehen, dass die neuen Domains auch für Malware-Angriffe verwendet werden.

Entsprechend empfiehlt sich, vor dem Anklicken von Links unbekannter Herkunft in Zukunft noch vorsichtiger zu sein als heute schon, und vor allem Links auf .zip- bzw. .mov-Files sehr genau anzuschauen. Und Unternehmen (und technisch affinen Privatbenutzern) dürften gut daran tun, Zugriffe auf die TLDs vorerst .zip bzw. .mov generell zu sperren.

dnip.ch mit Deiner Spende unterstützen

Wir wollen, dass unsere Inhalte frei verfügbar sind, weil wir es wichtig finden, dass möglichst viele Menschen in unserem Land die politischen Dimensionen der Digitalisierung erkennen und verstehen können.

Damit das möglich ist, sind wir auf deine Unterstützung angewiesen. Jeder Beitrag und sei er noch so klein, hilft uns, unsere Aufgabe wahrzunehmen.

3 Antworten

  1. Zwei Sachen:
    1. Bei .dad habe ich spontan nicht das fehlende .mon angeprangert, sondern an die dänische Rockband „Disneyland After Dark“ gedacht, die sich nach einem Rechtsstreit mit dem Disney Konzern in DAD umbenannt haben

    2. Ich könnte mir auch vorstellen, dass Google die TLD „sicherstellt“, damit sie niemand misbrauchen kann. Ähnliches gab es schonmal, als die TLD „box“ freigegeben wurde und die Firma AVM, deren Fritzboxen (Home Router) lokal auf „fritz.box“ hören, gezwungen war „fritz.box“ zu registrieren, damit dort keine Services aufgeschaltet werden, die die vielen Kunden dann nicht erreichen könnten.

    1. Zu 2) interessante Idee. Aber es ist aktuell möglich, .zip-Domains zu registrieren und zu nutzen, von daher scheint mir „sicherstellen“ nicht das Ziel zu sein.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Weitere Beiträge