sicherheitslücken in der x86 / amd64 -...
TRANSCRIPT
![Page 1: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/1.jpg)
Sicherheitslücken in der x86 / amd64 -Architektur
MarcellHaritopoulos
MatthiasPaulitsch
MichaelSismanovic
13. Februar 2019
![Page 2: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/2.jpg)
Inhaltsverzeichnis
1 EinführungGrundinformationenGeschichtliche EntwicklungSpeicherverwaltungProzessor Modi
2 SpectreGrundinformationenOut of Order ExecutionSpectre Angri�eVersionen und Gegenvorkehrungen
3 MeltdownGrundinformationenVorgehensweiseUnterschied zu SpectreGegenvorkehrungen / �Fixes�
4 Weiterführende Literatur
![Page 3: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/3.jpg)
Einführung
1 EinführungGrundinformationenGeschichtliche EntwicklungSpeicherverwaltungProzessor Modi
2 Spectre
3 Meltdown
4 Weiterführende Literatur
![Page 4: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/4.jpg)
Grundinformationen
Was ist x86?
x86 ist eine ISA
Was ist ISA?
ISA steht für (Instruction Set Architecture)z.B: POP, PUSH, ADD, JUMP ...
Woher kommt der Name x86
Die Modellnummern der ersten Intel-Prozessoren endeten fast allemit 86 (8086, 80286, 80386, 80486, 80586)
![Page 5: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/5.jpg)
Grundinformationen
Was ist x86?
x86 ist eine ISA
Was ist ISA?
ISA steht für (Instruction Set Architecture)z.B: POP, PUSH, ADD, JUMP ...
Woher kommt der Name x86
Die Modellnummern der ersten Intel-Prozessoren endeten fast allemit 86 (8086, 80286, 80386, 80486, 80586)
![Page 6: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/6.jpg)
Grundinformationen
Was ist x86?
x86 ist eine ISA
Was ist ISA?
ISA steht für (Instruction Set Architecture)z.B: POP, PUSH, ADD, JUMP ...
Woher kommt der Name x86
Die Modellnummern der ersten Intel-Prozessoren endeten fast allemit 86 (8086, 80286, 80386, 80486, 80586)
![Page 7: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/7.jpg)
Grundinformationen
Was ist x86?
x86 ist eine ISA
Was ist ISA?
ISA steht für (Instruction Set Architecture)z.B: POP, PUSH, ADD, JUMP ...
Woher kommt der Name x86
Die Modellnummern der ersten Intel-Prozessoren endeten fast allemit 86 (8086, 80286, 80386, 80486, 80586)
![Page 8: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/8.jpg)
Geschichte
1978 - erste x86-Prozessoren erschienen mit nur 16 Bits (8086und 8088)
1985 wurde auf 32 Bit aufgerüstet (80386)
1999 wurde bekanntgegeben, dass AMD x86 auf 64 Bitaufrüsten will.Intel hingegen entschied sich dafür, eine neueProzessorarchitektur zu entwickeln (Itanium-Architektur IA-64)
![Page 9: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/9.jpg)
Geschichte
1978 - erste x86-Prozessoren erschienen mit nur 16 Bits (8086und 8088)
1985 wurde auf 32 Bit aufgerüstet (80386)
1999 wurde bekanntgegeben, dass AMD x86 auf 64 Bitaufrüsten will.Intel hingegen entschied sich dafür, eine neueProzessorarchitektur zu entwickeln (Itanium-Architektur IA-64)
![Page 10: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/10.jpg)
Geschichte
1978 - erste x86-Prozessoren erschienen mit nur 16 Bits (8086und 8088)
1985 wurde auf 32 Bit aufgerüstet (80386)
1999 wurde bekanntgegeben, dass AMD x86 auf 64 Bitaufrüsten will.Intel hingegen entschied sich dafür, eine neueProzessorarchitektur zu entwickeln (Itanium-Architektur IA-64)
![Page 11: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/11.jpg)
Geschichte
1978 - erste x86-Prozessoren erschienen mit nur 16 Bits (8086und 8088)
1985 wurde auf 32 Bit aufgerüstet (80386)
1999 wurde bekanntgegeben, dass AMD x86 auf 64 Bitaufrüsten will.Intel hingegen entschied sich dafür, eine neueProzessorarchitektur zu entwickeln (Itanium-Architektur IA-64)
![Page 12: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/12.jpg)
Virtual Memory
Begri�serklärung:
Virtueller Arbeitsspeicher ermöglicht es jedem einzelnen Prozess, sozu agieren, als stünde ihm der gesamte Arbeitsspeicher allein zurVerfügung. Dadurch bekommt jedes Programm seinen eigenenAdressraum und wird von allen anderen Prozessen isoliert.
Wieso brauchen wir Virtual Memory?
Verhindert, dass Programme auf den selben physikalischen Speicher(unkontrolliert) zugreifen.Programme können sich also nicht gegenseitig beein�ussen oderDaten klauen.
![Page 13: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/13.jpg)
Virtual Memory
Begri�serklärung:
Virtueller Arbeitsspeicher ermöglicht es jedem einzelnen Prozess, sozu agieren, als stünde ihm der gesamte Arbeitsspeicher allein zurVerfügung. Dadurch bekommt jedes Programm seinen eigenenAdressraum und wird von allen anderen Prozessen isoliert.
Wieso brauchen wir Virtual Memory?
Verhindert, dass Programme auf den selben physikalischen Speicher(unkontrolliert) zugreifen.Programme können sich also nicht gegenseitig beein�ussen oderDaten klauen.
![Page 14: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/14.jpg)
Virtual Memory
Begri�serklärung:
Virtueller Arbeitsspeicher ermöglicht es jedem einzelnen Prozess, sozu agieren, als stünde ihm der gesamte Arbeitsspeicher allein zurVerfügung. Dadurch bekommt jedes Programm seinen eigenenAdressraum und wird von allen anderen Prozessen isoliert.
Wieso brauchen wir Virtual Memory?
Verhindert, dass Programme auf den selben physikalischen Speicher(unkontrolliert) zugreifen.Programme können sich also nicht gegenseitig beein�ussen oderDaten klauen.
![Page 15: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/15.jpg)
Paging
Begri�serklärung:
Paging ist eine Methode zur virtuellen Adressierung. Der physischeSpeicher wird in 4k Page Frames aufgeteilt und in den virtuellenSpeicher reingehängt. Durch gleiche Page-Gröÿen wirdFragmentierung verhindert.
Was ist Memory Fragmentation?
Lücken in der Belegung von Speicherblöcken.Durch Allozieren und Freigeben von Speicher können nichtzusammenhängende Lücken entstehen.
5 Blocke frei
4 Blocke allozieren
![Page 16: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/16.jpg)
Paging
Begri�serklärung:
Paging ist eine Methode zur virtuellen Adressierung. Der physischeSpeicher wird in 4k Page Frames aufgeteilt und in den virtuellenSpeicher reingehängt. Durch gleiche Page-Gröÿen wirdFragmentierung verhindert.
Was ist Memory Fragmentation?
Lücken in der Belegung von Speicherblöcken.Durch Allozieren und Freigeben von Speicher können nichtzusammenhängende Lücken entstehen.
5 Blocke frei
4 Blocke allozieren
![Page 17: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/17.jpg)
Paging
Begri�serklärung:
Paging ist eine Methode zur virtuellen Adressierung. Der physischeSpeicher wird in 4k Page Frames aufgeteilt und in den virtuellenSpeicher reingehängt. Durch gleiche Page-Gröÿen wirdFragmentierung verhindert.
Was ist Memory Fragmentation?
Lücken in der Belegung von Speicherblöcken.Durch Allozieren und Freigeben von Speicher können nichtzusammenhängende Lücken entstehen.
5 Blocke frei
4 Blocke allozieren
![Page 18: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/18.jpg)
Prozessor Modi
Real Mode:
Jeder x86 Prozessor startet im Real Mode. Im Real Mode stehenweder der Erweiterter Speicher noch der Virtuelle Adressraum zurVerfügung. Der Real Mode ist sehr unsicher, deshalb wird meistensbeim Starten des Betriebssystems in den Protected Modegewechselt.
Protected Mode:
Der Protected Mode erlaubt das Setzen von Zugri�sberechtigungen(Lesen / Schreiben / Ausführen) durch die Protection Rings. DieProtection Rings sind hierarchische Sicherheitsstufen. Es gibt 4Ringe, angefangen mit Ring 0, der die meisten Privilegien hat undRing 3, der die wenigsten Privilegien hat.
![Page 19: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/19.jpg)
Prozessor Modi
Real Mode:
Jeder x86 Prozessor startet im Real Mode. Im Real Mode stehenweder der Erweiterter Speicher noch der Virtuelle Adressraum zurVerfügung. Der Real Mode ist sehr unsicher, deshalb wird meistensbeim Starten des Betriebssystems in den Protected Modegewechselt.
Protected Mode:
Der Protected Mode erlaubt das Setzen von Zugri�sberechtigungen(Lesen / Schreiben / Ausführen) durch die Protection Rings. DieProtection Rings sind hierarchische Sicherheitsstufen. Es gibt 4Ringe, angefangen mit Ring 0, der die meisten Privilegien hat undRing 3, der die wenigsten Privilegien hat.
![Page 20: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/20.jpg)
Prozessor Modi
Real Mode:
Jeder x86 Prozessor startet im Real Mode. Im Real Mode stehenweder der Erweiterter Speicher noch der Virtuelle Adressraum zurVerfügung. Der Real Mode ist sehr unsicher, deshalb wird meistensbeim Starten des Betriebssystems in den Protected Modegewechselt.
Protected Mode:
Der Protected Mode erlaubt das Setzen von Zugri�sberechtigungen(Lesen / Schreiben / Ausführen) durch die Protection Rings. DieProtection Rings sind hierarchische Sicherheitsstufen. Es gibt 4Ringe, angefangen mit Ring 0, der die meisten Privilegien hat undRing 3, der die wenigsten Privilegien hat.
![Page 21: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/21.jpg)
Spectre
1 Einführung
2 SpectreGrundinformationenOut of Order ExecutionSpectre Angri�eVersionen und Gegenvorkehrungen
3 Meltdown
4 Weiterführende Literatur
![Page 22: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/22.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul KocherUniversity of Michigan Daniel GenkinRambus Security Division Mike HamburgTU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 23: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/23.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul KocherUniversity of Michigan Daniel GenkinRambus Security Division Mike HamburgTU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 24: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/24.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul KocherUniversity of Michigan Daniel GenkinRambus Security Division Mike HamburgTU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 25: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/25.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann Horn
Independent Paul KocherUniversity of Michigan Daniel GenkinRambus Security Division Mike HamburgTU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 26: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/26.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul Kocher
University of Michigan Daniel GenkinRambus Security Division Mike HamburgTU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 27: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/27.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul KocherUniversity of Michigan Daniel Genkin
Rambus Security Division Mike HamburgTU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 28: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/28.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul KocherUniversity of Michigan Daniel GenkinRambus Security Division Mike Hamburg
TU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 29: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/29.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul KocherUniversity of Michigan Daniel GenkinRambus Security Division Mike HamburgTU Graz Moritz Lipp
University of Adelaide Yuval Yarom
![Page 30: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/30.jpg)
Spectre Grundinformationen
Entwickler informiert am:
1. Juni 2017
Verö�entlichung:
3. Jänner 2018
Entdeckt von:
Google Project Zero Jann HornIndependent Paul KocherUniversity of Michigan Daniel GenkinRambus Security Division Mike HamburgTU Graz Moritz LippUniversity of Adelaide Yuval Yarom
![Page 31: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/31.jpg)
Spectre Grundinformationen
Warum heiÿt es Spectre?
�The name is based on the root cause, speculative execution. As itis not easy to �x, it will haunt us for quite some time.�
Begri�serklärung:
Spectre beschreibt Angri�sszenarien, bei denen ProzesseSicherheitslücken in Mikroprozessoren ausnutzen um Informationendes virtuellen Speichers auszulesen
Zusätzliche Vorraussetzung
Mikroprozessor verwendet out-of-order-execution
![Page 32: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/32.jpg)
Spectre Grundinformationen
Warum heiÿt es Spectre?
�The name is based on the root cause, speculative execution. As itis not easy to �x, it will haunt us for quite some time.�
Begri�serklärung:
Spectre beschreibt Angri�sszenarien, bei denen ProzesseSicherheitslücken in Mikroprozessoren ausnutzen um Informationendes virtuellen Speichers auszulesen
Zusätzliche Vorraussetzung
Mikroprozessor verwendet out-of-order-execution
![Page 33: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/33.jpg)
Spectre Grundinformationen
Warum heiÿt es Spectre?
�The name is based on the root cause, speculative execution. As itis not easy to �x, it will haunt us for quite some time.�
Begri�serklärung:
Spectre beschreibt Angri�sszenarien, bei denen ProzesseSicherheitslücken in Mikroprozessoren ausnutzen um Informationendes virtuellen Speichers auszulesen
Zusätzliche Vorraussetzung
Mikroprozessor verwendet out-of-order-execution
![Page 34: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/34.jpg)
Spectre Grundinformationen
Warum heiÿt es Spectre?
�The name is based on the root cause, speculative execution. As itis not easy to �x, it will haunt us for quite some time.�
Begri�serklärung:
Spectre beschreibt Angri�sszenarien, bei denen ProzesseSicherheitslücken in Mikroprozessoren ausnutzen um Informationendes virtuellen Speichers auszulesen
Zusätzliche Vorraussetzung
Mikroprozessor verwendet out-of-order-execution
![Page 35: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/35.jpg)
Out of Order Execution
Begri�serklärung:
Bezeichnet die Möglichkeit, Maschinenbefehle in denAusführungseinheiten eines Prozessors in einer anderen Reihenfolgeauszuführen, als sie im Programmcode stehen.
Vorteil
Stufen der Pipeline besser ausgelastet
Problematik
Nur auf von einander unabhängige Befehle anwendbar
![Page 36: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/36.jpg)
Out of Order Execution
Begri�serklärung:
Bezeichnet die Möglichkeit, Maschinenbefehle in denAusführungseinheiten eines Prozessors in einer anderen Reihenfolgeauszuführen, als sie im Programmcode stehen.
Vorteil
Stufen der Pipeline besser ausgelastet
Problematik
Nur auf von einander unabhängige Befehle anwendbar
![Page 37: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/37.jpg)
Out of Order Execution
Begri�serklärung:
Bezeichnet die Möglichkeit, Maschinenbefehle in denAusführungseinheiten eines Prozessors in einer anderen Reihenfolgeauszuführen, als sie im Programmcode stehen.
Vorteil
Stufen der Pipeline besser ausgelastet
Problematik
Nur auf von einander unabhängige Befehle anwendbar
![Page 38: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/38.jpg)
Out of Order Execution
Begri�serklärung:
Bezeichnet die Möglichkeit, Maschinenbefehle in denAusführungseinheiten eines Prozessors in einer anderen Reihenfolgeauszuführen, als sie im Programmcode stehen.
Vorteil
Stufen der Pipeline besser ausgelastet
Problematik
Nur auf von einander unabhängige Befehle anwendbar
![Page 39: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/39.jpg)
Out of Order Execution bei Spectre
Ausnützen der Out of Order Execution:
Prozessausführung beein�usst
Inhalt einer Speicherzelle aus dem Adressraum ausgelesen
Hinterlässt bemerkbare Spur im Cache
![Page 40: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/40.jpg)
Out of Order Execution bei Spectre
Ausnützen der Out of Order Execution:
Prozessausführung beein�usst
Inhalt einer Speicherzelle aus dem Adressraum ausgelesen
Hinterlässt bemerkbare Spur im Cache
![Page 41: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/41.jpg)
Out of Order Execution bei Spectre
Ausnützen der Out of Order Execution:
Prozessausführung beein�usst
Inhalt einer Speicherzelle aus dem Adressraum ausgelesen
Hinterlässt bemerkbare Spur im Cache
![Page 42: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/42.jpg)
Out of Order Execution bei Spectre
Ausnützen der Out of Order Execution:
Prozessausführung beein�usst
Inhalt einer Speicherzelle aus dem Adressraum ausgelesen
Hinterlässt bemerkbare Spur im Cache
![Page 43: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/43.jpg)
Out of Order Execution bei Spectre
Ausnützen der Out of Order Execution:
Prozessausführung beein�usst
Inhalt einer Speicherzelle aus dem Adressraum ausgelesen
Hinterlässt bemerkbare Spur im Cache
![Page 44: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/44.jpg)
Speculative Execution
Begri�serklärung:
Ist eine Optimierungstechnik, bei der ein Computer System eineTätigkeit ausführt, die im weiteren Programmablauf nicht zwingendbenötigt wird. Der Prozess wird beendet, bevor überhaupt bekanntist, ob dieser nötig war, oder nicht.
Ziel:
Einer Verzögerung in der Ausführung vorzubeugen
Ungebrauchte Ausführungen:
Änderungen werden rückgängig gemacht und die Ergebnisse werdenignoriert
![Page 45: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/45.jpg)
Speculative Execution
Begri�serklärung:
Ist eine Optimierungstechnik, bei der ein Computer System eineTätigkeit ausführt, die im weiteren Programmablauf nicht zwingendbenötigt wird. Der Prozess wird beendet, bevor überhaupt bekanntist, ob dieser nötig war, oder nicht.
Ziel:
Einer Verzögerung in der Ausführung vorzubeugen
Ungebrauchte Ausführungen:
Änderungen werden rückgängig gemacht und die Ergebnisse werdenignoriert
![Page 46: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/46.jpg)
Speculative Execution
Begri�serklärung:
Ist eine Optimierungstechnik, bei der ein Computer System eineTätigkeit ausführt, die im weiteren Programmablauf nicht zwingendbenötigt wird. Der Prozess wird beendet, bevor überhaupt bekanntist, ob dieser nötig war, oder nicht.
Ziel:
Einer Verzögerung in der Ausführung vorzubeugen
Ungebrauchte Ausführungen:
Änderungen werden rückgängig gemacht und die Ergebnisse werdenignoriert
![Page 47: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/47.jpg)
Speculative Execution
Begri�serklärung:
Ist eine Optimierungstechnik, bei der ein Computer System eineTätigkeit ausführt, die im weiteren Programmablauf nicht zwingendbenötigt wird. Der Prozess wird beendet, bevor überhaupt bekanntist, ob dieser nötig war, oder nicht.
Ziel:
Einer Verzögerung in der Ausführung vorzubeugen
Ungebrauchte Ausführungen:
Änderungen werden rückgängig gemacht und die Ergebnisse werdenignoriert
![Page 48: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/48.jpg)
Spectre Angri�e
Zitat:
�Speculative logic is unfaithful in how it executes, can access thevictim's memory and registers, and can perform operations withmeasurable side e�ects.�
Konsequenzen:
Spectre Angri�e Nutzen Sicherheitslücken in derImplementierung der Speculative Execution aus
Zugri� auf Speicher und Register möglich
![Page 49: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/49.jpg)
Spectre Angri�e
Zitat:
�Speculative logic is unfaithful in how it executes, can access thevictim's memory and registers, and can perform operations withmeasurable side e�ects.�
Konsequenzen:
Spectre Angri�e Nutzen Sicherheitslücken in derImplementierung der Speculative Execution aus
Zugri� auf Speicher und Register möglich
![Page 50: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/50.jpg)
Spectre Angri�e
Zitat:
�Speculative logic is unfaithful in how it executes, can access thevictim's memory and registers, and can perform operations withmeasurable side e�ects.�
Konsequenzen:
Spectre Angri�e Nutzen Sicherheitslücken in derImplementierung der Speculative Execution aus
Zugri� auf Speicher und Register möglich
![Page 51: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/51.jpg)
Spectre Angri�e
Zitat:
�Speculative logic is unfaithful in how it executes, can access thevictim's memory and registers, and can perform operations withmeasurable side e�ects.�
Konsequenzen:
Spectre Angri�e Nutzen Sicherheitslücken in derImplementierung der Speculative Execution aus
Zugri� auf Speicher und Register möglich
![Page 52: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/52.jpg)
Spectre Angri�e
Zitat:
�Speculative logic is unfaithful in how it executes, can access thevictim's memory and registers, and can perform operations withmeasurable side e�ects.�
Konsequenzen:
Spectre Angri�e Nutzen Sicherheitslücken in derImplementierung der Speculative Execution aus
Zugri� auf Speicher und Register möglich
![Page 53: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/53.jpg)
Spectre Angri�e
Zitat:
�Spectre attacks involve inducing a victim to speculatively performoperations that would not occur during correct program executionand which leak the victim's con�dential information via a sidechannel to the adversary�
Konsequenzen
Befehle ausgeführt,die bei einem korrekten Ablauf nichtausgeführt werden würden
Vertrauliche Informationen über side channel übertragen
![Page 54: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/54.jpg)
Spectre Angri�e
Zitat:
�Spectre attacks involve inducing a victim to speculatively performoperations that would not occur during correct program executionand which leak the victim's con�dential information via a sidechannel to the adversary�
Konsequenzen
Befehle ausgeführt,die bei einem korrekten Ablauf nichtausgeführt werden würden
Vertrauliche Informationen über side channel übertragen
![Page 55: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/55.jpg)
Spectre Angri�e
Zitat:
�Spectre attacks involve inducing a victim to speculatively performoperations that would not occur during correct program executionand which leak the victim's con�dential information via a sidechannel to the adversary�
Konsequenzen
Befehle ausgeführt,die bei einem korrekten Ablauf nichtausgeführt werden würden
Vertrauliche Informationen über side channel übertragen
![Page 56: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/56.jpg)
Spectre Angri�e
Zitat:
�Spectre attacks involve inducing a victim to speculatively performoperations that would not occur during correct program executionand which leak the victim's con�dential information via a sidechannel to the adversary�
Konsequenzen
Befehle ausgeführt,die bei einem korrekten Ablauf nichtausgeführt werden würden
Vertrauliche Informationen über side channel übertragen
![Page 57: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/57.jpg)
Spectre Angri�e
Zitat:
�Spectre attacks involve inducing a victim to speculatively performoperations that would not occur during correct program executionand which leak the victim's con�dential information via a sidechannel to the adversary�
Konsequenzen
Befehle ausgeführt,die bei einem korrekten Ablauf nichtausgeführt werden würden
Vertrauliche Informationen über side channel übertragen
![Page 58: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/58.jpg)
Spectre Angri�e
Zitat:
�Speculative execution implementations violate the securityassumptions underpinning numerous software security mechanisms,including operating system process separation, containerization,just-in-time (JIT) compilation, and countermeasures to cachetiming and side-channel attacks.�
Konsequenzen
Mehrere Sicherheitsvorkehrungen zu Nichte gemacht
Viele verschiedene Lücken ausnützbar
![Page 59: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/59.jpg)
Spectre Angri�e
Zitat:
�Speculative execution implementations violate the securityassumptions underpinning numerous software security mechanisms,including operating system process separation, containerization,just-in-time (JIT) compilation, and countermeasures to cachetiming and side-channel attacks.�
Konsequenzen
Mehrere Sicherheitsvorkehrungen zu Nichte gemacht
Viele verschiedene Lücken ausnützbar
![Page 60: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/60.jpg)
Spectre Angri�e
Zitat:
�Speculative execution implementations violate the securityassumptions underpinning numerous software security mechanisms,including operating system process separation, containerization,just-in-time (JIT) compilation, and countermeasures to cachetiming and side-channel attacks.�
Konsequenzen
Mehrere Sicherheitsvorkehrungen zu Nichte gemacht
Viele verschiedene Lücken ausnützbar
![Page 61: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/61.jpg)
Spectre Angri�e
Zitat:
�Speculative execution implementations violate the securityassumptions underpinning numerous software security mechanisms,including operating system process separation, containerization,just-in-time (JIT) compilation, and countermeasures to cachetiming and side-channel attacks.�
Konsequenzen
Mehrere Sicherheitsvorkehrungen zu Nichte gemacht
Viele verschiedene Lücken ausnützbar
![Page 62: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/62.jpg)
Spectre Angri�e
Zitat:
�Speculative execution implementations violate the securityassumptions underpinning numerous software security mechanisms,including operating system process separation, containerization,just-in-time (JIT) compilation, and countermeasures to cachetiming and side-channel attacks.�
Konsequenzen
Mehrere Sicherheitsvorkehrungen zu Nichte gemacht
Viele verschiedene Lücken ausnützbar
![Page 63: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/63.jpg)
Spectre Versionen und Gegenvorkehrungen
Mehr als zehn verschiedene Versionen bekannt
Einige nur durch Hardware Änderungen behebbar
Mögliche Gegenvorkehrungen bewirken massive PerformanceNachteile
![Page 64: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/64.jpg)
Spectre Versionen und Gegenvorkehrungen
Mehr als zehn verschiedene Versionen bekannt
Einige nur durch Hardware Änderungen behebbar
Mögliche Gegenvorkehrungen bewirken massive PerformanceNachteile
![Page 65: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/65.jpg)
Spectre Versionen und Gegenvorkehrungen
Mehr als zehn verschiedene Versionen bekannt
Einige nur durch Hardware Änderungen behebbar
Mögliche Gegenvorkehrungen bewirken massive PerformanceNachteile
![Page 66: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/66.jpg)
Spectre Versionen und Gegenvorkehrungen
Mehr als zehn verschiedene Versionen bekannt
Einige nur durch Hardware Änderungen behebbar
Mögliche Gegenvorkehrungen bewirken massive PerformanceNachteile
![Page 67: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/67.jpg)
Meltdown
1 Einführung
2 Spectre
3 MeltdownGrundinformationenVerö�entlichung
Cache
Das Betriebssystem im virtuelle Adressraum
VorgehensweiseUnterschied zu SpectreGegenvorkehrungen / �Fixes�
4 Weiterführende Literatur
![Page 68: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/68.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 69: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/69.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 70: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/70.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017
Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 71: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/71.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 72: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/72.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 73: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/73.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan Mangard
Thomas PrescherCyberus Technology GmbH
Werner HaasG-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 74: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/74.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 75: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/75.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders Fogh
Google Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 76: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/76.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann Horn
University of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 77: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/77.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel Genkin
University of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 78: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/78.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval Yarom
Rambus Security Division Mike Hamburg
![Page 79: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/79.jpg)
Meltdown - GrundinformationenVerö�entlichung
Meltdown ist eine Sicherheitslücke, die hardwareseitigeZugri�sbeschränkungen �schmelzen� lässt.
Entdeckung: 28. Juli 2017Verö�entlichung: 3. Jänner 2018
Entdecker:
Moritz LippMichael Schwarz
Daniel GrussTU Graz
Stefan MangardThomas Prescher
Cyberus Technology GmbHWerner Haas
G-Data Advanced Analytics Anders FoghGoogle Project Zero Jann HornUniversity of Michigan Daniel GenkinUniversity of Adelaide Yuval YaromRambus Security Division Mike Hamburg
![Page 80: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/80.jpg)
Meltdown - GrundinformationenCache
Zugri� auf Arbeitsspeicher ist vergleichsweise teuer
Räumliche und zeitliche Lokalität tri�t auf viele Programme zu
Cache
Caches sind kleine Zwischenspeicher, die direkt im Prozessorverbaut sind. Nahegelegene Daten werden vorgeladen und abgelegt,um auf diese schneller zugreifen zu können.
![Page 81: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/81.jpg)
Meltdown - GrundinformationenCache
Zugri� auf Arbeitsspeicher ist vergleichsweise teuer
Räumliche und zeitliche Lokalität tri�t auf viele Programme zu
Cache
Caches sind kleine Zwischenspeicher, die direkt im Prozessorverbaut sind. Nahegelegene Daten werden vorgeladen und abgelegt,um auf diese schneller zugreifen zu können.
![Page 82: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/82.jpg)
Meltdown - GrundinformationenCache
Zugri� auf Arbeitsspeicher ist vergleichsweise teuer
Räumliche und zeitliche Lokalität tri�t auf viele Programme zu
Cache
Caches sind kleine Zwischenspeicher, die direkt im Prozessorverbaut sind. Nahegelegene Daten werden vorgeladen und abgelegt,um auf diese schneller zugreifen zu können.
![Page 83: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/83.jpg)
Meltdown - GrundinformationenCache
Zugri� auf Arbeitsspeicher ist vergleichsweise teuer
Räumliche und zeitliche Lokalität tri�t auf viele Programme zu
Cache
Caches sind kleine Zwischenspeicher, die direkt im Prozessorverbaut sind. Nahegelegene Daten werden vorgeladen und abgelegt,um auf diese schneller zugreifen zu können.
![Page 84: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/84.jpg)
Meltdown - GrundinformationenCache
Zugri� auf gecached Daten ist wesentlich schneller
Moderne CPUs haben drei bis vier Levels an Caches.Je gröÿer, desto langsamer ist der Zugri�
Abbildung: Speicherhierachie1
![Page 85: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/85.jpg)
Meltdown - GrundinformationenCache
Zugri� auf gecached Daten ist wesentlich schneller
Moderne CPUs haben drei bis vier Levels an Caches.Je gröÿer, desto langsamer ist der Zugri�
Abbildung: Speicherhierachie1
![Page 86: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/86.jpg)
Meltdown - GrundinformationenCache
Zugri� auf gecached Daten ist wesentlich schneller
Moderne CPUs haben drei bis vier Levels an Caches.Je gröÿer, desto langsamer ist der Zugri�
Abbildung: Speicherhierachie1
![Page 87: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/87.jpg)
Meltdown - GrundinformationenCache
Zugri� auf gecached Daten ist wesentlich schneller
Moderne CPUs haben drei bis vier Levels an Caches.Je gröÿer, desto langsamer ist der Zugri�
Abbildung: Speicherhierachie1
1Quelle: TU Chemnitz - Rechnerarchitektur und -systeme
![Page 88: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/88.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
![Page 89: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/89.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-AdressraumProgramm-Adressraum
CR3
![Page 90: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/90.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-Adressraum
System Call
Programm-Adressraum
CR3
![Page 91: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/91.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-Adressraum
Interrupt
System Call
Programm-Adressraum
CR3
![Page 92: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/92.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-Adressraum
Interrupt
System Call
Programm-Adressraum
CR3
![Page 93: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/93.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-AdressraumProgramm-Adressraum
CR3
![Page 94: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/94.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-AdressraumProgramm-Adressraum
CR3
Ausfuhrung fortsetzen
![Page 95: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/95.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-AdressraumProgramm-Adressraum
CR3
![Page 96: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/96.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Kernel-AdressraumProgramm-Adressraum
CR3
![Page 97: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/97.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Programm-Adressraum
CR3
Kernel-Adressraum
![Page 98: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/98.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
0xffff880000000000 (bei Linux x86 64)
Programm-Adressraum
CR3
Kernel-Adressraum
Programm hat keinen R/W-Zugriffab dieser Adresse
![Page 99: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/99.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Programm-Adressraum
CR3
Kernel-Adressraum
Syst
emC
all
![Page 100: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/100.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Programm-Adressraum
CR3
Kernel-Adressraum Interrupt
Syst
emC
all
![Page 101: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/101.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Programm-Adressraum
CR3
Kernel-Adressraum Interrupt
Syst
emC
all
![Page 102: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/102.jpg)
Meltdown - GrundinformationenDas Betriebssystem im virtuelle Adressraum
Programm-Adressraum
CR3
Kernel-Adressraum
Ausf
uhru
ng
fort
setz
en
![Page 103: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/103.jpg)
Meltdown - Vorgehensweise
![Page 104: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/104.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE . . .
![Page 105: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/105.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
A5 . . .
![Page 106: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/106.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
A5 . . .
![Page 107: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/107.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
Reorder Buffer
A5
. . .
![Page 108: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/108.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
Reorder Buffer
A5
. . .A5
![Page 109: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/109.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
Reorder Buffer
A5
. . .A5
![Page 110: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/110.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
Reorder Buffer
A5
shl rax, 0xC
A5000
. . .A5000
![Page 111: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/111.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
Reorder Buffer
A5
shl rax, 0xC
A5000
. . .A5000
![Page 112: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/112.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
Reorder Buffer
A5
shl rax, 0xC
A5000
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
A5000
![Page 113: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/113.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
A5
shl rax, 0xC
A5000
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
A5000
![Page 114: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/114.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
A5
shl rax, 0xC
A5000
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
A5000
![Page 115: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/115.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
A5
shl rax, 0xC
A5000
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
BA0A5000
A5000
![Page 116: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/116.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
A5
shl rax, 0xC
A5000
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
BA0A5000
Page A5
A5000
![Page 117: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/117.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
A5
shl rax, 0xC
A5000
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
BA0A5000
Page A5
. . .A5000
![Page 118: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/118.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
A5
shl rax, 0xC
A5000
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
BA0A5000
Page A5
. . .A5000
![Page 119: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/119.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
shl rax, 0xC
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
Page A5
![Page 120: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/120.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
shl rax, 0xC
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
Page A5
![Page 121: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/121.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
shl rax, 0xC
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
Page A5
![Page 122: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/122.jpg)
Meltdown - Vorgehensweise
Programm-Adressraum
Kernel-Adressraum
0xA5 0xBADEAFFE
CPU-Register
rax rbx rcx
BADEAFFE
mov al, byte [rcx]
L1-Cache
Reorder Buffer
shl rax, 0xC
256 Pages a 4KiB
0xBA000000
BA000000 . . .
...
...
Page 00
Page 01
Page 02
Page 03
Page A5
Page FC
Page FD
Page FE
Page FF
mov rbx, qword [rbx + rax]
Page A5
0xBADEAFFE ist 0xA5
![Page 123: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/123.jpg)
Meltdown - Unterschied zu Spectre
Meltdown unterscheidet sich von Spectre in vielen Hinsichten:
Meltdown Spectre
ProzessorenViele Intel CPUsEinige ARM CPUs
Unter anderem vieleIntel, AMD undARM CPUs
Mechanismus
Race Condition:Berechtigungsprüfungnach spekulativer
Ausführung
Branch Prediction
Datenzugri�Kernel-Speicher undsomit gesamter
physikalischer Speicher
AndereUser-Prozesse
![Page 124: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/124.jpg)
Meltdown - Unterschied zu Spectre
Meltdown unterscheidet sich von Spectre in vielen Hinsichten:
Meltdown Spectre
ProzessorenViele Intel CPUsEinige ARM CPUs
Unter anderem vieleIntel, AMD undARM CPUs
Mechanismus
Race Condition:Berechtigungsprüfungnach spekulativer
Ausführung
Branch Prediction
Datenzugri�Kernel-Speicher undsomit gesamter
physikalischer Speicher
AndereUser-Prozesse
![Page 125: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/125.jpg)
Meltdown - Unterschied zu Spectre
Meltdown unterscheidet sich von Spectre in vielen Hinsichten:
Meltdown Spectre
ProzessorenViele Intel CPUsEinige ARM CPUs
Unter anderem vieleIntel, AMD undARM CPUs
Mechanismus
Race Condition:Berechtigungsprüfungnach spekulativer
Ausführung
Branch Prediction
Datenzugri�Kernel-Speicher undsomit gesamter
physikalischer Speicher
AndereUser-Prozesse
![Page 126: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/126.jpg)
Meltdown - Unterschied zu Spectre
Meltdown unterscheidet sich von Spectre in vielen Hinsichten:
Meltdown Spectre
ProzessorenViele Intel CPUsEinige ARM CPUs
Unter anderem vieleIntel, AMD undARM CPUs
Mechanismus
Race Condition:Berechtigungsprüfungnach spekulativer
Ausführung
Branch Prediction
Datenzugri�Kernel-Speicher undsomit gesamter
physikalischer Speicher
AndereUser-Prozesse
![Page 127: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/127.jpg)
Meltdown - Gegenvorkehrungen / �Fixes�
Vollständige Behebung nur über Austausch von Hardwaremöglich(z.B. Whiskey Lake für Laptops oder Cascade Lake für Server)
KPTI - Workaround: JederProzess erhält zweiPage-Tabellen:
Nur essentiellerKernel-Code und -Datenwerden im Ring 3gemappedBei Wechsel in Ring 0wird gesamter Kerneleingehängt
![Page 128: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/128.jpg)
Meltdown - Gegenvorkehrungen / �Fixes�
Vollständige Behebung nur über Austausch von Hardwaremöglich(z.B. Whiskey Lake für Laptops oder Cascade Lake für Server)
KPTI - Workaround: JederProzess erhält zweiPage-Tabellen:
Nur essentiellerKernel-Code und -Datenwerden im Ring 3gemappedBei Wechsel in Ring 0wird gesamter Kerneleingehängt
![Page 129: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/129.jpg)
Meltdown - Gegenvorkehrungen / �Fixes�
Vollständige Behebung nur über Austausch von Hardwaremöglich(z.B. Whiskey Lake für Laptops oder Cascade Lake für Server)
KPTI - Workaround: JederProzess erhält zweiPage-Tabellen:
Nur essentiellerKernel-Code und -Datenwerden im Ring 3gemappedBei Wechsel in Ring 0wird gesamter Kerneleingehängt
Abbildung: KPTI2
2Quelle: Wikimedia Foundation
![Page 130: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/130.jpg)
Meltdown - Gegenvorkehrungen / �Fixes�
Vollständige Behebung nur über Austausch von Hardwaremöglich(z.B. Whiskey Lake für Laptops oder Cascade Lake für Server)
KPTI - Workaround: JederProzess erhält zweiPage-Tabellen:
Nur essentiellerKernel-Code und -Datenwerden im Ring 3gemapped
Bei Wechsel in Ring 0wird gesamter Kerneleingehängt
Abbildung: KPTI2
2Quelle: Wikimedia Foundation
![Page 131: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/131.jpg)
Meltdown - Gegenvorkehrungen / �Fixes�
Vollständige Behebung nur über Austausch von Hardwaremöglich(z.B. Whiskey Lake für Laptops oder Cascade Lake für Server)
KPTI - Workaround: JederProzess erhält zweiPage-Tabellen:
Nur essentiellerKernel-Code und -Datenwerden im Ring 3gemappedBei Wechsel in Ring 0wird gesamter Kerneleingehängt Abbildung: KPTI2
2Quelle: Wikimedia Foundation
![Page 132: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/132.jpg)
Weiterführende Literatur
1 Generell
Meltdown / Spectre Webpage und Paper(https://meltdownattack.com/)Google Project Zero Blog(https://googleprojectzero.blogspot.com/. . . )
2 Meltdown-spezi�sch
Referenz-Implementation der TU Graz(Github: IAIK/meltdown)G DATA Analytics Blog(https://cyber.wtf/. . . )
![Page 133: Sicherheitslücken in der x86 / amd64 - Architekturheld/teaching/wiss_arbeiten/slides_18-19/x86... · Sicherheitslücken in der x86 / amd64 - Architektur Marcell Haritopoulos Matthias](https://reader030.vdocuments.net/reader030/viewer/2022040311/5d4f57c788c993d6278b9d9a/html5/thumbnails/133.jpg)
Vielen Dank für Ihre
Aufmerksamkeit