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
CVE-2021-3156-Baron-Samedit — A simple Docker lab and Exploit setup for CVE-2021-3156 - "Baron Samedit". | Kitploit
Tools/GitHubGitHub/theleopard65/cve-2021-3156-baron-samedit
Privilege EscalationContainer SecurityVulnerability AnalysisExploitationShellcodeLearning & EducationBinary ExploitationLabs & Practice

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
GitHub
theleopard65/cve-2021-3156-baron-samedit

CVE-2021-3156-Baron-Samedit

A simple Docker lab and Exploit setup for CVE-2021-3156 - "Baron Samedit".

Repository anzeigen
1vor 5 MonatenNoch nicht geprüft

CVE-2021-3156 - "Baron Samedit" Labor & Exploit

Dieses Repository bietet eine eigenständige, lehrreiche Umgebung, um CVE-2021-3156 zu verstehen und auszunutzen, einen Heap-basierten Pufferüberlauf in sudo, der es jedem unprivilegierten Benutzer ermöglicht, auf verwundbaren Systemen (sudo-Versionen vor 1.9.5p2) Root-Rechte zu erlangen.

Dieses Material ist nur für autorisierte Sicherheitsschulungen und Forschung bestimmt.

Unautorisierte/unethische Nutzung gegen Systeme, die Ihnen nicht gehören, ist illegal.

Repository-Inhalte

  • Dockerfile - Erstellt einen Ubuntu 20.04-Container mit sudo 1.8.31 (verwundbar)
  • exploit.c - Haupt-Exploit-Payload (angepasst für Ubuntu 20.04)
  • shellcode.c - Konstruktor einer gemeinsam genutzten Bibliothek, der eine Root-Shell startet
  • Makefile - Kompiliert den Exploit und die schädliche Bibliothek

Erste Schritte

Voraussetzungen

  • Docker (oder Docker Engine)
  • Grundlegende Vertrautheit mit der C-Sprache
  • Grundlegende Vertrautheit mit Make
  • Kenntnisse über Befehlszeilenwerkzeuge

Bauen und Ausführen des Labors

  1. Klonen Sie dieses Repository:
root@kitploit:~
git clone https://github.com/Theleopard65/CVE-2021-3156-Baron-Samedit.git
cd CVE-2021-3156-Baron-Samedit
  1. Bauen Sie das Docker-Image:
root@kitploit:~
docker build -t cve-2021-3156-lab .
  1. Starten Sie den Container:
    • Sie werden im Container als Benutzer poc angemeldet sein.
    • Das Arbeitsverzeichnis ist /home/exploit, das bereits Quelldateien enthält.
root@kitploit:~
docker run -it --rm --name baron_samedit_lab cve-2021-3156-lab

Kompilieren und Ausführen des Exploits

  • Innerhalb des Containers ist der Exploit bereits durch den Docker-Build-Prozess kompiliert. Um ihn manuell auszuführen:
root@kitploit:~
cd /home/exploit
./exploit

Bei Erfolg sollten Sie eine Root-Shell-Eingabeaufforderung (#) sehen. Der Exploit überschreibt die service_user-Struktur im Heap von sudo und zwingt sie, die schädliche Bibliothek libnss_x/x.so.2 zu laden, deren Konstruktor den Shellcode ausführt.

Manuelle Kompilierung (falls erforderlich)

  • Um neu zu kompilieren:
root@kitploit:~
make clean && make

Dies erstellt:

  • exploit - die Haupt-Exploit-Binärdatei
  • libnss_x/x.so.2 - die schädliche gemeinsam genutzte Bibliothek

Wie der Exploit funktioniert

CVE-2021-3156 ist ein Heap-basierter Überlauf in der Befehlszeilenargumentverarbeitung von sudoedit. Durch die Bereitstellung eines speziell präparierten Puffers und von Umgebungsvariablen kann ein Angreifer eine service_user-Struktur auf dem Heap überschreiben. Diese Struktur enthält einen Funktionszeiger, der, wenn er gekapert wird, auf eine schädliche Bibliothek zeigen kann, die über den NSS-Mechanismus (Name Service Switch) geladen wird. Der Konstruktor der Bibliothek führt dann beliebigen Code mit Root-Rechten aus.

Dieser Exploit:

  1. Allokiert einen großen Puffer (buf), um den Überlauf auszulösen.
  2. Verwendet die Umgebungsvariablen LC_MESSAGES, LC_TELEPHONE und LC_MEASUREMENT, um das Heap-Layout zu gestalten.
  3. Läuft in die files-service_user-Struktur über und ersetzt deren Namen durch einen Pfad zu unserer schädlichen Bibliothek (libnss_x/x.so.2).
  4. Der Konstruktor der schädlichen Bibliothek (in shellcode.c) führt setuid(0), setgid(0) aus und startet eine Root-Shell.

Bereinigung

Um das Docker-Image zu entfernen:

root@kitploit:~
docker rmi cve-2021-3156-lab

Referenzen

  • Ursprüngliche Mitteilung von Qualys
  • Blastys Proof of Concept
  • NIST NVD-Eintrag für diese CVE

Lizenz

Dieses Projekt wird nur zu Bildungszwecken bereitgestellt. Nutzung auf eigene Gefahr.


Tool herunterladen