Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
spectre-attack-example — 2. Januar 2018 (CVE-2017-5753 und CVE-2017-5715) "Gespenst" Spectre Exploit | Kitploit
Tools/GitHubGitHub/00052/spectre-attack-example
SchwachstellenanalyseExploitationPapers & ForschungLernen & BildungBinary-Exploitation
GitHub00052/spectre-attack-example

spectre-attack-example

2. Januar 2018 (CVE-2017-5753 und CVE-2017-5715) "Gespenst" Spectre Exploit

Repository anzeigen
128vor 8 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Spectre-Exploit-Beispiel

  1. Januar 2018 (CVE-2017-5753 und CVE-2017-5715) – Beispiel zur Ausnutzung der Spectre-Sicherheitslücke

Was ist das?

Wir legen den Text „The Magic Words are Squeamish Ossifrage." im Speicher ab und versuchen dann, ihn durch Ausnutzung der Sicherheitslücke zu lesen. Wenn das System anfällig ist, sehen Sie denselben Text in der Standardausgabe.

In diesem Code liest die Funktion victim_function() nur aus array1[0..15], wenn die Compiler-Anweisungen in strikter Programmreihenfolge ausgeführt werden, da array1 size = 16 ist. Es ist jedoch möglich, dass die Ausführungszeit über die Lesezeit hinausgeht. Die Funktion 读取内存 byte() führt mehrere Trainingsaufrufe von victim_function() durch, um den Branch Predictor zu veranlassen, gültige Werte von x zu erwarten, und ruft dann x außerhalb der Grenzen auf. Der bedingte Sprung kann nicht vorhergesagt werden, und die anschließende spekulative Ausführung verwendet ein x außerhalb der Grenzen, um ein unbekanntes Byte zu lesen. Dann liest der vorhersagende Code aus array2[array1[x] * 512] und gibt so den Wert von array1[x] in den Cache preis. Um den Angriff abzuschließen, wird ein einfaches „Flush+Probe" verwendet, um zu identifizieren, in welcher Cache-Zeile sich array2 befindet, und so den Speicherinhalt preiszugeben. Der Angriff wird mehrfach wiederholt, sodass selbst wenn das Zielbyte anfangs nicht zwischengespeichert ist, die erste Iteration es in den Cache bringt. Auf einem i7 Surface Pro 3 erreicht der optimierte Code eine Lesegeschwindigkeit von etwa 10 KB/s.

Quellen

  • Spectre exploits info
  • CVE-2017-5753 - Variant 1: bounds check bypass
  • CVE-2017-5715 - Variant 2: branch target injection
Tool herunterladen