2018
20.06
Spectre-NG-Lücken – OpenBSD Hyper-Threading off

Nach deutlicher Kritik an Intels Informationspolitik zu den Sicherheitslücken Spectre Next Generation haben sich die Entwickler des freien Betriebssystems OpenBSD zu einem radikalen Schritt entschlossen: Künftig schalten sie bei Intel-Prozessoren die Multihhreading-Funktion Hyper-Threading ab. Wer sie unter OpenBSD trotzdem nutzen möchte, kann sie mit dem neuen sysctl namens hw.smt einschalten. OpenBSD-Entwickler Mark Kettenis erklärt in einem Log-Eintrag zum Quellcode, dass sich bei Intels Hyper-Threading als typische Implementierung von Simultaneous Multi-Threading (SMT) mehrere Threads bestimmte Hardware-Ressourcen teilen. Das trifft vor allem den L1-Cache und den Translation Lookaside Buffer (TLB).

Dieser gemeinsame Zugriff mehrerer Threads auf dieselben Hardware-Ressourcen mache Seitenkanalangriffe per Cache-Timing sehr viel leichter. OpenBSD-Entwickler haben den „dringenden Verdacht“, dass dadurch einige Schwachstellen vom Spectre-Typ ausnutzbar werden. Auf welche konkrete Sicherheitslücken unter den bereits veröffentlichten oder noch ausstehenden sich diese Vermutung bezieht, lässt Kettenis offen.

Welche Performance-Einbußen der Verzicht auf Hyper-Threading bringt, hängt sowohl vom Typ des Prozessors als auch von der laufenden Software ab. Bei den Desktop-Versionen von Core i5 und Celeron ist Hyper-Threading beispielsweise sowieso nicht aktivierbar. Beim HPC-Benchmark linpack, der mit hoch optimiertem AVX-Code sämtliche Recheneinheiten möglichst gut ausnutzt, kann Hyper-Threading sogar etwas bremsen. Im Rendering-Benchmark Cinebench R15 wiederum kann Hyper-Threading bis zu etwa 30 Prozent Mehrleistung bringen.

zurück