Abo
  • Services:

Sicherheitsupdate: Microsoft-Compiler baut Schutz gegen Spectre

Eine neue Funktion in Microsofts Compiler für C und C++ soll Schutzmaßnahmen gegen eine Variante des Spectre-Angriffs in Code einbauen. Diese Vorgehen wird zwar von Intel empfohlen, hat aber offensichtlich Grenzen und wird deshalb von der Linux-Community kritisiert.

Artikel veröffentlicht am ,
Beispielcode, der mit dem Spectre-Schutz erstellt worden ist.
Beispielcode, der mit dem Spectre-Schutz erstellt worden ist. (Bild: Microsoft)

Wie bereits von Microsoft angekündigt muss Code mit bestimmten Compiler-Optionen neu erstellt werden, um Schutzmaßnahmen gegen die Variante 1 des Spectre-Angriffs (CVE-2017-5753) erhalten zu können. Das Compiler-Team von Microsoft erklärt nun die Verfügbarkeit und Funktionsweise dieser Option in seinem eigenen Compiler MSVC für C und C++.

Stellenmarkt
  1. Schaeffler AG, Herzogenaurach
  2. über HSH+S Management und Personalberatung GmbH, Region Rhein-Neckar, nahe München, Frankfurt, Würzburg

Demnach enthalten aktuelle Versionen des Compilers die Option /Qspectre, die bisher aber nur für optimierten Code funktioniere (/O2 oder /O1). Ältere Compiler-Versionen enthalten die undokumentierte Option /d2guardspecload, die gleichbedeutend sei zu /Qspectre. Nutzer sollten aber auf /Qspectre wechseln, sobald diese in ihren Compilern verfügbar sei.

Die neue Option bewirkt das von Chiphersteller Intel empfohlene Vorgehen gegen diesen Spectre-Angriff. Dabei fügt der Compiler den Befehl LFENCE in die Codeabschnitte ein, die möglicherweise von dem Angriff betroffen sind. Das sorgt für eine direkte Barriere im Code. Sie unterbindet die für den Angriff genutzte spekulative Ausführung auf der CPU.

LFENCE hat Grenzen

Microsoft zufolge ist es wichtig zu beachten, dass es Grenzen für die Analyse gibt, die MSVC und Compiler im Allgemeinen durchführen können, wenn versucht wird, Instanzen von Variante 1 von Spectre zu identifizieren. "Daher gibt es keine Garantie, dass alle möglichen Instanzen von Variante 1 unter /Qspectre richtig behandelt werden", schreibt Microsoft.

Das sehen auch die Entwickler des Linux-Kernels, die ebenfalls vor dem Problem stehen, Schutzmaßnahmen gegen den Angriff umzusetzen. Darüber hinaus fürchten diese aber Leistungseinbußen durch die Verwendung von LFENCE, auch wenn etwa Microsoft sagt, dass diese in ihrem Fall vernachlässigbar sein sollten. Die Entwickler des Linux-Kernels arbeiten deshalb an alternativen Lösungen, die den Code vor Spectre schützen sollen. Das erfordert aber wohl größere konzeptionelle Umbauarbeiten am Code.

Einer der Entdecker von Spectre, Daniel Gruß, sagte im Interview mit Golem.de, dass er nur ein "geringes Vertrauen" in die Softwarelösungen zum Beheben von Spectre habe.



Anzeige
Hardware-Angebote
  1. 23,99€
  2. täglich neue Deals bei Alternate.de
  3. 349,00€ (inkl. Call of Duty: Black Ops 4 & Fortnite Counterattack Set)

Mr Miyagi 25. Jan 2018

Doch wird, sie schap23 hat da schon recht. Der Compiler fügt dann an Stellen die er für...

Mr Miyagi 25. Jan 2018

Ich denke die haben wir vor sehr langer Zeit überschritten, ungefähr seit der MOS 6502...

Mr Miyagi 25. Jan 2018

Software die mit dem Compiler genaut wurde, bei der die Option eingeschaltet war ist...

anonym 19. Jan 2018

vllt das gute alte phoronix? https://www.phoronix.com/scan.php?page=news_item&px=GCC-7.3...

1st1 18. Jan 2018

Siehe https://skyfallattack.com/ - es geht weiter...


Folgen Sie uns
       


Padrone-Maus-Ring - Kampagnenvideo (Indiegogo)

Der Ring des Schweizer Startups Padrone soll die Maus überflüssig machen.

Padrone-Maus-Ring - Kampagnenvideo (Indiegogo) Video aufrufen
Raspberry Pi: Spieglein, Spieglein, werde smart!
Raspberry Pi
Spieglein, Spieglein, werde smart!

Ein Spiegel, ein ausrangierter Monitor und ein Raspberry Pi sind die grundlegenden Bauteile, mit denen man sich selbst einen Smart Mirror basteln kann. Je nach Interesse können dort dann das Wetter, Fahrpläne, Nachrichten oder auch stimmungsvolle Bilder angezeigt werden.
Eine Anleitung von Christopher Bichl

  1. IoT mit LoRa und Raspberry Pi Die DNA des Internet der Dinge
  2. Bewegungssensor auswerten Mit Wackeln programmieren lernen
  3. Raspberry Pi Cam Babycam mit wenig Aufwand selbst bauen

Begriffe, Architekturen, Produkte: Große Datenmengen in Echtzeit analysieren
Begriffe, Architekturen, Produkte
Große Datenmengen in Echtzeit analysieren

Wer sich auch nur oberflächlich mit Big-Data und Echtzeit-Analyse beschäftigt, stößt schnell auf Begriffe und Lösungen, die sich nicht sofort erschließen. Warum brauche ich eine Nachrichten-Queue und was unterscheidet Apache Hadoop von Kafka? Welche Rolle spielt das in einer Kappa-Architektur?
Von George Anadiotis


    Chromebook Spin 13 im Alltagstest: Tolles Notebook mit Software-Bremse
    Chromebook Spin 13 im Alltagstest
    Tolles Notebook mit Software-Bremse

    Bei Chromebooks denken viele an billige, knarzende Laptops - das Spin 13 von Acer ist anders. Wir haben es einen Monat lang verwendet - und uns am Ende gefragt, ob der veranschlagte Preis für ein Notebook mit Chrome OS wirklich gerechtfertigt ist.
    Ein Test von Tobias Költzsch


        •  /