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
gitlab-cve-2020-10977 — GitLab Exploit zum Lesen beliebiger Dateien | Kitploit
Tools/GitHubGitHub/vandycknick/gitlab-cve-2020-10977
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsRed TeamingPayload-Entwicklung
GitHubvandycknick/gitlab-cve-2020-10977

gitlab-cve-2020-10977

GitLab Exploit zum Lesen beliebiger Dateien

Repository anzeigen
22vor 5 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

GitLab CVE2020-10977

Einführung

Dieses Skript ermöglicht Remote-Codeausführung gegen GitLab Community Edition (CE) und Enterprise Edition (EE). Die CVE ist ein beliebiges Dateilesen, das es dir erlaubt, den Rails-secret_key_base zu extrahieren, indem du die GitLab-Datei secrets.yaml herunterlädst. Dies wiederum ermöglicht es dir, Codeausführung zu erlangen, indem du dein eigenes experimentation_subject_id-Cookie signierst, das GitLab intern für A/B-Tests verwendet. Die im Cookie eingebettete Payload enthält eine Deserialisierungsschwachstelle, die es erlaubt, Code auf der GitLab-Instanz auszuführen.

Das beliebige Dateilesen existiert in GitLab EE/CE 8.5 und später. Dies wurde in 12.9.1, 12.8.8 und 12.7.8 behoben. Allerdings betrifft die RCE nur Version 12.4.0 und höher, als das anfällige experimentation_subject_id-Cookie eingeführt wurde.

Getestet auf 12.8.1

Verwendung

Das Modul wurde mit Python 3.9 getestet und erfordert die folgenden Abhängigkeiten:

  • requests
  • beautifulsoup4

Wenn du pipenv installiert hast, kannst du schnell loslegen, indem du pipenv install und pipenv shell ausführst, um eine Shell in der virtuellen pipenv-Umgebung zu erhalten.

root@kitploit:~
 $ ./cve_2020_10977.py --help

usage: cve_2020_10977.py [-h] --url URL -u USERNAME -p PASSWORD [--cmd CMD]

optional arguments:
  -h, --help            show this help message and exit
  --url URL             Target URL
  -u USERNAME, --username USERNAME
                        Gitlab username
  -p PASSWORD, --password PASSWORD
                        Gitlab password
  --cmd CMD             Command to execute

Entwicklung

Ein Makefile ist enthalten, um die lokale Entwicklung oder das Testen des Exploits zu erleichtern. Es hängt von docker und docker-compose ab, um schnell eine lokale Version von GitLab zu starten, die anfällig für diese CVE ist.

root@kitploit:~
make up

Startet eine lokale Instanz von GitLab und eine debian-Instanz, um das Testen einer Reverse Shell zu erleichtern. Die GitLab-Instanz ist von deinem Localhost auf Port 5580 aus erreichbar. Dieses zusätzliche Image gibt dir eine IP, die aus dem Docker-Netzwerk erreichbar ist. Es ist möglich, deinen Localhost aus dem Docker-Container erreichbar zu machen, aber das ist meiner Meinung nach den Aufwand nicht wert, und ich möchte definitiv nicht für die Verwendung von --privileged werben.

Das Verbinden mit der RHOST-debian-Instanz kann einfach mit folgendem Befehl erfolgen:

root@kitploit:~
make shell

Dies ermöglicht es dir, deine Reverse Shell mit nc -lnvp 9000 vorzubereiten.

Wenn das erledigt ist, bist du bereit, den Exploit zu testen. Du kannst Folgendes ausführen:

root@kitploit:~
make exploit

Um den Exploit auszuführen: Dieser führt die RCE nicht aus, sondern gibt stattdessen das GitLab-Rails-Geheimnis aus.

root@kitploit:~
make exploit-rce

Verkettet diese CVE mit der oben genannten RCE-Payload, um eine Reverse Shell zu erhalten.

Viel Spaß beim Hacken!

Referenzen

  • https://hackerone.com/reports/827052
  • https://nvd.nist.gov/vuln/detail/CVE-2020-10977
  • https://www.exploit-db.com/exploits/48431
Tool herunterladen