Wo finde ich Daten, die von einem Windows-Dienst gespeichert wurden, der als "Lokales Systemkonto" ausgeführt wird?

95

Ich verwende einen Dienst, der Daten auf der Festplatte speichert. Der Dienst wird als "lokales Systemkonto" ausgeführt.

Wo sind die gespeicherten Daten für diesen Systembenutzer?

Ich denke darüber nach C:\Documents and Settings\Default User, bin mir aber nicht sicher.

Kann das jemand bestätigen?

paulgreg
quelle

Antworten:

114

Die Daten, die Sie suchen, sollten sich standardmäßig nicht in "C: \ Dokumente und Einstellungen \ Standardbenutzer" befinden. Dies ist der Speicherort des Standardbenutzerprofils, das die Vorlage für neue Benutzerprofile ist. Seine einzige Funktion besteht darin, in einen neuen Ordner kopiert zu werden, um als Benutzerprofil verwendet zu werden, wenn sich ein Benutzer zum ersten Mal am Computer anmeldet.

Wenn der Dienst den Richtlinien von Microsoft entspricht, werden Daten im Anwendungsdatenordner (% APPDATA%) oder im lokalen Anwendungsdatenordner (% LOCALAPPDATA% unter Windows Vista und höher) gespeichert. Es sollte nicht die Ordner Eigene Dateien oder Dokumente verwenden, aber Sie möchten möglicherweise auch dort nachsehen.

Überprüfen Sie bei einer typischen Installation von Windows XP oder Windows Server 2003 die folgenden Speicherorte auf Anwendungsdaten für Programme, die als lokales System (NT AUTHORITY \ SYSTEM) ausgeführt werden:

  • C: \ Windows \ system32 \ config \ systemprofile \ Anwendungsdaten \ Hersteller \ Programm
  • C: \ Windows \ system32 \ config \ systemprofile \ Lokale Einstellungen \ Anwendungsdaten \ Hersteller \ Programm
  • C: \ Windows \ system32 \ config \ systemprofile \ Eigene Dateien

Überprüfen Sie bei einer typischen Installation von Windows Vista und höheren Versionen die folgenden Speicherorte auf Anwendungsdaten für Programme, die als lokales System (NT AUTHORITY \ SYSTEM) ausgeführt werden:

  • C: \ Windows \ system32 \ config \ systemprofile \ AppData \ Roaming \ Vendor \ Program
  • C: \ Windows \ system32 \ config \ systemprofile \ AppData \ Local \ Vendor \ Program
  • C: \ Windows \ system32 \ config \ systemprofile \ AppData \ LocalLow \ Vendor \ Program
  • C: \ Windows \ system32 \ config \ systemprofile \ Documents

Ersetzen Sie natürlich Vendor und Program durch den entsprechenden Vendor- und Programmnamen .

[Edit - for bricelam] Für 32-Bit-Prozesse, die unter 64-Bit-Fenstern ausgeführt werden, wäre dies in SysWOW64 .

  • C: \ Windows \ SysWOW64 \ config \ systemprofile \ AppData
Jay Michaud
quelle
18
Bei 32-Bit-Prozessen, die unter 64-Bit-Versionen von Windows ausgeführt werden, aktivieren Sie stattdessen das Kontrollkästchen "C: \ Windows \ SysWOW64".
Bricelam
1
Siehe auch die Antwort hier: stackoverflow.com/questions/3637605/…
stolsvik
14

Das Ziel ändert sich mit der Zeit. Unter Windows 10:

  • %systemroot%\ServiceProfiles

Z.B:

  • C:\Windows\ServiceProfiles\LocalService
  • C:\Windows\ServiceProfiles\NetworkService
lu_ko
quelle
1
Hinweis: Dies gilt für LocalServiceund NetworkService, jedoch nicht für LocalSystemdie Frage, nach der die Frage gestellt wird. Dies sind drei separate Konten, siehe hier für weitere Details
MM
6

Gehen Sie zu Sysinternals und laden Sie procmon herunter. Sie müssen den Namen der EXE-Datei kennen, unter der der Dienst ausgeführt wird. Anschließend können Sie den Filter in procmon verwenden, um nur die von dieser Anwendung generierten Aktivitäten aufzulisten.

Sie sollten nun in der Lage sein, die Liste zu durchlaufen und festzustellen, welche Datei diese Anwendung verwendet (HINWEIS: Nach einigen Minuten der Protokollierung können Sie das Datei-Menü verwenden, um die Überwachung zu beenden).

Die gesamte Sysinternal-Suite kann als einzelne Zip-Datei heruntergeladen werden, und das Kit enthält möglicherweise weitere nützliche Tools.

Wayne
quelle
2

Ich habe einen Dienst verwendet, der als lokales Systemkonto ausgeführt wird. Die Benutzerdaten werden gespeichert in:

c:\Documents and Settings\LocalService

Dies ist ein versteckter Ordner und es hat eine Weile gedauert, bis ich ihn gefunden habe. Hoffe das hilft.

Betrüger
quelle
2

Von einem realen Prozess, der als SYSTEM ( S-1-5-18) ausgeführt wird.

  • GetUserName :SYSTEM
  • User Sid :S-1-5-18
  • GetUserNameEx (NameFullyQualifiedDN) :CN=HYDROGEN,CN=Computers,DC=stackoverflow,DC=com
  • GetUserNameEx (NameSamCompatible) :STACKOVERFLOW\HYDROGEN$
  • GetUserNameEx (NameDisplay) :HYDROGEN$
  • GetUserNameEx (NameUniqueId) :{b413b030-8e9a-49d2-9157-20afd58792dd}
  • GetUserNameEx (NameCanonical) :stackoverflow.com/Computers/HYDROGEN
  • GetUserNameEx (NameUserPrincipal) :[email protected]
  • GetUserNameEx (NameCanonicalEx) :stackoverflow.com/ComputersHYDROGEN
  • GetUserNameEx (NameServicePrincipal) : n / a
  • GetTempPath :C:\WINDOWS\TEMP\
  • CSIDL_APPDATA :C:\WINDOWS\system32\config\systemprofile\AppData\Roaming
  • CSIDL_LOCAL_APPDATA :C:\WINDOWS\system32\config\systemprofile\AppData\Local
  • CSIDL_COMMON_APPDATA :C:\ProgramData
  • CSIDL_PROFILE :C:\WINDOWS\system32\config\systemprofile
  • CSIDL_PERSONAL : n / a

Örtliche Dienstleistung

  • GetUserName :LOCAL SERVICE
  • User Sid :S-1-5-1
  • GetUserNameEx (NameFullyQualifiedDN) : n / a
  • GetUserNameEx (NameSamCompatible) :NT AUTHORITY\LOCAL SERVICE
  • GetUserNameEx (NameDisplay) : n / a
  • GetUserNameEx (NameUniqueId) : n / a
  • GetUserNameEx (NameCanonical) : n / a
  • GetUserNameEx (NameUserPrincipal) : n / a
  • GetUserNameEx (NameCanonicalEx) : n / a
  • GetUserNameEx (NameServicePrincipal) : n / a
  • GetTempPath :C:\WINDOWS\SERVIC~3\LOCALS~1\AppData\Local\Temp\
  • CSIDL_APPDATA :C:\WINDOWS\ServiceProfiles\LocalService\AppData\Roaming
  • CSIDL_LOCAL_APPDATA :C:\WINDOWS\ServiceProfiles\LocalService\AppData\Local
  • CSIDL_COMMON_APPDATA :C:\ProgramData
  • CSIDL_PROFILE :C:\WINDOWS\ServiceProfiles\LocalService
  • CSIDL_PERSONAL :C:\WINDOWS\ServiceProfiles\LocalService\Documents

Netzwerkdienst

  • GetUserName : "HYDROGEN $`
  • User Sid : S-1-5-2`
  • GetUserNameEx (NameFullyQualifiedDN) :CN=HYDROGEN,CN=Computers,DC=avatopia,DC=com
  • GetUserNameEx (NameSamCompatible) :AVATOPIA\HYDROGEN$
  • GetUserNameEx (NameDisplay) :HYDROGEN$
  • GetUserNameEx (NameUniqueId) :{b413b030-8e9a-49d2-9157-20afd58792dd}
  • GetUserNameEx (NameCanonical) :stackoverflow.com/Computers/HYDROGEN
  • GetUserNameEx (NameUserPrincipal) :[email protected]
  • GetUserNameEx (NameCanonicalEx) :stackoverflow.com/ComputersHYDROGEN
  • GetUserNameEx (NameServicePrincipal) : n / a
  • GetTempPath :C:\WINDOWS\SERVIC~3\NETWOR~1\AppData\Local\Temp\
  • CSIDL_APPDATA :C:\WINDOWS\ServiceProfiles\NetworkService\AppData\Roaming
  • CSIDL_LOCAL_APPDATA :C:\WINDOWS\ServiceProfiles\NetworkService\AppData\Local
  • CSIDL_COMMON_APPDATA :C:\ProgramData
  • CSIDL_PROFILE :C:\WINDOWS\ServiceProfiles\NetworkService
  • CSIDL_PERSONAL :C:\WINDOWS\ServiceProfiles\NetworkService\Documents
Ian Boyd
quelle
Ich habe nach dem Systemäquivalent von UserProfile gesucht, und CSIDL_PROFILE war es. Danke!
carlin.scott
1

Unter XP befindet sich ein "Systemprofil" unter C: \ WINDOWS \ system32 \ config \ systemprofile

Ich dachte, dort befand sich das lokale System. Die Konten "Netzwerkdienst" und "Lokaler Dienst" verfügen über ausgeblendete Profile im Ordner "Dokumente und Einstellungen".

Der Standardbenutzerordner wird normalerweise als Basisordner verwendet, aus dem neue Benutzerkonten erstellt werden. Wenn sich also ein neuer Benutzer zum ersten Mal bei einem System anmeldet. Ihre Einstellungen werden zunächst aus dem Standardbenutzerprofil kopiert.

Rob Haupt
quelle