Mit CacheOut (oder L1D Eviction Sampling, L1DES) gibt es eine weitere Angriffsmöglichkeit auf Intel-CPUs über die spekulative Codeausführung. Der Angriff betrifft vor dem vierten Quartal 2018 hergestellte Intel-CPUs.
Natürlich gibt es ein Logo und eine eigene Webseite für die Hardware-Lücke: “Wir werden empirisch demonstrieren, dass CacheOut nahezu jede Hardware-basierte Security-Domain verletzen kann, Daten aus dem OS-Kernel, aus vorhandenen virtuellen Maschinen und sogar aus SGX-Enklaven leakt” heißt es dort. Verlinkt sind ein Paper und eine FAQ, die die Schwachstelle und den Angriff darauf im Detail erklären und mögliche Fragen beantworten.
Anders als bei den MDS-Schwachstellen (Microarchitectural Data Sampling) kann ein Angreifer laut der CacheOut-Webseite die Caching-Mechanismen der CPUs ausnutzen, um die zu leakenden Daten gezielt auszusuchen. Ihre Entdecker betrachten die CacheOut-Lücke daher als weiteren Angriff über die spekulative Ausführung (Speculative Execution) und als indirekte Folge von Meltdown und Spectre. Intels Meltdown-Abwehrmechanismen würden gegen CacheOut keine Wirkung zeigen, über den Browser lasse sich die Lücke jedoch nicht ausnutzen.
CPUs von AMD, ARM und IBM betrifft die Schwachstelle nicht. Wer eine nach Q4/2018 hergestellte Intel-CPU einsetzt, soll ebenfalls aus dem Schneider sein: Intel habe mit der Schwachstelle zu TSX Asynchronous Abort (TAA) unbeabsichtigt auch jene Lücke geschlossen, die den Cacheout-Angriff möglich macht. Eine Liste der aktuell betroffenen Prozessoren gibt es hier.
CacheOut ist auch L1DES
Zur Verwirrung trägt bei, dass mehrere Forscher die Schwachstelle parallel entdeckt zu haben scheinen. CacheOut ist laut dem CVE identisch mit einer von VUSec neu gefundenen RIDL-Variante, die deren Entdecker als L1DES bezeichnen. Damit folgen sie Intels offizieller Bezeichnung als L1D Eviction Sampling. VUSec bietet auf Github auch einen Proof-of-Concept-Exploit für die Lücke an. Als CacheOut oder L1DES trägt die Schwachstelle das CVE-2020-0549. Intel weist ihr zusätzlich einen eigenen Code zu (INTEL-SA-00329) und stuft sie als mittelschwer ein (6.5). Auf der Webseite bietet Intel Informationen zur Lücke an und verspricht Microcode-Updates.
Laut Intel selbst lassen sich Daten aus dem L1-Datencache (L1D) in einen unbenutzten L1D-Puffer (Fill Buffer) umleiten. Aus diesem Fill Buffer lassen sich die Daten dann über Side-Channel-Angriffe gezielt leaken und auslesen. Intel bezeichnet diese Methode des Auslesens daher als L1D Eviction Sampling und betrachtet die potenziellen Opfer als eine Untergruppe von L1TF (Foreshadow und Foreshadow-NG). Anders als bei Foreshadow sollen Angreifer bei CacheOut nicht gezielt physische Adressen abfragen können.






