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
element-vector-drive-letter — Element Desktop v1.12.29 – Hoch – Lokal – Datei – Vektor: Protokoll liest Windows-Dateien außerhalb des asar-Jails | Kitploit
Tools/GitHubGitHub/abraxas/element-vector-drive-letter
SchwachstellenanalyseExploitationWebanwendungs-ExploitationSicherheitsvirtualisierungPenetrationstestsLabs & Praxis
GitHubabraxas/element-vector-drive-letter

element-vector-drive-letter

Element Desktop v1.12.29 – Hoch – Lokal – Datei – Vektor: Protokoll liest Windows-Dateien außerhalb des asar-Jails

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

Abraxas Labs - element-vector-drive-letter

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  element-vector-drive-letter

element-vector-drive-letter

Element Desktop v1.12.29 - Element Creations Ltd

Klasse: Dateilesen Reichweite: Lokal

apps/desktop/src/electron-main.ts registriert vector: als privilegiertes Dateiprotokoll. Der Jail ist nur relTarget.startsWith("..") nach path.normalize(path.join(...pathname.split("/").slice(2))). Unter Windows ist ein Join von C:, Windows, win.ini bereits C:\Windows\win.ini. Absolute Pfade beginnen nicht mit .., also lässt die Prüfung sie durch. Electrons eigener Hinweis zu benutzerdefinierten Protokollen lehnt auch path.isAbsolute ab. POSIX path.join behandelt C: nicht als absolut, daher sind Linux und macOS nicht von diesem Überbleibsel betroffen. will-navigate lässt vector: durch.

Renderer-XSS, DevTools oder ein anderer lokaler Prozess kann fetch("vector://vector/webapp/C:/Windows/win.ini") ausführen und Dateien lesen, die der Element-Prozess öffnen kann.

IDnoch keine CVE
CWECWE-22 / CWE-73
CVSSHoch: 8.3 CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N
Produktelement-web Desktop (apps/desktop)
Betroffenv1.12.29 (2d90d6b7b601ecb9ccdf81239a43b4396b4b0c9e). Nur Windows.
Authlokaler Renderer (DevTools / XSS)
LizenzGNU Affero GPL v3.0
Labnur 127.0.0.1

Was ein Angreifer tun kann

Renderer-XSS, DevTools oder ein anderer lokaler Prozess, der vector: erreichen kann. Native Windows Element Desktop wurde nicht ausgeführt. Das Gadget kopiert den URL-Parser des Pins und verwendet Node path.win32.

PrivilegMethode / SinkRecon / Integrität / VerfügbarkeitIm Lab bewiesen oder abgeleitet
Eine Datei lesen, die der Element-Prozess öffnen kannfetch("vector://vector/webapp/C:/Windows/win.ini"). Jail ist nur relTarget.startsWith(".."). Drive-Letter-Join ist absolut, also besteht die Prüfung. path.win32.resolve(asar, relTarget) ist C:\Windows\win.iniReconIm Lab am URL-Parser-Gadget bewiesen. Body ist ELEMENT-VECTOR-DRIVE-LETTER-WITNESS. Native Desktop nicht ausgeführt
Dasselbe Lesen von electron-config, Profilen, Dateien anderer Benutzer mit derselben ACLDerselbe vector://vector/webapp/C:/...-FetchReconAbgeleitet. Im Lab wurde win.ini platziert, keine echten Secrets
Matrix-ATO, wenn der Hauptframe bereits auf der Festplatte befindliches Angreifer-HTML lädtwill-navigate lässt vector: durch. Feindseliges HTML unter vector://vector erhält Preload / window.electron (Tokens, Seshat, clearStorage)IntegritätAbgeleitet aus webcontents-handler.ts und Preload. Im Lab wurde kein BrowserWindow navigiert
../-Traversal des asar-Baumsvector://vector/webapp/../n/aHier geschlossen. WHATWG URL kollabiert es; Handler gibt FILE_NOT_FOUND (-6) zurück
POSIX / macOS / Linux Drive-Letter-Fetchpath.posix.join lässt C:/Windows/win.ini unter asarn/aHier geschlossen. Gadget posix 404, kein Witness
OS-RCE / LPEnodeIntegration: false, app.enableSandbox()n/aGeschlossen. Nicht dieses Überbleibsel

Überbleibsel desselben Pins: Fragment-Guest-Wipe, Univention ICS javascript: href.

Wie ich es gefunden habe

Ich habe element-hq/element-web v1.12.29 nach dem GitHub-Release vom 22. Sep. 2026 gepinnt. Timeline-XSS, HTML-Export-XSS (GHSA-wqmv), Homepage-HTML (GHSA-wrcp), Widget-Media-Token (GHSA-3jm3) und Element-Call-Keys (GHSA-69q3) sind auf diesem Tag geschlossen. Das Desktop-Custom-Protokoll prüft weiterhin nur startsWith("..").

new URL("vector://vector/webapp/C:/Windows/win.ini") behält C: als Pfadsegment. path.win32.join("C:", "Windows", "win.ini") ist C:\Windows\win.ini. Node path.win32.join(asar, abs) konkateniert; path.win32.resolve verwirft das asar-Root.

Bereits festgehaltene Irrwege: ../ als das Überbleibsel zu behandeln (WHATWG kollabiert es, Handler 404t); POSIX C: als denselben Bug zu bezeichnen (posix join bleibt unter asar); Dateilesen zu OS-RCE aufzublähen (Sandbox und nodeIntegration: false bleiben an). Eine Reverse Shell. Theater.

Lab

Gadget des URL-Parsers. Node path.win32 vs path.posix. Kein Windows-Element-Desktop-Prozess. Platziertes /lab/oracle/win.ini steht für C:\Windows\win.ini. /lab/asar/index.html ist der asar-Jail.

python3 element-vector-drive-letter-Abraxas-Labs.py

oder

cd lab
./run.sh

Ziel nur http://127.0.0.1:19610. Compose-Projekt element-vector-drive-letter. Der Stack wird nach dem Lauf abgebaut.

SUCCESS element-vector-drive-letter how=gadget win32-drive-letter=200 posix-drive-letter=404 control-dotdot=404 patched-isabs=404 ELEMENT-VECTOR-DRIVE-LETTER-WITNESS

Der Fix

Nach dem Normalisieren path.isAbsolute(relTarget) ablehnen und verlangen, dass path.resolve(baseDir, relTarget) unter path.resolve(baseDir) bleibt (path.relative, .. verweigern).

Referenzen

  • github.com/element-hq/element-web Tag v1.12.29
  • electron-main.ts (registerFileProtocol)
  • webcontents-handler.ts (will-navigate)
  • In der Nähe gepatcht (nicht dieser Jail): GHSA-wqmv · GHSA-wrcp
  • Gleicher Pin: element-fragment-guest · element-ics-javascript
  • CWE-22

Lizenz

GNU Affero GPL v3.0. Siehe LICENSE. Nur Loopback-Lab. Keine Gewährleistung.

Tool herunterladen