News Windows 10: Neuer Intel-Microcode gegen Spectre V3a, V4 & L1TF

Micha45 schrieb:
@Stunrise
Die Bezeichnung "IT-Professional" in deiner Sig kann doch wohl nur ein schlechter Witz sein. Profis geben solche hanebüchenen Empfehlungen an unbedarfte User nicht.
HarHar!
 
Micha45 schrieb:
Ich halte deine "Anleitung" für schlicht und ergreifend fahrlässig.
Würde ich so nicht sagen. Die Anleitung als solches finde ich weniger problematisch. Wer das machen möchte, soll das ruhig tun und umsetzen (natürlich auch bei aller Vorsicht die bei einer von irgendwen unbekannten geposteten Anleitung immer angebracht ist).

Problematischer sehe ich den zweiten Punkt den Du ansprichst:
Micha45 schrieb:
Kein Mensch weiß bis dato genau, inwieweit und in welchem Ausmaß diese Sicherheitslücken bereits ausgenutzt worden sind und die betroffenen Hardwarehersteller geben sich gemeinsam mit Microsoft alle Mühe, nach und nach Herr über diese unschöne Geschichte zu werden.
Und genau das ist der Punkt. Wenn man solche Anleitungen postet, sollte man seriöserweise dann auch nicht irgendwelches Aluhutgequatsche oder ähnliche Verharmlosungen bringen, sondern klipp und klar sagen was Sache ist. Das es nämlich durchaus die Sicherheit gefährdet. Und selbst wenn man über das hier und jetzt dazu ne zuverlässige Aussage treffen könnte(!) heißt das nicht, dass die morgen noch gültig ist. Die getätigten Einstellungen sind dafür aber morgen noch aktiv. Und eher wird es vergessen als das man sie dann irgendwann wieder zurückstellt.

Micha45 schrieb:
Die Bezeichnung "IT-Professional" in deiner Sig kann doch wohl nur ein schlechter Witz sein.
Gut. Aber das wird allein dadurch klar, dass er in der selben Zeile einem nen MCSE unter die Nase reibt. :-)
 
  • Gefällt mir
Reaktionen: Micha45 und Iscaran
Stunrise schrieb:
Ich habe das PowerShell Modul SpeculationControl geprüft und dort beinhaltet die neueste Version 1.0.12 tatsächlich erheblich mehr Infos, als die bei mir noch vorher installierte 1.0.5. Ich habe das Modul nun aktualisiert (Update-Module SpeculationControl) und jetzt zeigt er mir den Status von L1TF und "Speculative Store Bypass" mit an.

Es ist also wenigstens erfreulich zu sehen, dass das setzen der beiden Registry-Keys für Disabled auch diese Performancefresser mit deaktiviert. Damit bin ich erstmal auf der sicheren (bzw. schnellen) Seite und habe nach wie vor überragende CPU- und SSD Performance auf Kosten von Scheinsicherheit. Wobei meine Zugangsdaten ohnehin längst in jeder Crackbude bekannt sein müssten, wenn man nach den Weltuntergangspropheten hier im Forum geht, in jeder Grundschule wird schließlich Malwarecode für Meltdown und Spectre geschrieben. Gibt ja auch schon tausende an bekannten Varianten von SideChannel Malware :rolleyes:
PS: Man bemerkt übrigens laut dem Entdecker eine 100% CPU Auslastung mindestens eines Kerns, wenn gerade Meltdown/Spectre genutzt wird. Nicht nur, dass der PC also rotz lahm wird, sondern die Lüfter werden ebenfalls lauter. Aber egal, besser die performancefresser aktivieren, damit man sich sicher fühlt :daumen:

Anhang anzeigen 728914

Anleitung zum Aktivieren oder Deaktivieren der Meltdown / Spectre Patches

1: Erstellt eine neue Textdatei und kopiert den nachfolgenden Code zum Deaktivieren oder Reaktivieren hinein
2: Ändert die Dateiendung der Textdatei von .txt zu .reg
3: Führt die Datei aus und lässt die Registry überschreiben.

1: Meltdown + Spectre Patches aktivieren (Standard unter Windows 10)
Meltdown-Fix: Aktiviert (Sicher)
Spectre-Fix: Aktiviert (Sicher)
Performance: Schlecht


2: Spectre Patch allein deaktivieren
Meltdown-Fix: Aktiviert (Sicher)
Spectre-Fix: Deaktiviert (Unsicher)
Performance: Mittel


3: Alle Patches deaktivieren
Meltdown-Fix: Deaktiviert (Unsicher)
Spectre-Fix: Deaktiviert (Unsicher)
Performance: Hoch


Die Änderungen durch die oben genannten Registry-Werte werden erst nach einem Neustart des Computers aktiv.

Merci, damit müsste sich ja der Effekt der Patches recht einfach durchbenchen lassen. Nur sollte man das auch im Direktvergleich zb mit der Konkurrenz machen. Zb sagen 30% weniger 4k Read auf SSD wenig aus wenn man die Zahl der Konkurrenz nicht kennt.

Wäre schön wenn man die Auswirkungen mal wieder nachtestet. Meine aber CB hatte das im Falle der ursprünglichen Spectre / Meltdown Sache getan. Geht aber auch deutlich ausführlicher.

Mich würden da weniger Game Benches interessieren, eher den Anwendungs Parcour + SSD Parcour.
 
Pizza! schrieb:
Vielleicht sollte man das aktuelle Konzept von HT und SMT komplett beenden. Nur noch auf reale Kerne setzen oder HT von Grund auf neu machen.
Ist eigentlich das alte Konzept der Module (Bulldozer) auch angreifbar? Wenn nicht, sollte man vielleicht dieses Konzept noch einmal aufgreifen?
 
andy_m4 schrieb:
Und genau das ist der Punkt. Wenn man solche Anleitungen postet, sollte man seriöserweise dann auch nicht irgendwelches Aluhutgequatsche oder ähnliche Verharmlosungen bringen, sondern klipp und klar sagen was Sache ist.

Na dann springe ich einmal ein und erkläre mal was Sache ist:
Mit Ausnahme von Spectre V1 basieren alle Angriffe der Spectre Familie lediglich auf Rechteausweitungen in diversen Formen d.h. der Angreifer muss bereits Code auf dem System ausführen können. Hier ist der Schadensfall sowieso schon eingetreten, da im Falle eines Kryptotrojaners bereits alle Dateien verschlüsselt werden können auf die der Benutzer Zugriff hat. Weiters ist trotzdem kein direkter Schreibzugriff gegeben d.h. es kann die Lücke auch nicht genutzt werden um die Detektion zu erschweren oder sich tiefer im System festzusetzen.

Problematisch sind diese Lücken erst wenn auf einem physischen Rechner mehrere virtuelle Maschinen von unterschiedlichen Kunden gehostet werden. Für Cloudanbieter ist das Ganze eine riesige Katastrophe, für alle anderen sind diese Lücken jedoch komplett unbedenklich.
Alle Cloudanbieter setzen aber weder Desktop CPUs ein noch Windows 10 als Hostsystem. Hier wird man bestenfalls ein Windows Server 2016 Datacenter Edition antreffen.

Bei Spectre V1 kann aus einer Skriptsprache der Speicher der hostenden .exe Datei ausgelesen werden z.B. kann per Javascript auf den Speicher des Browsers zugegriffen werden. Das ist ein sehr simpler Exploit, lässt sich jedoch selbst mit einem kompletten CPU Redesign nicht fixen ohne auf das Performanceniveau von vor 2000 zurück zu fallen. Diese Lücke muss von der Anwendungen, die die Skriptsprache zur Verfügung stellt gefixed werden, indem der Seitenkanal durch abschalten von genauen Zeitmessfunktionen die Grundlage entzogen wird (hier geht es um Timer < 100ns), was bei den Browserherstellern schon Anfang 2018 passiert ist.

Warum bringt Intel trotzdem Microcode Updates für die Desktop CPUs? Meiner Ansicht nach kann hier nur das Motiv dahinter stecken ähnlich wie Apple die alten Generationen etwas runter zu patchen um auch mit Ende von Moores Law den Umsatz zu sichern und ich denke, dass das erst der Anfang sein wird.
 
hehe, nur weiter so...bald ist mein sandy wieder schneller als ein 7700k....bei mir wird gar nichts gepatched/gesichert.:daumen:
 
@Stunrise Was ist mit 3+4 und L1TF... sind die auch aus, wenn die beiden alten register FeatureSettingsOverride und mask auf 3 stehn?

Wie funktioniert das mit dem PS script? Bei mir kommt nach

PS C:\WINDOWS\system32> Install-Module -Name SpeculationControl

Der NuGet-Anbieter ist erforderlich, um den Vorgang fortzusetzen.
PowerShellGet erfordert die NuGet-Anbieterversion 2.8.5.201 oder höher für die Interaktion mit NuGet-basierten
Repositorys. Der NuGet-Anbieter muss in "C:\Program Files\PackageManagement\ProviderAssemblies" oder
"C:\Users\mkdr\AppData\Local\PackageManagement\ProviderAssemblies" verfügbar sein. Sie können den NuGet-Anbieter auch
durch Ausführen von 'Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force' installieren. Möchten Sie
den NuGet-Anbieter jetzt durch PowerShellGet installieren und importieren lassen?
[J] Ja [N] Nein [H] Anhalten [?] Hilfe (Standard ist "J"): J

Nicht vertrauenswürdiges Repository
Sie installieren die Module aus einem nicht vertrauenswürdigen Repository. Wenn Sie diesem Repository vertrauen, ändern
Sie dessen InstallationPolicy-Wert, indem Sie das Set-PSRepository-Cmdlet ausführen. Möchten Sie die Module von
'PSGallery' wirklich installieren?
[J] Ja [A] Ja, alle [N] Nein [K] Nein, keine [H] Anhalten [?] Hilfe (Standard ist "N"): J

PS C:\WINDOWS\system32> Get-SpeculationControlSettings
Get-SpeculationControlSettings : Der Befehl "Get-SpeculationControlSettings" wurde im Modul "SpeculationControl"
gefunden, das Modul konnte aber nicht geladen werden. Wenn Sie weitere Informationen wünschen, führen Sie
"Import-Module SpeculationControl" aus.
In Zeile:1 Zeichen:1
+ Get-SpeculationControlSettings
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-SpeculationControlSettings:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CouldNotAutoloadMatchingModule
 
Zuletzt bearbeitet:
@mkdr, der Befehl für die Module-Install lautet "Install-Module SpeculationControl" (also ohne "-Name" mitten drin), damit das aktuelle Modul installiert wird. Prüfen kannst du das Modul mit "Get-InstalledModule". Hier sollte dann die Version 1.0.12 auftauchen.
Anschließend kannst du mittels "Get-SpeculationControlSettings" den Schutz prüfen.
Ergänzung ()

Stunrise schrieb:
Anleitung zum Aktivieren oder Deaktivieren der Meltdown / Spectre Patches

1: Erstellt eine neue Textdatei und kopiert den nachfolgenden Code zum Deaktivieren oder Reaktivieren hinein
2: Ändert die Dateiendung der Textdatei von .txt zu .reg
3: Führt die Datei aus und lässt die Registry überschreiben.

1: Meltdown + Spectre Patches aktivieren (Standard unter Windows 10)
Meltdown-Fix: Aktiviert (Sicher)
Spectre-Fix: Aktiviert (Sicher)
Performance: Schlecht


2: Spectre Patch allein deaktivieren
Meltdown-Fix: Aktiviert (Sicher)
Spectre-Fix: Deaktiviert (Unsicher)
Performance: Mittel


3: Alle Patches deaktivieren
Meltdown-Fix: Deaktiviert (Unsicher)
Spectre-Fix: Deaktiviert (Unsicher)
Performance: Hoch


Die Änderungen durch die oben genannten Registry-Werte werden erst nach einem Neustart des Computers aktiv.

Die Anleitung ist zwar nett aber ich halte sie ebenfalls für sehr gewagt, denn nicht jeder ist in der Registry bewandert.
Zudem stimmen die Performance-Angaben nur bedingt und sind Hardware-abhängig. Ich habe alle Patches aktiv und bei mir wird mit InSpectre bei Performance "Good" angegeben (Hardware siehe Signatur).

Lediglich auf meinem Acer Apsire S3-391 Laptop mit einem Core i3 3217U (ist ein DualCore mit HT) wird die Performance als "schlecht" ausgewiesen, wenn die Patches aktiv sind. Wobei man das im Betrieb nicht spürt.

Würde mich echt wundern, wenn bei Dir (wenn die Hardware laut Signatur stimmt) mit den aktiven Patches die "Performance" als "Schlecht" ausgewiesen wird.

Zudem prüft InSpectre die L1TF-Lücke nicht mit, da die letzte Version des Tools aus April 2018 ist.
 
Zuletzt bearbeitet:
@inge70 Nein geht nicht, wie oben steht. Scheinbar wird dem modul nicht vertraut. InSpectre funktioniert nicht korrekt seit 1809 da sich wohl die Registry Werte verändert haben und InSpectre damit nicht klar kommt. Habe den Autor schon mehrfach angeschrieben der reagiert aber nicht bzw weigert sich bisher InSpectre anzupassen.

PS C:\WINDOWS\system32> Get-InstalledModule

Version Name Repository Description
------- ---- ---------- -----------
1.0.12 SpeculationControl PSGallery This module provides the ability to query the sp...


PS C:\WINDOWS\system32> Get-SpeculationControlSettings
Get-SpeculationControlSettings : Der Befehl "Get-SpeculationControlSettings" wurde im Modul "SpeculationControl"
gefunden, das Modul konnte aber nicht geladen werden. Wenn Sie weitere Informationen wünschen, führen Sie
"Import-Module SpeculationControl" aus.
In Zeile:1 Zeichen:1
+ Get-SpeculationControlSettings
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-SpeculationControlSettings:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CouldNotAutoloadMatchingModule

PS C:\WINDOWS\system32> Import-Module SpeculationControl
Import-Module : Die Datei "C:\Program
Files\WindowsPowerShell\Modules\SpeculationControl\1.0.12\SpeculationControl.psm1" kann nicht geladen werden, da die
Ausführung von Skripts auf diesem System deaktiviert ist
. Weitere Informationen finden Sie unter
"about_Execution_Policies" (https:/go.microsoft.com/fwlink/?LinkID=135170).
In Zeile:1 Zeichen:1
+ Import-Module SpeculationControl
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : Sicherheitsfehler: (:) [Import-Module], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess,Microsoft.PowerShell.Commands.ImportModuleCommand
 
Bezüglich InSpectre und 1809 war mir das nicht bekannt. Guter Hinweis.

Die Ausgabe "nicht vertrauenswürdiges Repository" in Powershell bei der Install der Module ist bekannt. Warum MS das so ausgibt (ist schon lange so), ist aber nicht bekannt.

Das Modul wurde bei dir aber installiert. Siehe die Ausgabe Get-InstalledModule -> 1.0.12

Eventuell müsstest du extra noch "Set-ExecutionPolicy -ExecutionPolicy RemoteSigned" ausführen und entsprechend mit "j" genehmigen (musste ich auf einem meiner Rechner auch mal).

Dann sollte "Get-InstalledModule SpeculationControl" die Angaben ausgeben.

Quelle: Deskmodder (der Artikel ist zwar älter, aber funktioniert trotzdem)
 
@inge70 ist das nicht etwas unsicher, dass ich global einfach die policy ändere um scripte auszuführen? wie mach ich das wieder rückgängig. kann man das nich nur einmal zulassen oder nur für das eine script.
 
mkdr schrieb:
@inge70 ist das nicht etwas unsicher, dass ich global einfach die policy ändere um scripte auszuführen? wie mach ich das denn wieder rückgängig. kann man das nich nur einmal zulassen oder nur für das eine script.

Du musst das leider machen, sonst geht die Get-Abfrage nicht. Du bestätigst die Anfrage mit "J" und nicht "A" (für Alle). Im verlinkten Artikel von Deskmodder steht auch wie du das alles wieder zurück stellen kannst (unter "Überprüfen, ob die Schutzfunktion aktiviert ist" wo die Befehle aufgelistet werden, letzten beiden Punkte). ;)

Deskmodder schrieb:
Hatte man RemoteSigned ausführen müssen, gibt man in PowerShell dann Set-ExecutionPolicy -ExecutionPolicy Restricted ein. Damit wird der Vorgang rückgängig gemacht.
 
@inge70 Erm... Set-ExecutionPolicy -ExecutionPolicy RemoteSigned ist doch dann für immer gesetzt und für alle. Wo ist da die Limitierung nur für das eine Script? Wie setzt ich das wieder zurück nachdem ich das Script einmal ausgeführt habe?
 
siehe mein Zitat von Deskmodder: Set-ExecutionPolicy -ExecutionPolicy Restricted

damit setzt du "RemoteSigned" wieder auf das vorhergehende zurück.

PS: ob es einen Befehl für die Limitierung auf ein bestimmtes Script gibt, weiß ich nicht. So stark steh ich da auch nicht im Thema. Ich hab die Anleitung von Deskmodder genutzt und hinterher das Zurücksetzen getestet. Nach dem Zurücksetzen auf "Restricted" konnte ich die Get-Abfrage nicht mehr ausführen. Das Modul kann man auch wieder deinstlalieren. Befehl dazu findest auch im Link zu Deskmodder.

Eine Sicherheitslücke entsteht dir aber sicherlich nicht, wenn du "RemotedSigned" bestehen lässt. Das wäre dann bereits auf Deskmodder entsprechend gepostet worden. Warum MS das eigene Tool Powershell bei Install die Modul-Quelle als "nicht vertrauenswürdiges Repository" angibt, ist niemanden bekannt. Es wird ja durch MS ausgegeben.
 
Zuletzt bearbeitet:
Danke für die Erläuterungen zu Spectre V1 - es stimmt schon dass die Spectre Angriffe vor allem für Cloudanbieter ein Problem sind. Dennoch ist die reale Gefahr eines Angriffes auf Desktops durchaus da.

Man kann viel Unfug treiben mit einem "lese-Angriff" der unbemerkt während der Browser-Session (mit-)läuft auch auf User end Systemen...Aber klar ist hier der Nutzen oft "limitiiert". Nichtsdesto trotz glaube ich sind die ganzen Security Experten und Kernel Programmierer wohl nicht paranoid wenn sie AUCH für End-User die Lücken stopfen und nicht nur für Server. Ich denke die haben wohl viel mehr Potential in der Lücke gesehen als du uns hier erklärst.

Btw:

andr_gin schrieb:
Bei Spectre V1 kann aus einer Skriptsprache der Speicher der hostenden .exe Datei ausgelesen werden z.B. kann per Javascript auf den Speicher des Browsers zugegriffen werden. Das ist ein sehr simpler Exploit, lässt sich jedoch selbst mit einem kompletten CPU Redesign nicht fixen ohne auf das Performanceniveau von vor 2000 zurück zu fallen. Diese Lücke muss von der Anwendungen, die die Skriptsprache zur Verfügung stellt gefixed werden, indem der Seitenkanal durch abschalten von genauen Zeitmessfunktionen die Grundlage entzogen wird (hier geht es um Timer < 100ns), was bei den Browserherstellern schon Anfang 2018 passiert ist.

Das allein reicht nicht aus: siehe Alephsecuritys wege die Timermitigation zu unterwandern:
https://alephsecurity.com/2018/06/26/spectre-browser-query-cache/
 
Micha45 schrieb:
Die Bezeichnung "IT-Professional" in deiner Sig kann doch wohl nur ein schlechter Witz sein.
andy_m4 schrieb:
Gut. Aber das wird allein dadurch klar, dass er in der selben Zeile einem nen MCSE unter die Nase reibt. :-)
Der Vollständigkeit halber habe ich noch den MCSE für Messaging sowie MCSA für Server 2012 und noch ein paar ältere Sachen :daumen: Ich habe auch kein Problem damit, wenn irgendwelche 1st Level Support "Admins" an mir zweifeln :heilig:

inge70 schrieb:
Zudem stimmen die Performance-Angaben nur bedingt und sind Hardware-abhängig. Ich habe alle Patches aktiv und bei mir wird mit InSpectre bei Performance "Good" angegeben (Hardware siehe Signatur).

Lediglich auf meinem Acer Apsire S3-391 Laptop mit einem Core i3 3217U (ist ein DualCore mit HT) wird die Performance als "schlecht" ausgewiesen, wenn die Patches aktiv sind. Wobei man das im Betrieb nicht spürt.
InSpectre ist einfach eine DAU-Software, die "Performance" dort ist in einer statischen Datenbank hinterlegt, d.h. "schnelle" Prozessoren (gemäß Auffassung des Entwicklers von InSpectre) bekommen dort immer ein "Gut", auch wenn die Performancefresser aktiviert sind. Aber auch schnelle Prozessoren verlieren Leistung, ein 8700K ohne die Mitigations ist schneller, als ein 8700K mit eben diesen. Natürlich ist selbst ein 8700K mit allen Mitigations noch schneller, als jeder erhältliche Ryzen, dennoch sinkt die Performance mit jeder einzelnen aktivierten Mitigation. Die Performance sollte daher relativ zum "Original Zustand" angegeben werden und dann stimmt meine Darstellung und die von InSpectre eben nicht.

Iscaran schrieb:
Man kann viel Unfug treiben mit einem "lese-Angriff" der unbemerkt während der Browser-Session (mit-)läuft auch auf User end Systemen...Aber klar ist hier der Nutzen oft "limitiiert".
Ist kein bisschen unbemerkt, weil die CPU-Auslastung auf 100% hoch geht. Ein lauter Lüfter, hohe Temperaturen, schwache Performance und niedrige Akku-Laufzeit sind alles, aber nicht unbemerkt
 
  • Gefällt mir
Reaktionen: inge70
Nicht jeder bemerkt, wenn ein oder zwei Kerne auf 100% laufen. Nicht überall steigen dadurch Temperaturen so sehr, dass Lüfter automatisch hochdrehen. Nicht überall dürfen Lüfter überhaupt automatisch hochdrehen. Nicht überall sinkt dadurch spürbar die Performance, wenn noch 6 (oder mehr) übrige Threads nahe idle laufen. Nicht jeder Computer wird dauerhaft en detail überwacht. Nicht jeder Computer hat einen Akku.

Du begrenzt Deine Sichtweise auf das Thema schon enorm, wie mir scheint.
 
Ich begrenze das Thema kein bisschen, ich zeige auf, dass @Iscaran das Thema begrenzt und es so darstellt, als wäre es der perfekte Angriff aus dem Nichts, von dem man keine Chance hat, es mitzubekommen. Das Gegenteil ist aber der Fall, auch wenn man nicht jeden Angriff zwangsweise mitbekommen muss, ist es erheblich realistischer eine Meltdown Attacke zu erkennen, als einen verseuchten Gerätetreiber oder einen Backdoor Trojaner, der im Hintergrund arbeitet. Den erkennst du nämlich garantiert überhaupt nicht, wenn nicht gerade eine GUI mit Bitcoin Zahlungsdaten auftaucht oder ähnliches.
 
@Stunrise: Auch die CPU-Last muss nicht zwingend auf 100% hochgehen. Das kann man einstellen - allerdings sinkt die Datenrate damit natürlich auch.

Deine Sichtweise ist leider schon sehr eingeschränkt. Ich vermute mal die ganzen DAUs die daran sind die Patches und Microcode updates zu machen sind alle völlig überflüssig - weil die Attacken ja keine Relevanz haben.
Und dass die Patches auch für User-Space ausgerollt werden ist bestimmt nach allen IT-Größen die noch nicht einmal für Companies arbeiten sicherlich gewollt um den Umsatz zu steigern.
Mir wäre jedenfalls neu dass ein Linus Torvald für Intel arbeitet oder ähnliches. Dennoch ist auch Herr Torvald sehr dahinter Patches in z.B. Linux zu integrieren sowohl (vor allem) auf Server-Ebene ABER AUCH auf User Ebene.

Scheinbar sind alle diese DAU's überzeugt davon dass es sehr wohl auch User betrifft. Sonst würde man sich die Arbeit doch sparen ?
 
  • Gefällt mir
Reaktionen: max9123, Micha45 und Shagrath
Zurück
Oben