Hardwaresicherheit
Warum fließen bei Angriffen wie Spectre Informationen ab, obwohl die Ergebnisse spekulativ ausgeführter Befehle verworfen werden?
- AWeil das Verwerfen scheitert und der geheime Wert im Register verbleibt
- BWeil das Ergebnis der spekulativen Ausführung auf der Festplatte gespeichert wird
- CWeil nur der architektonische Zustand wie Register zurückgesetzt wird, nicht aber der mikroarchitektonische Zustand wie der Cache
Antwort und Erläuterung anzeigen
Antwort: C. Weil nur der architektonische Zustand wie Register zurückgesetzt wird, nicht aber der mikroarchitektonische Zustand wie der Cache
CPUs sind so gebaut, dass der für das Programm sichtbare Zustand (Registerinhalte und Speicher) bei Fehlvorhersage vollständig zurückgesetzt wird. Der mikroarchitektonische Zustand, etwa der Cache-Inhalt oder der Zustand des Sprungprädiktors, wird als interner Zustand zur Leistungssteigerung jedoch nicht zurückgesetzt. Selbst wenn die Vereinbarungen der ISA eingehalten werden, wird der interne Zustand als Zeitunterschied von außen sichtbar; das ist der Kern dieser Art von Schwachstellen.