Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/v3s9er/cve-2026-52886
SchwachstellenanalyseExploitationDatenexfiltration
GitHubv3s9er/cve-2026-52886

CVE-2026-52886

# Notepad++ CVE-2026-52886 — session.xml backupFilePath starts_with() Pfad-Traversal (GHSA-rqfm-pw34-r7j6)

Repository anzeigen
13vor 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

Path Traversal: Umgehung der starts_with()-Präfixprüfung

Notepad++ — Beliebiges Lesen von Dateien über session.xml-backupFilePath-Traversal

Advisory

  • GHSA: GHSA-rqfm-pw34-r7j6
  • CVE: CVE-2026-52886
  • Schweregrad: Mittel
  • Betroffen: < v8.9.6.4
  • Behoben in: v8.9.7
  • Patch-Commit: 7e66f36
  • Betroffene Datei: PowerEditor/src/Notepad_plus.cpp (Sitzungswiederherstellung — backupFilePath-Validierung)
  • Plattform: Windows 11 Pro x64
  • Erforderliche Berechtigung: Standardbenutzer (Schreibzugriff auf session.xml)
  • Forscher: v3s9er (RAGE)
  • Offengelegt: 2026-06-05

Zusammenfassung

Notepad++ validiert das backupFilePath-Attribut bei der Sitzungswiederherstellung über einen rohen String-Präfixvergleich mittels std::wstring::starts_with(), ohne den Pfad vorher zu normalisieren. Ein manipulierter Pfad, der mit dem legitimen Präfix des Backup-Verzeichnisses beginnt, aber ..\-Traversierungssequenzen enthält, besteht die Prüfung, wird jedoch beim Öffnen der Datei durch das Betriebssystem zu einem beliebigen Speicherort aufgelöst — der Inhalt jeder lesbaren Datei wird in einen Editor-Tab geladen.

Technischer Überblick

Beim Start mit aktiviertem Snapshot- (Backup-)Modus stellt Notepad++ die vorherige Sitzung aus session.xml wieder her. Das backupFilePath jedes Eintrags soll sich im Backup-Verzeichnis der Anwendung befinden. Die Integritätsprüfung stellt lediglich sicher, dass der gespeicherte Pfad mit der erwarteten Zeichenfolge des Backup-Verzeichnisses beginnt. Da der Vergleich anhand der rohen, nicht normalisierten Zeichenfolge erfolgt, setzt ein Angreifer das legitime Präfix voran und verlässt das Verzeichnis anschließend über ..\-Sequenzen.

Grundursache

Die Prüfung testet ein textuelles Präfix; die Verwendung öffnet den vom Betriebssystem aufgelösten Pfad. Beide weichen voneinander ab, sobald ..\ vorhanden ist.

OperationQuelleVerhalten
PRÜFUNGRohe backupFilePath-Zeichenfolgestarts_with(backupDir) — besteht bei Präfixübereinstimmung
VERWENDUNGVom Betriebssystem aufgelöster Pfad..\-Sequenzen kollabieren zu einem beliebigen Speicherort

Angriffsszenario

Voraussetzung: Schreibzugriff auf session.xml, Snapshot-/Backup-Modus aktiviert.

Schritte:

  1. Überschreibe session.xml und injiziere einen manipulierten backupFilePath: <backupDir>\..\..\..\..\Users\victim\.ssh\id_rsa
  2. Das Präfix <backupDir>\ erfüllt starts_with(), sodass die Validierung erfolgreich ist.
  3. Starte Notepad++ (die Sitzungswiederherstellung wird ausgelöst).
  4. Das Betriebssystem löst die ..\-Sequenzen auf; die Zieldatei wird geöffnet.
  5. Der Inhalt der beliebigen Datei wird in einen Editor-Tab geladen.

Ergebnis: Nur-Lese-Exfiltration — der Inhalt der Zieldatei ist im Editor sichtbar, einschließlich sensibler Dateien wie SSH-Schlüssel, Umgebungskonfigurationsdateien und Credential-Stores.

Auswirkungen

  • Typ: Beliebiges Lesen von Dateien (Path Traversal)
  • Admin erforderlich: Nein
  • UAC-Eingabeaufforderung: Nein
  • Offenlegung: private SSH-Schlüssel, .env-/Konfigurationsdateien, Credential-Stores — jede für den Benutzer lesbare Datei
  • CWE: CWE-22 (Improper Limitation of a Pathname to a Restricted Directory)

Proof of Concept

Anforderungen:

  • Notepad++ v8.9.6.2 portable x64 mit Backup-/Snapshot-Konfiguration
  • Schreibzugriff auf session.xml
  • Ein backupFilePath-Payload: Präfix des Backup-Verzeichnisses + ..\-Traversierungssequenzen + Pfad der Zieldatei

Das Injizieren des manipulierten Pfads und das Starten der Anwendung lädt die Zieldatei in einen Editor-Tab.

Patch-Analyse

Der Fix (Commit 7e66f36) führt vor der Validierung eine ordnungsgemäße Pfad-Normalisierung durch, sodass ..\-Sequenzen vor dem Präfixvergleich aufgelöst werden — geprüfter Pfad und verwendeter Pfad stimmen nun überein.

Referenzen

  • GHSA-rqfm-pw34-r7j6
  • CVE-2026-52886
  • Commit 7e66f36
  • Notepad++-Release v8.9.7
Tool herunterladen