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
heartbleed — # Docker-basiertes Lernlabor zur Demonstration des Heartbleed-Bugs (CVE-2014-0160) mit Hacker-, Opfer- und Server-Containern für praktische Ausnutzung und Extraktion von Session-Cookies. | Kitploit
Tools/GitHubGitHub/cheese-hub/heartbleed
Container-SicherheitSchwachstellenanalyseExploitationWebsicherheitCTFLernen & BildungLabs & Praxis
GitHubcheese-hub/heartbleed

heartbleed

# Docker-basiertes Lernlabor zur Demonstration des Heartbleed-Bugs (CVE-2014-0160) mit Hacker-, Opfer- und Server-Containern für praktische Ausnutzung und Extraktion von Session-Cookies.

Repository anzeigen
233vor 7 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

Heartbleed Bug

Beschreibung des Szenarios

Der Heartbleed Bug ist ein Beispiel für einen Cyberangriff, der eine Schwachstelle in der OpenSSL-Bibliothek ausnutzt. Kurz gesagt, ein fehlender Validierungsschritt in der OpenSSL-Bibliothek könnte es einem Hacker ermöglichen, auf sensible Informationen auf einem Server zuzugreifen, der die anfällige Bibliothek verwendet. Im Rahmen des Handshake-Protokolls zur Herstellung einer SSL-Verbindung zwischen einem Client und Server wird eine heartbeat-Nachricht vom Client gesendet, die dann vom Server zurückgesendet wird. Der Client ist auch für das Senden der Länge seiner Heartbeat-Nachricht verantwortlich, die der Server verwendet, um die Anzahl der Bytes aus dem Speicher zu bestimmen, die zurückgegeben werden müssen. Ein unechter Längenwert, der vom Server nicht validiert wird, kann dazu führen, dass er Bytes zurückgibt, die an die Speicherstelle angrenzen, an der die Heartbeat-Nachricht des Clients gespeichert ist.

Dieses Repository enthält eine Demonstration, wie der Heartbleed Bug ausgenutzt werden kann, um Sitzungscookies von einem Webserver zu extrahieren; wodurch ein Hacker auf den sicheren, zugriffsgesteuerten Teil einer Website zugreifen kann.

Zielgruppe

Dozenten

Wenn Sie ein Dozent sind, der Konzepte der Cybersicherheit und sichere Programmierung unterrichtet, können Sie dieses Beispiel nutzen, um praktische Erfahrungen mit dem Heartbleed Bug zu vermitteln und zu demonstrieren, wie einfach privilegierte Informationen abgerufen werden können.

Studierende

Wenn Sie ein Student in einem Cybersicherheitskurs sind oder ein angehender Programmierer, ist es lehrreich zu verstehen, wie kleine Fehler im Code zu großen Sicherheitslücken führen können. Wenn Sie derzeit in Ihrem Kurs etwas über den Heartbleed-Angriff lernen, können Sie weitere praktische Erfahrungen sammeln, wie diese Angriffe funktionieren und was getan werden kann, um solche Angriffe zu verhindern.

Design und Architektur

Diese Demonstration verwendet drei Docker-Container, je einen für den Server, den Hacker und das Opfer. Auf dem Server-Container wird eine einfache Python-Flask-basierte Website gehostet, die nach erfolgreicher Anmeldung eine Willkommensnachricht zurückgibt. Der Server-Container führt eine nicht gepatchte Version der OpenSSL-Bibliothek aus, die die Heartbleed-Sicherheitslücke aufweist. Sowohl der Hacker- als auch der Opfer-Container bieten eine VNC-Schnittstelle zu einer Ubuntu-Maschine. Der Hacker-Container enthält außerdem ein Python-Skript, das den Heartbleed Bug ausnutzt, um eine falsche Nachrichtenlänge für eine Heartbeat-Nachricht zu senden und die vom Server zurückgegebenen Daten nach Sitzungscookies zu durchsuchen. Die Anweisungen werden in einem HTML-Dokument auf dem Desktop des Hacker-Containers bereitgestellt.

Installation und Verwendung

Der empfohlene Ansatz zum Ausführen dieser Container ist auf CHEESEHub, einer Webplattform für Cybersicherheitsdemonstrationen. CHEESEHub stellt die notwendigen Ressourcen zur Orchestrierung und bedarfsgerechten Ausführung von Containern bereit. Um diese Anwendung für die Ausführung auf CHEESEHub einzurichten, muss eine Anwendungsspezifikation erstellt werden, die das zu verwendende Docker-Image, Speicher- und CPU-Anforderungen sowie die Ports konfiguriert, die für jeden der drei Container freigegeben werden sollen. Die JSON-Spezifikation für diese Heartbleed-Demonstration finden Sie hier.

CHEESEHub verwendet Kubernetes zur Orchestrierung seiner Anwendungscontainer. Sie können diese Anwendung auch auf Ihrer eigenen Kubernetes-Installation ausführen. Anweisungen zum Einrichten eines minimalen Kubernetes-Clusters auf Ihrem lokalen Rechner finden Sie unter Minikube.

Bevor Sie auf CHEESEHub oder Kubernetes ausgeführt werden können, müssen Docker-Images für die drei Anwendungscontainer erstellt werden. Containerdefinitionen für den Hacker-, den Opfer- und den Server-Container finden Sie in den Verzeichnissen heartbleed-hacker, heartbleed-victim bzw. heartbleed-server. Um diese Container zu erstellen, führen Sie aus:

root@kitploit:~
cd heartbleed-hacker
docker build -t <hacker image tag of your choice> .

cd heartbleed-victim
docker build -t <victim image tag of your choice> .

cd heartbleed-server
docker build -t <server image tag of your choice> .

Sobald die Docker-Images erstellt wurden, können Sie die Container nur mit der Docker-Engine ausführen.

root@kitploit:~
docker run -d -p 80 <hacker image tag from above>

docker run -d -p 80 <victim image tag from above>

docker run -d <server image tag from above>

Da die benutzerseitige Schnittstelle der Hacker- und Opfer-Container die VNC-Schnittstelle ist, geben wir Port 80 frei, um ihn von der Host-Maschine aus zugänglich zu machen. Da wir nur von innerhalb der Hacker- und Opfer-Container auf die Server-Website zugreifen werden, kümmern wir uns nicht darum, die freigegebenen Ports des Server-Containers zuzuordnen.

Verwendung

Wenn Sie in Ihrem Browser zur URL des Hacker-Containers navigieren, wird Ihnen eine Linux-Desktop-Oberfläche angezeigt. Doppelklicken Sie auf die Datei Instructions.html auf dem Desktop, um die Schritt-für-Schritt-Anleitung für diese Demonstration zu lesen. Ein neues Browser- oder Terminalfenster kann auf den Hacker- und Opfer-Containern gestartet werden, indem Sie das Programmmenü unten links auswählen. Die IP-Adresse des Servers, die der Hacker und das Opfer verwenden, um auf die gehostete Website des Servers zuzugreifen, erhalten Sie, indem Sie eine Konsole auf dem Server-Container von der CHEESEHub-Containerliste aus starten.

So können Sie beitragen

Um Probleme zu melden oder Verbesserungen zu dieser Anwendung beizutragen, erstellen Sie ein GitHub-Issue.

Tool herunterladen