
NotCVE-2026-0009 — Updated!
# Pfad-Traversal-Schwachstelle in NitroShare v0.3.4
Path-Traversal-Schwachstelle in NitroShare
Beschreibung
NitroShare Desktop v0.3.4 enthält eine Path-Traversal-Schwachstelle in seinem LAN-Dateiübertragungsserver. Der Server lauscht auf allen Netzwerkschnittstellen (Port 40818) ohne Authentifizierung. Beim Empfang von Dateien wird das Feld name aus dem JSON-Item-Header des Absenders übergeben, ohne zu überprüfen, ob der aufgelöste Pfad innerhalb des Übertragungsstammverzeichnisses C:\UserName\Downloads\NitroShare bleibt. Ein Angreifer im selben LAN kann eine manipulierte Dateinamen-Zeichenkette mit ../-Sequenzen (klassischer Dot-Dot-Slash-Angriff) senden, um Dateien überall dort zu schreiben, wo der aktuelle Benutzer Zugriff hat, einschließlich des Windows-Autostart-Ordners für die Codeausführung beim nächsten Login (daher der erstellte PoC). Es ist keine Benutzerinteraktion erforderlich. Zusätzlich ist TLS standardmäßig deaktiviert (die Authentifizierungsmethode, die die Anwendung anbietet), was bedeutet, dass standardmäßig keine Authentifizierung erforderlich ist – was ich aufgrund jahrelanger Arbeit in IT und Informationssicherheit annehme, dass die meisten Benutzer so vorgehen.
Schritte zur Reproduktion
- Verbinde dich vom LAN aus mit dem Übertragungsserver von NitroShare auf TCP-Port 40818.
- Sende ein JSON-Übertragungsheader-Paket:
{"name":"attacker","size":"<n>","count":"1"}. - Sende ein JSON-Item-Header-Paket mit einem Path-Traversal-Dateinamen:
{"name":"../../AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/payload.exe","directory":false,"created":"0","last_modified":"0","last_read":"0","size":"<n>"} - Sende Binärpaket(e) mit dem schädlichen Dateiinhalt.
- Die Datei wird außerhalb des Download-Verzeichnisses an den vom Angreifer gewählten Pfad geschrieben.
- Wenn der Autostart-Ordner angegriffen wird, führt die Nutzlast automatisch beim nächsten Benutzerlogin aus.
Ein funktionierender PoC wird bereitgestellt (poc_path_traversal_via_lan_transfer___arbitrary_file_w.py) und wurde gegen NitroShare 0.3.4 unter Windows verifiziert.
Empfohlene Abhilfemaßnahmen
- Empfangene Dateinamen bereinigen – Pfadtrennzeichen (
/,\) und..-Sequenzen entfernen oder ablehnen. Nach der Auflösung mitQDir::absoluteFilePath()überprüfen, ob das Ergebnis mit dem Übertragungsstammverzeichnis beginnt, bevor fortgefahren wird. - Passwort verlangen oder TLS standardmäßig aktivieren – Mit aktiviertem TLS ausliefern und beim ersten Start automatisch Zertifikate generieren, oder die Option für ein Passwort schaffen.
- Übertragungsgenehmigungsaufforderung hinzufügen – Den Benutzer vor dem Schreiben empfangener Dateien auf die Festplatte auffordern.
- Authentifizierung implementieren – Einen Kopplungsmechanismus (gemeinsames Geheimnis, QR-Code oder Zertifikatsaustausch) verlangen, bevor Übertragungen akzeptiert werden.
Offenlegungszeitplan
- 13. April 2026 – Entwickler per E-Mail kontaktiert, die im GitHub-Repository veröffentlicht wurde. Keine Antwort.
- 19. April 2026 – Zweiter Versuch. Keine Antwort.
- 3. Mai 2026 – Dritter Versuch. Keine Antwort.
- 22. Juli 2026 – NotCVE-2026-0009 zugewiesen
- 28. Juli 2026 – CVE-2026-66050 zugewiesen