Die Kosten von Sicherheitsmaßnahmen auf Hardware-Ebene (erneut)
In den letzten Jahren hat der stetige Zustrom von Schwachstellen auf Hardwareebene, wie Heartbleed, Spectre, Rowhammer und viele andere, jeden CPU-Anbieter auf den Prüfstand gestellt. Keine Chip-Familie oder Architektur - ob Intel, AMD oder ARM - hat sich als immun gegen diese Schwachstellen erwiesen.
Das Linux-Kernel-Entwicklungsteam hat mit beeindruckender Geschwindigkeit und Hingabe reagiert, Sicherheitslücken geschlossen und Umgehungslösungen angeboten. Die Kosten für diese Abhilfemaßnahmen gehen jedoch oft zu Lasten der Leistung.
Es ist schon etwas mehr als ein Jahr her, dass wir dieses Thema in unserem Blog besprochen haben. Sie können sich den den vorherigen Artikel hiernachlesen, da er immer noch aktuell ist - aber die Geschichte ist noch lange nicht vorbei.
Abmilderungen: Ein zweischneidiges Schwert
Während Patches Systeme vor verheerenden Schwachstellen schützen, sind Leistungseinbußen oft unvermeidlich. So führten beispielsweise spekulative Ausführungsschwachstellen wie Meltdown und Spectre in einigen Fällen zu CPU-Leistungseinbußen von bis zu 30 %, je nach Arbeitslast und Architektur.
Abhilfemaßnahmen wie die Deaktivierung von Hyper-Threading, zusätzliches Speicher-Fencing oder erhöhter Overhead für den Speicherzugriff wurden zwar implementiert, aber sie verschlechtern die CPU-Leistung so stark, dass die Benutzer feststellen, dass ihre Spitzen-CPUs auf einem Niveau arbeiten, das mit dem von Hardware der älteren Generation vergleichbar ist.
Die Frustration bei Endbenutzern und Entwicklern gleichermaßen wächst. Sogar Linus Torvalds hat seine Enttäuschung über den Zustand der Hardware-Bugs zum Ausdruck gebracht. In seinen jüngsten Äußerungenbeklagte er die zunehmende Belastung durch die Kompensation der fehlerhaften Implementierungen der Hersteller. Diesmal richtete er sich gegen die vorgeschlagenen Patches zum Schutz von Speicherkopiervorgängen, die theoretisch ausgenutzt werden könnten. Zuvor hatte er sich bereits zu folgenden Themen geäußert AMDs fTPM, ein hardwarebasiertes Trusted Platform Module, das mit Leistungsproblemen und Fehlern zu kämpfen hat. Die Benutzer erleben Stottern, was zu Unterbrechungen bei täglichen Aktivitäten führt und teure Hardware-Upgrades wertlos macht. Es gibt eine Reihe anderer Situationen, in denen das Kernel-Team bei der Lösung von Problemen auf Hardware-Ebene eingesprungen ist, und dieses Mal scheint Linus einen anderen Ansatz zu verfolgen - er lässt die Hardware-Firmen ihre eigenen Fehler beheben (d.h., bessere Produkte entwickeln).
In gewisser Weise ist das verständlich - wenn Ihr Linux-System plötzlich an Leistung verliert, ist es genauso wahrscheinlich, dass Sie dem Betriebssystem die Schuld geben wie der Hardware, wenn das Betriebssystem in Wirklichkeit kein Problem hat. Aber es ist auch wichtig zu bedenken, dass Fehler auf Hardwareebene nicht immer durch ein Microcode-Update behoben werden können. Einige Probleme sind auf schlechte Architekturentscheidungen zurückzuführen, die erst in 3 oder 4 Jahren rückgängig gemacht werden können. Und in der Zwischenzeit sind Ihre Systeme einem Risiko ausgesetzt. Oder doch nicht? Ein weiteres Ärgernis, das er in seiner Schimpftirade anspricht, ist die Tatsache, dass die meisten dieser Schwachstellen nie in vollem Umfang zu produktionsreifen Angriffen geführt haben und rein theoretische Übungen bleiben. Aber die Auswirkungen der Abhilfemaßnahmen sind sehr real.
Die Realität der modernen CPU-Schwachstellen
Hardware-Sicherheitslücken haben sich von einigen wenigen zu praktisch allen modernen CPUs entwickelt. Schwachstellen wie Spectre, Meltdown, Foreshadow und Lazy FPU zeigen, wie tiefgreifend die Probleme sind. Das komplizierte Design moderner CPUs führt oft zu Schwachstellen, die nicht nur schwer zu beheben sind, sondern auch zu spürbaren Leistungseinbußen führen, wenn sie behoben werden.
Die folgende Tabelle veranschaulicht die Auswirkungen gängiger CPU-Schwachstellen auf die Leistung und die Abhilfemaßnahmen, die von verschiedenen Herstellern angewandt werden:
Schwachstelle | Betroffene CPUs | Auswirkungen auf die Leistung | Milderung | Leistungsverlust (ca.) |
Spectre/Meltdown | Intel Core, AMD Ryzen | Schwere | Microcode-Aktualisierungen | 10%-30% (variiert je nach Arbeitsaufkommen) |
Faule FPU | Intel x86-Prozessoren | Mäßig | Microcode-Aktualisierungen | 5%-10% |
Vorahnung | Intel-Kern | Hoch | Deaktivieren von Funktionen | Bis zu 30% |
Rowhammer | DDR-Speicher | Schwere | ECC, Softwarekorrekturen | In einigen Fällen minimal, in anderen spürbar |
Heartbleed | Mehrere Architekturen | Vernachlässigbar (CPU) | Patching von Bibliotheken | Vernachlässigbar |
Eine Zukunft des Kompromisses?
Der Leistungsabfall, der durch die Behebung von CPU-Schwachstellen entsteht, führt zu einer unangenehmen Erkenntnis: Ein Upgrade auf die neueste Hardware-Generation lohnt sich möglicherweise nicht, wenn der reale Leistungsvorteil durch notwendige Sicherheits-Patches zunichte gemacht wird. Viele Benutzer, vor allem diejenigen, die eine konstante Leistung benötigen - wie Gamer, Medienprofis oder Serverbetreiber - müssen feststellen, dass ihre teure Hardware durch Sicherheitslücken beeinträchtigt wird, die sie nicht vermeiden können.
Das Gleichgewicht zwischen Sicherheit und Leistung wird immer prekärer. Solange die Hersteller keine Architekturen entwickeln können, die gegen diese raffinierten Angriffe resistent sind, sind die Endbenutzer zu einem Kompromiss gezwungen - Sicherheit auf Kosten der Leistung. In der Zwischenzeit wird die Linux-Gemeinschaft unter der Führung von Torvalds wohl weiterhin den guten Kampf in einer Welt der "dummen Hardware" führen.
Hardware-Schwachstellen tauchen immer wieder auf, und obwohl Kernel-Entwickler wie das Linux-Team unermüdlich daran arbeiten, sie zu entschärfen, ist der Preis die Leistung. Für alle, die in die neueste Hardware investieren und sich davon einen deutlichen Leistungsschub erhoffen, ist die Realität ernüchternd. Solange die CPU-Hersteller nicht in der Lage sind, diese Schwachstellen auf Hardware-Ebene zu beheben, ist ein Upgrade Ihres Systems möglicherweise nicht mehr so lohnend wie früher.


