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-10952-ml-logger-AFR — PoC für CVE-2025-10952 — ml-logger nicht authentifiziertes beliebiges Dateilesen. CVSS 5.3 | Kitploit
Tools/GitHubGitHub/khashayarnzk/cve-2025-10952-ml-logger-afr
SchwachstellenanalyseExploitationWebanwendungs-ExploitationInformationsbeschaffungPenetrationstests
GitHubkhashayarnzk/cve-2025-10952-ml-logger-afr

CVE-2025-10952-ml-logger-AFR

PoC für CVE-2025-10952 — ml-logger nicht authentifiziertes beliebiges Dateilesen. CVSS 5.3

Repository anzeigen
7vor 20 TagenNoch 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-2025-10952 — Beliebiger Dateizugriff über stream_handler in ml-logger

Dieses Repository stellt ein eigenständiges Python-Skript bereit — CVE-2025-10952.py — das eine nicht authentifizierte Schwachstelle für beliebigen Dateizugriff in ml-logger's stream_handler ausnutzt, verkettet mit dem /glob-Endpunkt zur Dateisystem-Enumeration.

Wenn es gegen eine verwundbare ml-logger-Instanz ausgeführt wird, wird es:

  • Dateien auf dem Zielhost über den /glob-Endpunkt enumerieren (nicht authentifiziert, keine Pfadbeschränkung außerhalb des vorgesehenen Geltungsbereichs).
  • Eine beliebige Datei über den /stream-Endpunkt lesen, indem ein manipulierter -Parameter übergeben wird, der aus der Basis-Pfad-Verknüpfungslogik des Handlers ausbricht.
key
  • Optional die abgerufene Datei zur späteren Verwendung auf der Festplatte speichern (z. B. ein exfiltrierter SSH-Privatkey).
  • Da stream_handler das vom Client gelieferte key-Feld direkt in einen Dateipfad-Auflösungs- und Streaming-Aufruf ohne Containment-Prüfung übergibt, kann ein nicht authentifizierter Netzwerkangreifer jede Datei lesen, die für den OS-Benutzer des Dienstes zugänglich ist.

    Details zur Schwachstelle (CVE-2025-10952)

    • Komponente: ml_logger/server.py — stream_handler (Datei-Handler)
    • Schwachstelle: CWE-200 (Offenlegung sensibler Informationen gegenüber einem nicht autorisierten Akteur), CWE-284 (Unzureichende Zugriffskontrolle)
    • CVSS 3.1: 5.3 (Mittel) — AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
    • Betroffene Versionen: geyang/ml-logger, alle Versionen bis Commit acf255bade5be6ad88d90735c8367b28cbe3a743 (Rolling-Release-Projekt; zum Zeitpunkt der Offenlegung keine behobene Version veröffentlicht)
    • Erforderlicher Zugriff: Keiner (nicht authentifiziert)

    stream_handler akzeptiert einen JSON-Body mit einem key-Feld und übergibt es direkt an einen Dateilese-Aufruf ohne Pfadbereinigung. Der zugehörige glob_handler-Endpunkt implementiert teilweise Pfadbeschränkungen (Blockierung absoluter Pfade und Traversal), aber stream_handler teilt diese Validierung nicht — ein verdoppelter führender Schrägstrich in key (z. B. //root/.ssh/id_rsa) reicht aus, um aus dem vorgesehenen Basisverzeichnis auszubrechen.

    Voraussetzungen

    • Python 3.8+
    • Netzwerkzugriff auf eine verwundbare ml-logger-API-Instanz
    • Keinerlei Anmeldeinformationen

    Einrichtung & Installation

    root@kitploit:~
    git clone https://github.com/Khashayarnzk/CVE-2025-10952-ml-logger-AFR.git
    cd CVE-2025-10952-ml-logger-AFR
    pip install -r requirements.txt
    

    Verwendung

    Dateien enumerieren:

    root@kitploit:~
    python3 CVE-2025-10952.py --target TARGET --port 8081 --glob "/etc/*"
    

    Eine beliebige Datei lesen:

    root@kitploit:~
    python3 CVE-2025-10952.py --target TARGET --port 8081 --read "//root/.ssh/id_rsa"
    

    Lesen und auf der Festplatte speichern:

    root@kitploit:~
    python3 CVE-2025-10952.py --target TARGET --port 8081 --read "//root/.ssh/id_rsa" --out id_rsa_root
    chmod 600 id_rsa_root
    ssh -i id_rsa_root -o StrictHostKeyChecking=no root@TARGET
    

    --port standardmäßig auf 8081, dem Standardport für ml-logger's Datei-Broker-API in einer Standardbereitstellung. Das Dashboard-Frontend wird typischerweise auf einem separaten Port bereitgestellt und ist nicht Teil des verwundbaren Pfads.

    Exploit-Ablauf

    1. Bestätigen, dass der /glob-Endpunkt des Ziels mit 405 Method Not Allowed und Allow: POST antwortet — dies identifiziert den API-Port gegenüber dem statischen Dashboard-Frontend.
    2. Erreichbare Pfade mit --glob enumerieren, um interessante Dateien zu kartieren (SSH-Keys, Konfigurationen, Anmeldedatenspeicher).
    3. Eine Zieldatei mit --read abrufen, wobei ein verdoppelter führender Schrägstrich für absolute Pfade verwendet wird.
    4. Wenn die Datei ein privater Schlüssel ist, diesen direkt für die Authentifizierung verwenden (siehe Verwendung oben).

    Erkennung & Abwehr

    • Netzwerk: Alarmieren bei key/path-artigen JSON-Feldern, die .., verdoppelte führende Schrägstriche (//) oder absolute Pfadpräfixe (/etc, /root, /proc) enthalten und an ml-logger-Dienstports gerichtet sind.
    • Host: Dateiintegritäts- oder Zugriffsüberwachung auf ~/.ssh/, /etc/shadow, /etc/passwd sollte Lesevorgänge kennzeichnen, die von der ml-logger-Prozessidentität ausgehen.
    • Exposition: ml-logger niemals ohne einen authentifizierenden Reverse-Proxy davor einem nicht vertrauenswürdigen Netzwerk aussetzen.
    • Behebung: Pfad-Containment erzwingen (os.path.realpath()-Auflösung gegen ein auf der Whitelist stehendes Basisverzeichnis geprüft) in stream_handler; den Dienst unter einem dedizierten, unprivilegierten OS-Konto ausführen.

    Referenzen

    • NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-10952
    • GitHub Advisory: https://github.com/advisories/GHSA-9x36-c74v-fgr6
    • Originalbericht: https://github.com/geyang/ml-logger/issues/74
    • Projekt: https://github.com/geyang/ml-logger

    ⚠️ Haftungsausschluss

    Dieses Repository enthält einen Proof-of-Concept-Exploit für CVE-2025-10952, eine nicht authentifizierte Informationsoffenlegungs-Schwachstelle in ml-logger. Verwenden Sie diesen Code nur in Umgebungen, die Ihnen gehören oder für die Sie ausdrücklich autorisiert sind, Tests durchzuführen. Der Autor ist nicht verantwortlich für Missbrauch oder Schäden, die durch diese Software verursacht werden.

    Lizenz

    Siehe LICENSE.

    Tool herunterladen