Logikgatter im Turing-vollständigen Fax-Algorithmus

Der von Apple für JBIG2 genutzte Code stammt laut der Analyse von Google aus dem in C++ geschriebenen Open-Source-Projekt Xpdf, das seit Jahrzehnten wohl von einer einzigen Person gepflegt wird. Darin ausgenutzt wird von dem Trojaner letztlich ein immer noch typischer Integer-Overflow.

Stellenmarkt
  1. Head of / Leitung Software Entwicklung Prüftechnik (m/w/d)
    DRÄXLMAIER Group, Vilsbiburg bei Landshut
  2. Softwareentwickler (m/w/d) C# / .NET
    Alarm IT Factory GmbH, Stuttgart
Detailsuche

Mit einigen weiteren Tricks erreicht der Exploit einen Punkt, den Googles Project Zero so beschreibt: "An dieser Stelle wäre es auch möglich, auf beliebige absolute Speicheradressen zu schreiben, wenn Sie deren Offsets aus dem Seitenpuffer kennen. Aber wie berechnet man diese Offsets? Bisher verlief dieser Exploit sehr ähnlich wie ein Exploit für eine 'kanonische' Skriptsprache, der in Javascript mit einem unbegrenzten Arraybuffer-Objekt mit Zugriff auf den Speicher enden könnte."

Um die Berechnungen doch noch umzusetzen, nutzt der Exploit eine Eigenheit der JBIG2-Kompression aus. Ähnlich wie andere Kompressionsalgorithmen sucht auch JBIG2 zunächst nach gleichen beziehungsweise sehr ähnlichen Zeichen (Glyphen) und merkt sich lediglich einmal das eigentliche Symbol und von den anderen Vorkommen im Text nur deren Position, so dass dies beim Wiederherstellen ersetzt werden kann.

Eine VM aus Logikgattern

Der Algorithmus erlaubt dabei aber auch eine möglichst verlustfreie Komprimierung. Erreicht wird das wiederum, indem der Unterschied zwischen Original-Glyphen und dem möglichen Ersatz mit Hilfe von Logikgattern (AND, OR, XOR, XNOR) gespeichert wird. Die Schritte sind dabei nicht beschränkt und der JBIG2-Algorithmus selbst ist so flexibel, dass dies zu einer Turing-Vollständigkeit führt, wie das Team schreibt.

Golem Akademie
  1. Unity Basiswissen: virtueller Drei-Tage-Workshop
    7.–9. Februar 2022, Virtuell
  2. Cloud Transformation Roadmap: Strategien, Roadmap, Governance: virtueller Zwei-Tage-Workshop
    7.–8. März 2022, Virtuell
Weitere IT-Trainings

Aus einer Verknüpfung von AND- und XOR-Gatter lassen sich so etwa NAND-Gatter erzeugen, die auch mehrheitlich in der modernen Mikroelektronik zum Einsatz kommen. Der Pegasus-Trojaner setzt dies nun so zusammen, dass durch eine gezielte Verknüpfung der Logikgatter innerhalb der Parser-Bibliothek eine eigene kleine virtuelle Maschine gebaut wird.

Googles Project Zero schreibt dazu: "Mit über 70.000 Segmentbefehlen, die logische Bitoperationen definieren, definieren sie eine kleine Computerarchitektur mit Funktionen wie Registern und einem vollständigen 64-Bit-Addierer und -Komparator, mit denen sie den Speicher durchsuchen und arithmetische Operationen ausführen. Es ist nicht so schnell wie Javascript, aber es ist im Wesentlichen rechnerisch äquivalent."

Der Pegasus-Trojaner nutzt diese Fähigkeiten für die ersten Schritte, um den notwendigen Ausbruch aus einer Sandbox vorzubereiten. Googles Project Zero schreibt dazu: "Es ist ziemlich unglaublich und gleichzeitig ziemlich erschreckend." In einem weiteren Blogpost wollen die Beteiligten dann erklären, wie der Ausbruch aus der Sandbox gelingt.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 NSO Pegasus: Mit der Logikgatter-VM im Fax-Algorithmus zum Trojaner
  1.  
  2. 1
  3. 2


lunarix 17. Dez 2021 / Themenstart

Aber es ist ja kein .gif - nur weil etwas eine bestimmte Dateiendung hat, heisst das ja...

flasherle 17. Dez 2021 / Themenstart

Ich frage mich bei solchen Dingen immer, welcher Entwickler lässt sich für so etwas...

minnime 17. Dez 2021 / Themenstart

Vor allem die Aneinanderreihung ist interessant. Die Geschichte mit den Gifs zu finden...

lunarix 17. Dez 2021 / Themenstart

Vielleicht sollten sie dies. Vergessen sollte man dabei aber nicht, dass Apple bereits...

znx 16. Dez 2021 / Themenstart

Vielen Dank für den guten Artikel. Die Vorgehensweise ist verständlich und ohne unnötige...

Kommentieren



Aktuell auf der Startseite von Golem.de
Naomi "SexyCyborg" Wu
Pappbüste einer Tech-Youtuberin ist Youtube zu anstößig

Naomi Wu wird in der Maker-Szene für ihr Fachwissen geschätzt. Youtube demonetarisiert sie aber wohl wegen ihrer Körperproportionen.

Naomi SexyCyborg Wu: Pappbüste einer Tech-Youtuberin ist Youtube zu anstößig
Artikel
  1. Quartalsbericht: Apples Gewinn stellt alles in den Schatten
    Quartalsbericht
    Apples Gewinn stellt alles in den Schatten

    Apple erwirtschaftet im letzten Quartal des Vorjahres einen Gewinn von 34,6 Milliarden US-Dollar. Und das trotz Chipkrise und weiteren Lieferengpässen.

  2. Coronapandemie: 42,6 Millionen mehr digitale Impfzertifikate als Impfdosen
    Coronapandemie
    42,6 Millionen mehr digitale Impfzertifikate als Impfdosen

    Einem Medienbericht zufolge gibt es eine Lücke zwischen ausgestellten Impfnachweisen und verabreichten Dosen. Diese wird sogar noch größer.

  3. Akamai: Steigende Nachfrage für illegale Kopien von Filmen
    Akamai
    Steigende Nachfrage für illegale Kopien von Filmen

    Durch die vielen neuen Streaming-Dienste ist illegales Filesharing wieder stark im Kommen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • RX 6900 XTU 16GB 1.449€ • Intel i7 3,6Ghz 399€ • Alternate: u.a. Acer Gaming-Monitor 119,90€ • Logitech Gaming-Headset 75€ • iRobot Saugroboter ab 289,99€ • 1TB SSD PCIe 4.0 128,07€ • Razer Gaming-Tastatur 155€ • GOG New Year Sale: bis zu 90% Rabatt • LG OLED 65 Zoll 1.599€ [Werbung]
    •  /