- Schematische Darstellung eines mehrstufigen Angriffsablaufs, der zahlreiche Legacy-Dateiformate und -Funktionen von Windows wie OOXML, RTF, OLE, CHM, VBScript kaskadierend ausnutzt und schließlich zur PEAPOD Payload führt
- Ein remote gehostetes OOXML lädt das eingebettete afchunk.rtf; die darin enthaltenen OLE Objects sind der Ausgangspunkt für Verbindungen zu externen Ressourcen und den Abfluss von Zugangsdaten
- Im Verlauf des Angriffs werden NTLM Credentials an einen vom Angreifer kontrollierten SMB Server übertragen; über eine
.search-ms-Datei und ein in%LocalAppData%geschriebenes ZIP werden schädliche Dateien platziert - Würde man alle in der Grafik gezeigten Technologien abschaffen, ließen sich etwa 80 % der Sicherheitsprobleme beseitigen; Windows ist faktisch eine „Malware-Kompatibilitätsschicht für alles“
- Die miteinander vereinbare Diagnose: Microsoft kann diese Legacy-Technologien aus legitimen geschäftlichen Gründen nicht entfernen, zugleich kann auf diesem Stack niemals ein hochwertiges System wirklich sicher sein
Phase 1 — Einstieg über das Dokument und Abfluss von Zugangsdaten
- Ein remote gehostetes OOXML-Dokument lädt über XML das eingebettete afchunk.rtf
- Innerhalb von afchunk.rtf befinden sich zwei OLE Objects, die als Verzweigungspunkt für externe Verbindungen und den Diebstahl von Zugangsdaten dienen
- OLE Objects verweisen auf den Link
/MSHTML_C7/start.xml - OLE Objects ziehen NTLM Credentials heraus und übertragen sie an einen vom Angreifer kontrollierten SMB Server
- OLE Objects verweisen auf den Link
- Auch
file001.urlzeigt auf denselben SMB Server
Phase 2 — Über XSLT und iframe
/MSHTML_C7/start.xmlführt zustart.xmlim XSLT format- start.xml (XSLT) verweist auf RFile.asp
- RFile.asp erzeugt zwei iframes, die wiederum auf den vom Angreifer kontrollierten SMB Server verweisen
Phase 3 — Dateiauslieferung über den SMB Server
- Der SMB Server liefert
[somehex]_file001.htmaus [somehex]_file001.htmführt zu einer .search-ms-Datei, die ein in%LocalAppData%geschriebenes ZIP auslöst[somehex]_file001.htmverzweigt außerdem zuredir_obj.htm, und redir_obj.htm lädt1111.htm
Phase 4 — Entpacken des ZIP und Ausführen der Payload
- Das in
%LocalAppData%geschriebene ZIP enthält2222.chmund1111.htm 2222.chmlädtfile1.mhtfile1.mht→fileH.htm→ Downloader VBScript- Downloader VBScript führt schließlich die PEAPOD Payload aus
Zentrale Kritik — Legacy-Windows-Technologien und Sicherheit
- Die Behauptung: Wenn man alle in der Grafik vorkommenden Technologien abschafft, würden etwa 80 % der Computersicherheitsprobleme gelöst
- Die Formulierung, Windows fungiere als „malware compatibility layer“ für alles
- Beides gilt zugleich: Microsoft kann diese Legacy-Technologien aus legitimen geschäftlichen Gründen nicht entfernen, und solange ein System auf diesem Stack läuft, kann kein hochwertiges System sicher sein
- Aufgrund eigener Erfahrungen damit, wie „airgapped“ PLC-Systeme in Fabriken aufgebaut sind, ist man erleichtert, dass kinetic cyberwarfare mit physischen Schäden nicht Realität ist
1 Kommentare
Meinungen auf Hacker News
Je leistungsfähiger eine Plattform für viele Zwecke ist, desto zwangsläufiger entsteht Malware
Der Grund, warum Malware für Verbraucher weniger auf Linux-Desktops abzielt, ist, dass der Marktanteil bei etwa 3 % liegt; es lohnt sich eher, Windows-Desktops anzugreifen, mit denen man viel mehr Nutzer erreicht
Die einzige andere Option ist, Computer faktisch in bessere Mobiltelefone zu verwandeln, also in abgeschlossene Medienkonsumgeräte, alles in Sandboxes zu stecken und ihnen die Berechtigung zu entziehen, „schlechte“ Dinge zu tun
Tracking ist natürlich die Ausnahme, denn das Unternehmen, das das Betriebssystem herstellt, verkauft auch Werbung
Perfekt wurde es nicht, aber am Ende war nicht die Popularität an sich das Problem, sondern das unsichere Design der Software, und es gibt weiterhin viel Raum für Verbesserungen
macOS bewegt sich in diese Richtung, Qubes ist ein radikaleres Beispiel
Die Zukunft des Desktop-Computing läuft wahrscheinlich darauf hinaus, dass alles in einer eigenen virtuellen Maschine ausgeführt wird
Linux wird in Form von Android auf Mobiltelefonen enorm breit eingesetzt, und Mobiltelefone sind genauso attraktive Ziele wie Desktops, inzwischen vielleicht sogar attraktivere
Mobile Malware gibt es, sie ist aber deutlich seltener und schwerer zu bekommen
Die Art, wie man unter Linux Software installiert, unterscheidet sich völlig von Windows, und jemanden dazu zu bringen, einen Haufen Binärdateien auszuführen, erfordert ziemlich viel Aufwand
Es gilt sogar als einfacher, etwas als Container auszuliefern als als kompiliertes Binary für einen bestimmten Desktop
Schaut man über den Desktop hinaus, ist Linux überall in der Serverwelt präsent und das beliebteste Betriebssystem zum Ausführen von Serversoftware, also ein sehr wertvolles Ziel für Hacker
Viel attraktiver als die Übernahme eines Bankservers geht es kaum
Zu sagen, es gebe absolut nichts, was Linux von Natur aus sicherer mache als Windows, wirkt realitätsfern
Unix-artige Systeme wurden von Anfang an mit Mehrbenutzerbetrieb im Sinn entworfen, weshalb Benutzerrechte seit Jahrzehnten in den normalen Ablauf integriert sind; allein das bildet eine große Sicherheitsschicht, die Root-Rootkits oder Würmer deutlich schwerer erfolgreich macht
Das alte Windows 9x bis XP gab praktisch allen Administratorrechte, und eine system32-DLL zu schreiben oder zu ersetzen war einfach
Um Linux anzugreifen, muss man Nutzer dazu bringen, etwas mit erhöhten Rechten auszuführen, oder eine Schwachstelle in Software finden, die mit Root-Rechten läuft
Um altes Windows anzugreifen, musste man Nutzer nur dazu bringen, meine Software auszuführen
Auf Mobilgeräten ist Android, also Linux, am größten, und nach Endnutzern betrachtet sogar größer als Windows
Trotzdem gibt es nicht annähernd so viele Beschwerden über Android-Malware wie über Windows-Malware
Ich sehe Microsoft nicht als unfähig in Sachen Windows-Sicherheit, aber historisch gab es Designentscheidungen, die Probleme geschaffen haben
win9x hatte keine Prozessisolierung, obwohl sie auch auf i386 möglich gewesen wäre, und die Leute erwarteten, dass alte Programme auch unter WinXP mit NT-Kernel weiter funktionieren
Zentralisierte Softwareverteilung unter Windows ist im Vergleich zu apt, das es seit 1998 gibt, relativ neu, und kleine Dinge wie das Ausblenden von Dateiendungen machen Windows zu einem leichteren Ziel als ChromeOS, iOS, Android, macOS und GNU/Linux
Ich erinnere mich an die Aussage: „Wenn Linux so populär wird wie Windows, werden Malware-Entwickler es ins Visier nehmen“, aber wenn man Smart-TVs, Infotainment, Server, Supercomputer, Embedded Systems, Mobilgeräte und insbesondere Android betrachtet, ist Linux schon lange größer als Windows
Ich glaube nicht, dass der geringe Desktop-Marktanteil der Hauptgrund für die geringe Malware-Menge ist
https://gs.statcounter.com/os-market-share#monthly-202206-20...
Linux hat wegen der enorm vielen Pakete eine große Angriffsfläche, aber der Kern ist sehr offen, sodass viel Aufmerksamkeit und viele Augen darauf gerichtet sind
Schwachstellen werden in der Regel schnell gepatcht, und da Linux-Versionen und GNU-Pakete praktisch das gesamte Internet betreiben, gibt es auch genug Anreize, einzudringen
Außerdem ist es unter Linux deutlich leichter zu erkennen, ob ein Prozess etwas tut, was er nicht tun sollte, und es ist einfacher, ins Innere hineinzuschauen und zu prüfen, was passiert
Das größte Sicherheitsproblem unter Windows ist immer noch die Kombination aus standardmäßig ausgeblendeten Dateiendungen und fehlendem Ausführungsrechte-Bit.
Für Angreifer ist es dadurch viel zu einfach, eine bösartige ausführbare Datei zu erstellen, die wie ein Word-Dokument aussieht oder das Icon eines vertrauten Dateiformats trägt, und normale Nutzer haben praktisch keine Möglichkeit, die Gefahr zu erkennen.
Gäbe es ein Ausführungsrechte-Bit, würde eine exe aus einer dubiosen Quelle nicht einfach ohne erteilte Berechtigung starten.
Wären Dateiendungen standardmäßig sichtbar, könnten schon halbwegs informierte Nutzer die Gefahr sehen.
Da Windows ohnehin viele Benachrichtigungen anzeigt, würde schon eine Warnung beim ersten Doppelklick wie „Das ist eine ausführbare Datei, seien Sie vorsichtig“ vermutlich viel helfen.
Binärdateien, die aus dem Browser stammen, bekommen das erweiterte Attribut „potenziell unsicher“ und zeigen beim ersten Öffnen eine Warnung an, aber die Richtung ist verkehrt herum.
Alle Binärdateien sollten warnen, bis sie das Attribut „Nutzer ist sich des Risikos bewusst“ tragen.
Deshalb müssen Malware-Verteiler umständliche Umwege nutzen, etwa von Angreifern kontrollierte SMB-Server im Internet, um ausführbare Dateien zu verbreiten.
Außerdem haben Windows-ACLs Ausführungsberechtigungen pro Nutzer, Gruppe und richtlinienbezogenem Objekt.
Für ausführbare Dateien, die lesbar sind, sind sie standardmäßig aktiviert, aber es gibt keinerlei Einschränkung, eine ausführbare Datei nicht ausführbar zu machen.
Zudem zeigen fast alle ausführbaren Dateien standardmäßig eine riesige Warnung auf dem Niveau von „versucht gerade, den Computer zu infizieren, Haustiere zu töten und Kinder Satan zu opfern“.
Man kann sie abschalten, aber in den meisten Fällen ist sie aktiv.
Deshalb nutzen Angreifer Nebeneffekte von Randfällen wie RTF-OLE-Einbettung oder CHM/MHT-Wrapper.
Die Hälfte dieses Diagramms könnte auch auf macOS oder Linux funktionieren, wenn sie für Unternehmensumgebungen konfiguriert sind.
Meistens erledigen dabei Browser und Office-Anwendungen einfach ihre jeweilige Aufgabe.
Entscheidend ist, dass es im Kontext des Betriebssystems keinen tatsächlich ausführbaren Code gibt, bis ganz am Ende die letzte Sandbox verlassen wird und das Skript die eigentliche Payload herunterlädt.
Der Nutzer muss die Blockierung manuell aufheben.
Möglicherweise wurde diese Funktion deaktiviert.
Viele schalten sie ab, weil man für fast alles, was aus dem Internet heruntergeladen wird, eine Berechtigung erteilen muss und das nervt.
Der Standardbrowser warnt vor dem Download, SmartScreen fragt beim Ausführen nicht verifizierter Apps nach, und UAC fragt am Ende noch einmal.
Tatsächlich wird an vielen Orten sogar konfiguriert, die Ausführung im gesamten Nutzerprofil zu verbieten.
Malware ist heute unter Windows nicht einmal mehr das Schlimmste.
Windows ist im Grunde eine herunterladbare Telemetrie-Engine, ein Spyware-Go-Kart mit Anmeldebildschirm.
Wenn es sich nicht wie ein Marktschreier im Einkaufszentrum aufführt und allerlei durch Überwachung ausgewählte Produkte und Nutzlosigkeiten verkauft, gaslightet es einen wie ein toxischer Ex-Partner damit, dass man den neuen Browser doch „brauche“.
Beim Upgrade muss man beten, dass die Hardware passt.
Redmond steckt dieselbe unermüdliche Energie, mit der es einen an seinen geisterstadtartigen App Store und seinen Mikrotransaktions-Spielplatz erinnert, auch darin, einen davon zu überzeugen, dass ein völlig gut laufender fünf Jahre alter PC „alt“ sei.
Selbst wenn man es irgendwie geschafft hat, Chrome zu installieren, behalten die meisten Apps diese Standardeinstellung nicht lange im Gedächtnis, sobald Microsoft einen Geschmack erkennt, der nicht vom Marketing genehmigt wurde.
Windows taumelt wie ein Zombie-Clown auf einem Geisterfest zwischen den Buden herum, macht Menschen allein durch seine Existenz unwohl und kehrt dann in das Zirkuszelt der Corporate America zurück.
Vielleicht ist das inzwischen praktisch der einzige Ort, an dem Windows noch ein willkommenes Publikum hat.
Der Desktop fühlt sich an wie eine Subway-Station, die überall mit schäbigen Anwaltsanzeigen und Graffiti zugekleistert ist; wirklich widerlich.
Erstaunlich ist, wie viele Tastenkombinationen zu Pop-ups führen, die einen auffordern, ein anderes Microsoft-Produkt zu verwenden, das man gar nicht braucht.
Ich kann kaum glauben, dass es so schlecht geworden ist.
Für Durchschnittsverbraucher braucht es eine Windows-Alternative.
Das hier ist ein allgemeines Nebenthema.
Der Beitrag handelt von Computersicherheit und hat nichts mit der nutzerfeindlichen Erfahrung von Windows zu tun.
Windows ist eine Malware-Kompatibilitätsschicht für alles.
Windows NT und alle späteren Windows-Versionen haben Sicherheitskontrollen aus VMS übernommen und verfügen damit über mehr Sicherheitskontrollen als fast jedes andere Betriebssystem.
Um Reibung zu reduzieren und die Verbreitung zu erhöhen, sind die meisten davon jedoch deaktiviert oder abgeschwächt.
Auch unter Linux sind Sicherheitskontrollen standardmäßig abgeschwächt, aber Linux kam später in den Massenmarkt und war nicht so klickfertig wie Windows, sodass die Reibung für nichttechnische Nutzer anfangs größer war.
Es geht auch nicht nur um Sicherheitskontrollen.
Sowohl Windows als auch Linux erlauben standardmäßig Speicher-Overcommitment, was die Stabilität beeinträchtigen kann, aber der Entwicklerakzeptanz zugutekommt.
All diese Dinge lassen sich härten, aber dabei besteht das Risiko, Anwendungen zu beschädigen, die für das Standardverhalten geschrieben wurden.
Wie andere gesagt haben, ist Windows wegen seiner höchsten Verbreitung und Nutzung das Standardziel.
Sollte Linux eines Tages vorn liegen, wird auch das Interesse von Malware-Autoren stärker wachsen.
In udev, binfmt-Mounts, eBPF, systemd und der Art, wie sie derzeit miteinander verflochten sind, gibt es viele noch nicht erforschte Angriffsvektoren.
Wenn Linux-Gaming sich in diesem Tempo weiter verbessert, könnte das schneller passieren, als man denkt.
Gaming-Plattformen sind oft für das Standardverhalten codiert oder erwarten erhöhte Rechte, wodurch Betriebssystem-Härtung keine Option mehr ist; und viele werden sich keine separate Gaming-Maschine kaufen, nur um sie von dem Gerät zu trennen, auf dem sie Steuern, Banking, E-Mail und Social Media erledigen.
Anfangs dachte ich, in diesem Tweet gehe es um nicht speichersichere Sprachen wie C und C++ und um JIT-Compiler in Webbrowsern
Denn die Aussage lautete: „Wenn man alle in dieser Grafik gezeigten Technologien abschafft, wären Computer-Sicherheitsprobleme zu etwa 80 % gelöst“
Chromium sagt, dass „rund 70 % der Sicherheitsbugs mit hohem Schweregrad Probleme der Speichersicherheit sind, also C/C++-Pointer-Fehler, und die Hälfte davon Use-after-free-Bugs“
https://www.chromium.org/Home/chromium-security/memory-safet...
Auch Microsoft sagt, dass „etwa 70 % der Schwachstellen, denen jedes Jahr eine CVE zugewiesen wird, weiterhin Probleme der Speichersicherheit sind“
https://msrc.microsoft.com/blog/2019/07/a-proactive-approach...
Auch der HN-Titel ist eine bearbeitete Fassung des Originals
Wenn ich mich richtig erinnere, testen sie gerade erstmals einen Rust-basierten DLL-Ersatz, und selbst nur die Hälfte zu migrieren könnte ziemlich lange dauern
Die meiste Malware missbraucht logisch betrachtet ganz normale Funktionen im Betriebssystem
Ich glaube nicht, dass damit „Computer-Sicherheit wäre zu etwa 80 % gelöst“ gemeint ist
Man würde andere Angriffsvektoren nutzen, und wenn die meisten Angriffswege versperrt sind, landet man bei Smartphone-Betriebssystemen mit sehr wenigen Rechten und umfassendem Tracking
Trotzdem kann es weiterhin massenhaft Malware geben
https://www.bleepingcomputer.com/news/security/apps-with-15m...
Die Ursache von all dem ist Abwärtskompatibilität, und die ist wirklich schwer zu handhaben
In einer idealen Welt würde man jedes Mal, wenn man Kompatibilität brechen muss, umfangreiche Dokumentation bereitstellen und die Migration so painless wie möglich machen
Aber es gibt da das kleine Problem verlassener Software
Es gibt erstaunlich viele Fälle, in denen Software, von der heute niemand mehr weiß, wie sie funktioniert, für wichtige Arbeit benötigt wird
Sollte es für Unternehmen und staatsnahe Einrichtungen illegal sein, proprietäre Software zu betreiben, die von niemandem aktiv gewartet wird und für die es keinerlei Supportvertrag gibt?
MHTML löst ein echtes Problem, und VBScript ist im Grunde wie bash mit anderer Ausdrucksweise
OLE-Embedding wird heute leider kaum noch genutzt, ist aber eine großartige Idee
Eine Tabellenkalkulation in ein Textdokument einbetten zu können, ohne seltsame Tabellen-Hacks, ist ein guter Ansatz
VBA-Makros treiben mehr Unternehmen an als jedes Startup
CHM-Hilfedateien waren wirklich großartig, und es ist schade, dass sie durch miserable Websites ersetzt wurden, bei denen man sich auf Google verlassen muss, um tatsächlich etwas zu finden
Dass man komplexe Suchergebnisse nicht nur speichern, sondern auch teilen kann, war ebenfalls eine gute Idee, wurde aber nicht ausreichend beworben
Eine Datei verschicken zu können, mit der man „Fotos, die ich zwischen August und September letzten Jahres mit meiner Kamera aufgenommen habe“ finden kann, ist eine gute Idee, weil man kein proprietäres Fotoalbum verschicken muss
Was man auch über proprietäre Abhängigkeit und furchtbare Geschäftspraktiken sagen mag: Microsoft hatte großartige Ideen, die konkurrierende Betriebssysteme erst Jahre oder Jahrzehnte später nachgemacht haben
In den meisten Konkurrenzprodukten kann man Dokumente immer noch nicht so einfach und effektiv einbetten wie in Microsoft Office
Diese Funktionen sind nicht aufgegeben; sie werden von Millionen Menschen auf der ganzen Welt genutzt
Microsoft sollte die Einstellungen seiner Tools verbessern, damit ausführbarer Code besser erkannt wird
Das VBScript am Ende der Kette hätte nicht ausgeführt werden dürfen
Um die meisten anderen „Legacy“-Tools wäre es schade, wenn sie wegen der Malware-Gefahr verschwinden würden
Es gibt VM, DOSBox, Wine und dergleichen
Vor etwa zehn Jahren stellte sich heraus, dass ein wichtiger Prozess, der auf allen Filialmaschinen von Home Depot lief, von einem Programm namens Batchman abhing
Batchman war ein Utility zum Abtippen aus der PC Magazine von 1989
Wenn man die Kompatibilität bricht, muss jemand diesen Prozess nachbauen, der jahrzehntelang still vor sich hinlief
Niemand aus dem HD-Team, mit dem ich arbeitete, hatte den Code je gesehen oder wusste, was Batchman war oder was es tat
Der populärste Stack wird immer das bevorzugte Ziel von Malware sein
Wenn eine andere Plattform 90 % der Beute ausmacht, frage ich mich, ob man wirklich glaubt, dass diese Plattform nicht überwiegend zum Opfer von Malware würde
Nebenbei: In den 80ern habe ich als Frontline-Malware-Entferner gearbeitet, und damals waren die Hauptziele die Apple Macs in den Computerräumen der Universitäten
Was war die cleverste Malware, die du damals entfernt hast?
Ist das nicht so ähnlich wie zu sagen: „Wenn wir die Geschichte abschaffen, gibt es viel weniger Probleme“?
Aber Geschichte existiert nun einmal wirklich
Und jedes Mal, wenn ich auf einen Twitter-Link klicke, erscheint „Etwas ist schiefgelaufen“ und ich muss neu laden — ist das das moderne Twitter?
Je nach Definition von modern stimmt es also und stimmt auch wieder nicht
https://nitter.net/matthew_d_green/status/167913542680678400...