Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Zur Sicherheitslücke bei Intel-Prozessoren
#11
Alle Prozessoren betroffen

Meltdown und Spectre: Super-GAU bei Prozessoren sorgt für Flut an halbgaren Updates

Es klang sehr schlimm, doch die Realität präsentiert sich noch sehr viel schlimmer: Es gibt nicht nur einen kritischen Design-Fehler, der die Sicherheit von Intel-CPUs aushebelt, sondern gleich eine ganze Reihe kritischer Schwachstellen, die in der Summe praktisch alle nach 1995 auf den Markt gebrachten Prozessoren betreffen. Und zwar nicht nur PCs und Server mit x86-Chips von Intel und AMD, sondern auch Smartphones, Tablets und IoT-Geräte auf ARM-Basis. Unterdessen reagiert die Software-Welt mit ersten Updates – fertig sind diese aber bei weitem noch nicht. 

Angriffspunkt "Speculative Execution" 

In allen Fällen geht es um Seitenkanal-Angriffe auf eine CPU-Technik namens Spekulative Ausführung (Speculative Execution). Im Rahmen der Spekulativen Ausführung werden freie CPU-Ressourcen genutzt, um wahrscheinliche Folgeaufgaben im Voraus zu berechnen und die Ergebnisse auf Verdacht zu bevorraten. Dieser Blick in die Zukunft funktioniert recht zuverlässig und sorgt durch eine bessere Auslastung für deutliche Leistungsgewinne pro Taktzyklus. Ein leicht höherer Energieverbrauch aufgrund von Fehleinschätzungen wird dabei in Kauf genommen. Die Spekulative Ausführung gehört dabei zu mehreren Techniken, welche die Reihenfolge der Befehle, welche im Programmcode stehen, automatisch umsortiert und dabei optimiert. Man spricht bei solchen CPUs von Out-of-Order-Architekturen.....

Nicht betroffen: In-Order-Architekturen 
Intel hatte zuletzt bei den ersten beiden Atom-Architekturen Bonnell (2008) und Saltwell (2011) auf ein In-Order-Design gesetzt, da diese Chips nicht auf Leistung, sondern auf eine möglichst niedrigen Stromverbrauch optimiert waren. Im Desktop-Bereich markiert die erste Pentium-Generation (1993 bis 1999) Intels letzte In-Order-Architektur. AMD wechselte schon 1996 mit dem K5 auf ein Out-of-Order-Design. Zur In-Order-Gattung gehören indes VIAs C3 und C7 sowie der IDT WinChip. 

Die Sicherheitslücken: Spectre (AMD, ARM und Intel) 
Unter dem Namen "Spectre" (CVE-2017-5753, CVE-2017-5715) werden mehrere Schwachstellen im Bereich der Spekulativen Ausführung zusammengefasst, die eine Gruppe um Paul Kocher und Googles Project Zerounabhängig voneinander erforscht haben. Spectre betrifft nach bisherigem Wissensstand alle modernen Prozessoren von AMD, ARM und Intel, die Angriffe konzentrieren sich auf die Sprungvorhersage (Branch Prediction) der CPUs. Zunächst wird die Sprungvorhersage von einem bösartigen Programm auf ein verlässliches Verhalten trainiert. Dann wird die Zeit für Cache-Zugriffe gestoppt, wobei sich zuverlässig feststellen lässt, ob es einen Treffer gab oder die Daten nicht im Cache liegen. Mit Hilfe rücksprungorientierter Programmierung (Return Oriented Programming) wird dann ein Zugriff auf die eigentlich unzugänglichen Daten ausgelöst. 

Project Zero hat die technische Machbarkeit für CVE-2017-5753 anhand unterschiedlicher CPUs (Intel Xeon Haswell, AMD FX, AMD PRO, ARM Cortex A57) nachgewiesen. Das Abgreifen von Kernel-Speicher gelang mit dem Intel Xeon Haswell, wobei ein 32-Bit-Wert genutzt wurde, der den adressierbaren Speicherbereich auf 4 GiB beschränkte. Für den AMD PRO fand sich kein angreifbares Code-Muster, so dass die Forscher dieses zunächst über die JIT-Engine (Just-in-Time Compilation) erzeugen mussten. Hierzu muss unter Linux die eBPF JIT-Engine (Just-in-Time Compilation) zunächst aktiviert werden, was einem normalen Benutzer allerdings möglich ist. Für die Praxis bedeutet dies, dass Spectre die Abschirmung zwischen den Prozessen durchbricht, so dass ein bösartiges Programm auf den Anwendungsspeicher eines fremden Prozesses zugreifen kann. Zumindest in der Theorie lassen sich solche Angriffe auch über JavaScript-Code im Webbrowser ausführen, doch bisher gibt es hierfür noch kein funktionierendes Beispiel. 

Was indes funktioniert, ist das Abgreifen von Kernel-Speicher. Besonders riskant ist dabei der Umstand, dass Gastsysteme auf virtuellen Maschinen Daten vom Hypervisor abgreifen können. Ein von Project Zero entwickelter Angriffscode liest den Kernel-Speicher des Host-Systems, in dem wieder der Intel Xeon Haswell steckte, mit einer Rate von 1.500 Bytes pro Sekunde, wobei die Vorbereitung des Angriffs auf einer Maschine mit 64 GiB Arbeitsspeicher zwischen 10 und 30 Minuten in Anspruch nimmt. Mehr Arbeitsspeicher bedeutet in diesem Zusammenhang auch eine längere Vorlaufzeit. Insgesamt stellt Spectre derzeit ein unkalkulierbares Risiko für Cloud-Anbieter dar, denn wirklich beheben lassen sich diese Schwachstellen nur durch ein Redesign der aktuellen CPU-Architekturen. Laut AMD lässt sich ein Angriffsvektor (CVE-2017-5753) durch Betriebssystem-Patches beseitigen, eine vollständige Lösung des Problems ist aber noch nicht in Sicht. 

Die Sicherheitslücken: Meltdown (nur Intel) 
"Meltdown" wurde unabhängig von Googles Project Zero, Cyberus Technology und Forschern der TU Graz entdeckt. Während "Spectre" einen universellen Angriff auf fast alle Prozessoren darstellt, handelt es sich bei "Meltdown" (CVE-2017-5754) um einen Sonderfall, der sich auf CPUs von Intel beschränkt. Andererseits erfordert "Spectre" umfassendes Wissen über die Vorgänge im Inneren der Ziel-CPU, wohingegen "Meltdown" aufgrund einer Rechteausweitung einen wesentlich bequemeren Angriffsvektor über den L1-Cache eröffnet. Durch ein Fehlverhalten im Rahmen der Spekulativen Ausführung lässt sich hier von einem bösartigen Programm im Anwendungsspeicher der gesamte Arbeitsspeicher, also auch der geschützte Kernel-Speicher, auslesen. Und dank Intels marktbeherrschender Stellung ist ein Großteil der modernen PCs und Server betroffen. 

Ab dem Linux-Kernel 4.14.11 bzw. 4.15 unterbindet die "Kernel Page-Table Isolation" (KPTI) den Meltdown-Angriff, was allerdings auf Kosten der Leistung geht. Die Leistungseinbußen bewegen sich laut Phoronix – abhängig vom Prozessor und der Anwendung – zwischen 5 und 30 Prozent. Ab der Haswell-Generation (Core ix 4xxx) lindert INVPCID (Invalidate Process-Context Identifier) die negativen Auswirkungen, da der "Translation Lookaside Buffer" (TLB) nicht immer wieder geleert werden muss. Für Sandybridge (Core ix 2xxx) und Ivy Bridge (Core ix 3xxx) besteht zumindest Hoffnung, dass eine vergleichbare Lösung auf Basis der "Process Context Identifiers" (PCID) nachgereicht wird. 

Software-Chaos droht hereinzubrechen 
macOS wurde in der Version 10.13.2 zumindest teilweise gehärtet und auch Microsoft hat seit gestern frische Patches für Windows 10, Windows 8.1 und Windows 7 im Angebot, welche aber noch nicht als so ganz final zu betrachten sind. Diese Updates darf man aber nur installieren, wenn der Virenschutz mitspielt
Einige Antivirenprogramme greifen nämlich auf eine nicht offiziell unterstützte Art und Weise auf den Windows-Kernel-Speicher zu und sorgen nach der Installation des Updates für einen Bluescreen. Windows Update bietet den Patch daher nur Systemen an, deren Antivirensoftware als kompatibel bekannt ist. Ist das nicht der Fall, muss man seinen Virenschutz aktualisieren oder vorübergehend zu Microsofts hauseigenem Defender wechseln. Dieser ist momentan etwas übereifrig und will, während diese Zeilen hier getippt werden, jede Textdatei mit den Suchbegriffen "Meltdown" und "Spectre" zur Überprüfung an Microsoft weiterleiten. 

In einem zweiten Support-Dokument warnt Microsoft, dass das Einspielen der Betriebssystem-Updates alleine nicht ausreicht. Zusätzlich müsse auch der Microcode des Prozessors und/oder die Firmware der Hauptplatine bzw. des Gerätes aktualisiert werden. Zu diesem Zweck arbeite Microsoft mit seinen Partnern zusammen, entsprechende Patches für die hauseigenen Surface-Geräte lassen sich über Windows Update beziehen. 
Der Hinweis auf Microcode-Updates erstaunt, denn bisher wurde eine solche Lösung als ausgeschlossen erachtet. Zudem wirft er die Frage auf, welche Prozessoren und Geräte noch auf entsprechende Updates hoffen dürfen – schließlich reicht die Liste zurück bis ins Jahr 1995! 

Apple hat bisher nur Meltdown im Griff 
Apple hat sich bisher nur um die Intel-spezifische Sicherheitslücke Meltdown gekümmert und entsprechende Vorkehrungen in macOS 10.13.2 eingepflegt. Seltsamerweise gibt der Hersteller an, auch iOS 11.2 und tvOS 11.2 abgesichert zu haben, doch in diesen Geräten stecken ARM-Chips, die lediglich von Spectre betroffen sind. Einzig die erste Generation des Apple TV nutzte einen Intel-Chip, doch auf dieser läuft wiederum tvOS 11.2 nicht. Einen Angriff über Spectre hält Apple für sehr schwierig und damit unwahrscheinlich. Als einzige Gegenmaßnahme ist vorerst eine gehärtete Version des Webbrowsers Safari geplant. Über Microcode- oder Firmware-Updates äußert sich Apple indes gar nicht

Neue Browser überall 
Auch die Browser-Entwickler haben bereits reagiert: Da die Angriffe auf die Spekulative Ausführung (Speculative Execution) nur dann funktionieren, wenn der Angreifer eine genaue Zeitmessung durchführen kann, hat man beim Firefox 57.0.4 einfach die Schärfe für die Funktion performance.now() von 5 auf 20 Mikrosekunden angehoben. Zusätzlich wurde der SharedArrayBuffer deaktiviert, da man über diesen eine genauere Zeitmessung verwirklichen könnte. Das ist einfach, aber effektiv! 
Ebenfalls gestern veröffentlicht wurden Chrome 63.0.3239.132 und Opera 50.0.2762.45, doch Google nennt keine Details hinsichtlich der Änderungen und bei Opera gibt es keinen Hinweis auf Meltdown oder Spectre. Dafür bietet Opera nun einen Schutz vor unerwünschtem Crypto Mining und einen PDF-Export für Webseiten. 

Antworten
#12
Ein interessanter Forenbeitrag bei heise:

Zitat:04.01.2018 11:17

@Heise - es gibt zu den Bugs keine Patche sondern nur Workarounds!

Alle reden Sie vom Patch, dabei gibt es zu diesem Bug keinen Patch - nirgends!

Patch - ich behebe das Problem!
Workaround - ich umgehe das Problem - irgendwie!

Wo liegt der kleine aber feine Unterschied. Nun ein Patch behebt das Problem von der Wurzel an - sprich dort wo es ursprünglich implementiert wurde.

Ein Workaround aber versucht (und mehr kann es auch nicht machen) das Problem zu umgehen!

Workarounds funktionieren wenn etwas vorher nicht laufen will (Man bewegt sich absichtlich so das der Workaround auch funktioniert). Als IT Sicherheitslösung aber versucht der Hacker alles um den Workaround zu umgehen (schließlich ist das zugrunde liegende Problem ja noch vorhanden).

Ich wette das die Workarrounds bei näherer Betrachtung implodieren werden. Das zugrunde liegende Problem wurde nicht gefixt, und liegt da in den tiefen der CPU und lockt jeden Hacker wie eine saftige Karotte den Esel.

Gruß H.

Quelle: https://www.heise.de/forum/heise-Securit...6159/show/
Antworten
#13
(06.01.2018, 08:53)Blaubär schrieb: ..

Ich wette das die Workarrounds bei näherer Betrachtung implodieren werden. Das zugrunde liegende Problem wurde nicht gefixt, und liegt da in den tiefen der CPU und lockt jeden Hacker wie eine saftige Karotte den Esel.

Quelle: https://www.heise.de/forum/heise-Securit...6159/show/

siehe auch hier ..

Die Hardwarehersteller reiben sich schon die Hände ... das ist deren "Dieselskandal" Big Grin

Cheffe kauft wieder Aktien wenn diese im Keller sind.

Ob das ein Versehen mit der "Sicherheitslücke" war, wage ich mal zu bezweifeln.
Antworten
#14
Analyse zur Prozessorlücke: Meltdown und Spectre sind ein Security-Supergau

Die Sicherheitslücken Meltdown und Spectre treffen die Prozessorhersteller ins Mark - vor allem Intel. Aus den Lücken ergeben sich mehr als ein Dutzend Angriffsmöglichkeiten - ein Security-Supergau. EIne Analyse von Andreas Stiller.

Die Prozessor-Sicherheitslücke ist in aller Munde, – was ist eigentlich geschehen? Drei Projektgruppen haben eine Fülle von Angriffsmöglichskeiten ausgetüfftelt, um irgendwie Speicher auszulesen, auf den ein User-Prozess gar nicht zugreifen können dürfte (Bruch der Memory Isolation).

Und dafür verwenden sie eine Eigenschaft der modernen Out-of-Order-Prozessoren, die einfach genau das tun, was ihr Name sagt: nämlich Out of Order zu arbeiten. Um diesem Auftrag gerecht zu werden, müssen sie spekulativ schon mal ein paar Befehle ausführen, die aber möglicherweise im realen Programmfluss bei einer Fehlspekulation doch nicht wirklich ausgeführt werden.

Diese Befehle laden häufig auch vermutlich benötigte Daten in die Caches, aktualisieren die für die Adressberechnung benötigten Translation Lookaside Buffer (TLBs) und treffen weitere spekulative Vorbereitungen – all das bringt im Trefferfall enorme Performancevorteile und ohne das macht Out-of-Order wenig Sinn. Aber in diesen spekulativen Befehlen liegt auch die Crux, denn sie geben Raum für eine ganze Reihe von Angriffsszenarien.
Die Forscher sorgen nun dafür, dass die Spekulation bei einem bestimmten Befehl (bedingter oder indirekter Sprung, Exception etc) immer schief geht und dass die Zeit, bis der Prozessor die fehlerhafte Spekulation erkennt, möglichst lang ist. Dann ist genügend Zeit (zum Teil 100 Takte und mehr), um zahlreiche nachfolgende Befehle „transient“ auszuführen. Das heißt, die transienten Befehle werden nur spekulativ mit internen Registern und nie wirklich mit den Architekturregistern ausgeführt, sie können also auch nie eine Exception generieren, egal welchen Unsinn sie anstellen.....

weiter hier:https://www.heise.de/newsticker/meldung/...?seite=all
Antworten
#15
Anscheinend schwerwiegende Probleme mit einem aktuellen MS-Sicherheitsupdate bei WIN7 mit AMD-Prozessoren:

STOP: 0x000000C4 after installing KB4056894 - 2018-01 Security Monthly Quality Rollup for WIndows 7 for x64


Zitat: 
After installing the latest Windows updates and rebooting, I got the following error:

*** STOP: 0x000000C4 (0X0000000000000091,0x0000000000000000, 0xFFFFFF80002C4EFC0, 0x0000000000000000)

I could not boot into Safe Mode. I was able to boot into the recover console and uninstall the latest update that was still in the "Install Pending" state by running this:

# determine where your Windows install is. Could be c:, d:, e: etc. Run dir to check.
d:
dir
# Should look like your Windows root. Then use d:, if not keep checking other drive letters.
dism /image:d:\ /remove-package /packagenameTongueackage_for_RollupFix~31bf3856ad364e35~amd64~~7601.24002.1.4 /norestart/scratchdir:d:\temp

I do not know if that RollupFix is the same a KB4056894, but after removing that package the system booted successfully. The KB4056894 update is now listed as available in Windows Update again. I'm going to avoid installing that update, but it includes the fix for the latest Spectre and Meltdown security vulnerabilities. 

The STOP code appears to match this KB2816159, but when I tried to apply the hotfix, it says:

The update is not applicable to your computer.

Is KB4056894 causing this STOP: 0x000000C4 error?

The CPU is a dual socket motherboard with two Dual Core AMD Opteron 285 chips. Based on other reports, this is effecting all older AMD CPUs: Opteron, Athlon, Turion.
  • AMD Athlon X2 6000+

  • AMD Athlon X2 4800+

  • AMD Athlon X2 4600+

  • AMD Athlon X2 BE-2400

  • AMD Opteron 285

  • AMD Turion X
                                                        
"Die Menschen verwechselten Messungen mit Verstehen. Und sie mußten sich immer in den Mittelpunkt allen Geschehens stellen. Das war ihr größter Dünkel. Die Erde erwärmt sich – es muß unsere Schuld sein! Der Berg vernichtet uns – wir haben die Götter nicht besänftigt! Es regnet zu viel, es regnet zu wenig – es ist tröstlich zu glauben, daß diese Dinge irgendwie mit unserem Verhalten zusammenhängen, daß, wenn wir nur ein bißchen besser, ein bißchen bescheidener lebten, unsere Tugenden belohnt würden." - Robert Harris "Pompeji" (2003)

Antworten


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste