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-21300 | Kitploit
Tools/GitHubGitHub/sizvy/cve-2021-21300
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPapers & ForschungLernen & BildungBinary-Exploitation
GitHubsizvy/cve-2021-21300

CVE-2021-21300

Repository anzeigen
1vor 1 JahrNoch 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

CVE-2021-21300: Beliebige Codeausführung durch bösartige Git-Hooks

📌 Zusammenfassung

CVE-2021-21300 ist eine kritische Schwachstelle in Git (Versionen 2.14.2 bis 2.30.1), die es Angreifern ermöglicht, beliebigen Code auf den Maschinen von Opfern auszuführen, indem sie symbolische Links und Dateisysteme ohne Beachtung der Groß-/Kleinschreibung ausnutzen.


🧠 Problemstellung

  • Schwachstelle: Beliebige Codeausführung durch bösartige Git-Hooks.
  • Grundursache: Dateisysteme ohne Beachtung der Groß-/Kleinschreibung (z. B. Windows/macOS) lösen A/post-checkout als .git/hooks/post-checkout auf.
  • Auswirkungen: Angreifer können bösartige Hooks injizieren und ausführen, wenn ein Benutzer das infizierte Repository klont.

🔍 Theoretischer Hintergrund

Der Trick

Git erlaubt benutzerdefinierte Hooks, die in .git/hooks/ gespeichert sind. Auf Dateisystemen ohne Beachtung der Groß-/Kleinschreibung:

  • Ein präparierter Ordner wie A/post-checkout kann als .git/hooks/post-checkout interpretiert werden.
  • Ein symbolischer Link ersetzt A/ durch .git/hooks/ und umgeht damit die Einschränkungen.

Der Exploit

  1. Erstellen Sie ein Verzeichnis A und eine Datei A/post-checkout, die bösartige Befehle enthält.
  2. Stagen Sie das Verzeichnis und seinen Inhalt für Git.
  3. Entfernen Sie das Verzeichnis und ersetzen Sie A durch einen symbolischen Link auf .git/hooks/.
  4. Wenn Git A/post-checkout ausführt, führt es tatsächlich die bösartige Datei in .git/hooks/ aus.

⚠️ Auslösebedingungen

  • Dateisystem ohne Beachtung der Groß-/Kleinschreibung (Windows/macOS).
  • Symbolischer Link auf .git/hooks/.
  • Globale Git-LFS-Filter aktiviert.
  • Das Opfer hat die Berechtigung, bösartigen Code auszuführen.

🛠️ Angriffsablauf

Erzeugung eines bösartigen Repos

  • Erstellen Sie .gitattributes, um die LFS-Verarbeitung von A/post-checkout auszulösen.
  • Fügen Sie ein bösartiges Skript A/post-checkout hinzu (z. B. gibt es "PWNED" aus).
  • Fügen Sie gefälschte Dateien A/a, A/b hinzu, um es legitim erscheinen zu lassen.
  • Ersetzen Sie A/ durch einen symbolischen Link auf .git/hooks/.
  • Committen Sie die Änderungen und pushen Sie diese.

🛡 Vorhandene Abwehrmaßnahmen

Konfigurationsbasiert

  • Deaktivieren Sie das Folgen symbolischer Links:
    root@kitploit:~
    git clone -c core.symlinks=true
    git config --system core.symlinks true
    

##💡 Weitere mögliche Abwehrmaßnahmen

  • Sicheres Klonen mit Git-Alias automatisieren

  • Verzeichnis erstellen.

  • Groß-/Kleinschreibung aktivieren (Windows):

    root@kitploit:~
    fsutil file setcasesensitiveinfo <DESTINATION FOLDER> enable
    
  • Klonen Sie in dieses Verzeichnis.

  • Erstellen Sie einen Git-Alias, um diese Schritte für sichereres Klonen zu automatisieren.

Tool herunterladen