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
vfs-install-cwd — VFS für Git ab95cf51 - Hoch - Lokal - LPE - Installer CWD nicht qualifiziert gvfs.exe | Kitploit
Tools/GitHubGitHub/abraxas/vfs-install-cwd
Privilege EscalationSchwachstellenanalyseExploitationPenetrationstestsPapers & ForschungRed Teaming
GitHubabraxas/vfs-install-cwd

vfs-install-cwd

VFS für Git ab95cf51 - Hoch - Lokal - LPE - Installer CWD nicht qualifiziert gvfs.exe

Repository anzeigen
6vor 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 - vfs-install-cwd

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  vfs-install-cwd

vfs-install-cwd

Klasse: LPE Reichweite: Lokal

VFS for Git master ab95cf51 (Tag v2.0.26259.1) - Microsoft

Setup.iss PrepareToInstall ruft immer ExecWithResult('gvfs.exe', 'service --list-mounted', '', ...) über {cmd} /S /C mit einem leeren WorkingDir auf. Dadurch wird das Verzeichnis geerbt, aus dem der Administrator SetupGVFS*.exe gestartet hat. cmd.exe durchsucht zuerst das CWD und dann PATH. UnmountRepos verwendet denselben unqualifizierten Namen.

Dieselbe Datei qualifiziert bereits die sicheren Pfade. sc.exe ist {sys}\SC.EXE. Das Remount nach der Installation ist {app}\gvfs.exe. Bei der Erstinstallation gibt es noch kein echtes gvfs.exe im PATH, daher gewinnt eine Pflanze neben dem signierten Installer.

IDnoch keine CVE
KlasseLPE (CWD-Suche des erhöhten Installers / unqualifizierte Ausführung)
ReichweiteLokal (UI:R)
CWECWE-427, CWE-428
CVSSHoch: 7.3 CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H
ProduktVFS for Git
Betroffenmaster ab95cf51d6ffd0ee0e2feae7180078fe9ecbbb3a (Tag v2.0.26259.1). Nur Windows.
AuthLokal. Pflanze gvfs.exe in das Verzeichnis, aus dem ein Administrator SetupGVFS*.exe startet.
LizenzGNU Affero GPL v3.0
LabNur 127.0.0.1. how=gadget (kein natives SetupGVFS*.exe).

Geschwister von CVE-2021-47874 (nicht in Anführungszeichen gesetzter binPath), andere Senke. sc.exe und der Remount-Pfad sind bei diesem Pin bereits qualifiziert.

Was ein Angreifer tun kann

Pflanze ein harmloses gvfs.exe neben den signierten Installer. Wenn ein Administrator das Setup aus diesem Ordner startet, führt PrepareToInstall die Pflanze als erhöhter Installer aus.

PrivilegMethode / SenkeWas es gewährtRecon / Integrität / VerfügbarkeitLab-bewiesen oder abgeleitet
Installer-CWD erbenExecWithResult leeres WorkingDir (Setup.iss ~830)Suche beginnt im StartordnerIntegrität der SuchreihenfolgeLab-bewiesen. Gadget working_dir="", Suche cwd-then-path.
Unqualifiziertes gvfs.exe aus CWD vor PATH auflösencmd.exe /S /C ""gvfs.exe" service --list-mounted > ..."Pflanze gewinnt gegen PATHIntegritätLab-bewiesen. prepare-resolved=cwd-plant, aufgelöst /lab/cwd/gvfs.exe. PATH-Kopie wurde nicht getroffen.
Als erhöhter Installer ausführenWitness-Dateieigentümer = Gadget-uid (Platzhalter für erhöhtes Setup)Admin-äquivalente CodeausführungIntegritätLab-bewiesen auf der Gadget-uid. Natives Admin-IL auf diesem Host nicht verfügbar.
Dieselbe Pflanze beim UnmountExec('gvfs.exe', 'service --unmount-all', '', ...) (Setup.iss ~544)Pflanze läuft erneut während des UnmountsIntegritätLab-bewiesen. unmount-resolved=cwd-plant.
Setup nach der Pflanze fortsetzenPflanze beendet mit 0 und schreibt nur einen CanarySetup fährt fortVerfügbarkeit der InstallationLab-bewiesen. Witness-Text ist VFS-INSTALL-CWD-WITNESS. Keine Payload.

Geschlossen bei diesem Überbleibsel: Remount {app}\gvfs.exe (remount-resolved=app, remount-plant=no). In Anführungszeichen gesetztes {sys}\SC.EXE (sc-resolved=sys). POSIX-Nur-PATH-Suche (unix-cwd-search=no). Live SetupGVFS*.exe / ProjFS (dieser Host ist macOS; how=gadget). Remote unauthentifizierte Ausführung. Nicht in Anführungszeichen gesetzter ImagePath CVE-2021-47874 (bereits in Anführungszeichen gesetzter binPath).

Überbleibsel desselben Pins: vfs-quote-breakout, vfs-mount-dehydrate, vfs-clone-acl, vfs-service-sid, vfs-hook-impersonate.

Wie ich es gefunden habe

Ich habe VFSForGit master ab95cf51 nach dem Merge vom 2026-09-28 gepinnt. Die Skip-Liste ist CVE-2021-47874. Setup.iss setzt binPath bereits in Anführungszeichen und qualifiziert {sys}\SC.EXE und {app}\gvfs.exe. PrepareToInstall übergibt immer noch ein bloßes gvfs.exe an cmd.exe.

Bereits festgehaltene Irrwege: erneutes Einreichen von CVE-2021-47874; die POSIX-Nur-PATH-Suche als den Windows-Bug behandeln; behaupten, dass der Remount ebenfalls unqualifiziert ist. Theater. Natives Windows fehlte, daher ist das Lab ein Gadget von ExecWithResult plus cmd-CWD-dann-PATH-Suche.

Lab

python3 vfs-install-cwd-Abraxas-Labs.py

oder

cd lab
./run.sh

Gadget-HTTP auf 127.0.0.1:19680. Witness VFS-INSTALL-CWD-WITNESS. Letzte Zeile verwendet how=gadget.

SUCCESS vfs-install-cwd how=gadget prepare-resolved=cwd-plant prepare-witness=yes remount-resolved=app remount-plant=no unix-cwd-search=no VFS-INSTALL-CWD-WITNESS

Der Fix

ExpandConstant('{app}\gvfs.exe'), wenn vorhanden, sonst die list-mounted-Abfrage bei der Erstinstallation überspringen. Niemals ein bloßes gvfs.exe an cmd.exe übergeben. UnmountRepos auf dieselbe Weise qualifizieren.

Referenzen

  • github.com/microsoft/VFSForGit master ab95cf51d6ffd0ee0e2feae7180078fe9ecbbb3a
  • Setup.iss PrepareToInstall / UnmountRepos / {sys}\SC.EXE / {app}\gvfs.exe
  • In der Nähe gepatcht (nicht diese Ausführung): CVE-2021-47874 nicht in Anführungszeichen gesetzter ImagePath
  • CWE-427 · CWE-428

Lizenz

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

Tool herunterladen