Windows 10: Arbitrary Code Guard in Edge (ACG) ‘zerpflückt’

Microsoft hat ja einige Sicherheitsfunktionen wie den Arbitrary Code Guard (ACG) in Windows 10 eingeführt. Googles Project Zero-Sicherheitsforscher haben diese Funktion in Verbindung mit dem Edge-Browser regelrecht 'zerpflückt'. Die Funktion versagt im Edge, während die Chrome Site-Isolation wohl funktioniert.


Anzeige

Windows 10: Arbitrary Code Guard

Microsoft hat in Windows 10 diverse Techniken zur Abwehr von Malware eingebaut. Dazu gehört auch der Arbitrary Code Guard (ACG).

Strategien gegen Malware
(Quelle: Microsoft)

Microsoft hat ab Windows 10  Creators Update die Techniken Code Integrity Guard (CIG) und Arbitrary Code Guard (ACG) für den Edge-Browser eingebaut. Diese Technologien sollen eine Reihe an Angriffsvektoren von Malware wie Remote Code Execution und Elevation of Privilege ins Leere laufen lassen. Die Details sind in diesem Microsoft Blog-Beitrag beschrieben.

Der Arbitrary Code Guard (ACG) lässt sich umgehen

Microsoft lobt zwar die Sicherheit seiner Produkte, macht aber gravierende Fehler bei der Implementierung. Auf einen Bock hatte ich am Wochenende im Blog-Beitrag Microsoft und die Office 20xx-Sicherheitslücke in ose.exe hingewiesen. Bereits im Februar 2018 gab es Hinweise, dass sich der Arbitrary Code Guard umgehen lässt.  Eine Fundstelle gibt es bei Malwarebytes und auch bei IBM findet sich dieser Kurzbeitrag vom 17. April 2018.

Microsoft Edge could allow a local attacker to bypass security restrictions, caused by a flaw in MicrosoftEdgeCP.exe. By sending a specially-crafted request with OpenProcess function, an attacker could exploit this vulnerability to bypass Arbitrary Code Guard (ACG).

Die Information lautet auf Deutsch: Microsoft Edge könnte einem lokalen Angreifer ermöglichen, die vorhandenen (Edge) Sicherheitseinschränkungen zu umgehen, die durch einen Fehler in MicrosoftEdgeCP.exe verursacht wurden. Durch das Senden einer speziell erstellten Anfrage mit der OpenProcess-Funktion kann ein Angreifer diese Schwachstelle ausnutzen, um Arbitrary Code Guard (ACG) zu umgehen. Ein deutschsprachiger Beitrag ist hier zu finden.

Neuer Artikel im Mai 2018

Jetzt bin ich bei ZDNet auf diesen Artikel gestoßen, der das Thema erneut aufgreift. Ivan Fratric, Sicherheitsforscher beim Google Project Zero hat ein Whitepaper veröffentlicht, welches die Ergebnisse der Arbeit der Gruppe zur Umgehung des in Windows 10 Creators Update enthaltenen Feature Arbitrary Code Guard (ACG), im Zusammenhang mit Microsoft Edge beschreibt. Dieses ist in dem Anfang Mai 2018 publizierten Kurzbeitrag vom Project Zero verlinkt.

Derzeit ist der ACG Exploit-Schutz in Windows 10 ja exklusiv für Edge erhältlich. Die Funktion zielt darauf ab, fortgeschrittene Angreifer daran zu hindern, bösartigen Code im Speicher (des Browsers) auszuführen, wenn dieser bereits einen Inhaltsprozess im Browser gefährdet haben.

Fratric hatte bereits im Februar 2018 Details zu einem ACG Edge-Bypass veröffentlicht, bevor Microsoft das Problem beheben konnte. Microsoft hatte die 90-Tage-Frist der Gruppe versäumt, ohne einen Patch bereitzustellen. Der Hack von Fratic ermöglichte den Edge Just in Time (JIT) JavaScript-Compiler mit aktiviertem ACG zu umgehen.


Anzeige

Microsoft versuchte diese Schwachstelle wohl durch Updates zu schließen. Die Lösung erforderte erheblichen Aufwand von Microsoft und bestand darin, die JIT-Engine von Edge in einen eigenen, von den Content-Prozessen des Browsers getrennten, Sandbox-Prozess einzubinden.

Die Verbesserung sollte schließlich fortgeschrittene Angreifer davon abhalten, aus der Edge Sandbox auszubrechen. Fratric stellte jedoch fest, dass ACG zwar im Allgemeinen der Aufgabe gewachsen ist, dass es und ein weiteres Feature namens Code Integrity Guard jedoch durch ein weiteres Windows 10 Exploit-Schutz-Feature namens Control Flow Guard (CFG) aushebeln lässt.

Fratric behauptet, damit der Arbitrary Code Guard (ACG) alle Angriffe erfolgreich blockieren kann, müssen ACG, CIG und CFG alle unempfindlich gegen Bypässe sein. Versagt nur eine dieser Schutzmechanismen, lässt sich der gesamte Schutz aushebeln. Und die Lücke existiert bei CFG. Laut Fratiric wäre in Google Chrome das Site-Isolation-Feature schwieriger zu umgehen als Edge mit aktiviertem ACG.

"Derzeit ist es bei vielen bekannten Bypässen nicht schwierig, CFG in Windows zu umgehen. Sollte Microsoft jedoch in der Lage sein, alle bekannten Schwachstellen der CFG zu beheben, einschließlich des Rückflussschutzes, könnte sich die Situation in den nächsten Jahren ändern. Da Microsoft bereits die Absicht gezeigt hat, dies zu tun, glauben wir, dass dies ihr langfristiger Plan ist", meint Fratric. "ACG gelingt es, den Zweck zu erfüllen, die Zuweisung und Änderung von ausführbarem Speicher zu verhindern. Aufgrund der gegenseitigen Abhängigkeit von CFG, ACG und CIG und den Unzulänglichkeiten von CFG in Microsoft Windows kann ACG allein jedoch nicht ausreichen, um fortgeschrittene Angreifer daran zu hindern, dem Sandkasten eines Browsers zu entkommen und andere Angriffe zu starten."

Sicherheit ist ein 'Eichhörnchen' und den Marketing-Behauptungen, dass Windows 10 das sicherste aller Windows sei, kann man nicht immer glauben. Es kommt auf den Einzelfall an.


Cookies blockieren entzieht uns die Finanzierung: Cookie-Einstellungen

Dieser Beitrag wurde unter Sicherheit, Windows 10 abgelegt und mit , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

2 Antworten zu Windows 10: Arbitrary Code Guard in Edge (ACG) ‘zerpflückt’

  1. Alfred E. Neumann sagt:

    Doch, Windows 10 ist das sicherste Windows!
    Microsoft baut unter dessen Oberfläche ein durchaus brauchbares Betriebssystem, und stopft eine Menge Schwachstellen und Lücken älterer Versionen, die dort oft (nicht) mehr behoben werden.
    Andererseits machen sie viel Blödsinn und bauen ohne Not neue, hochkomplexe Funktionen ein, die wiederum neue Angriffe ermöglichen.
    Zudem haben sie mit der Einführung der "Apps" zum zweiten Mal den Unterbau konzeptionell verpfuscht; der erste Pfusch heisst .NET. Dieses wie auch die "Apps" hätte Microsoft als NT-Subsystem implementieren müssen.
    Statt sauberer Rechte- bzw. Privilegientrennung bauen sie das Sicherheitskasperltheater UAC und geben dem bei der Installation angelegten Benutzer weiterhin administrative Rechte.

  2. Harald M. Genauck sagt:

    Hmmm … Google sollte sich in Sachen Chrome und Sicherheit gerade in diesen Tagen nicht zu weit aus dem Fenster lehnen … Stichwort: Nigelthorn.

Schreibe einen Kommentar

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

Hinweis: Bitte beachtet die Regeln zum Kommentieren im Blog (Erstkommentare und Verlinktes landet in der Moderation, gebe ich alle paar Stunden frei, SEO-Posts/SPAM lösche ich rigoros). Kommentare abseits des Themas bitte unter Diskussion.