Pregunta ¿Dónde puedo encontrar los datos almacenados por un Servicio de Windows que se ejecuta como "Cuenta del sistema local"?


Estoy usando un servicio que almacena datos en el disco. El servicio se ejecuta como "cuenta de sistema local".

¿Dónde están los datos almacenados para ese usuario del sistema?

Estoy pensando en C:\Documents and Settings\Default User Pero no estoy seguro de eso.

¿Alguien puede confirmar eso?


81
2018-05-18 09:13


origen




Respuestas:


Los datos que busca no deben, por defecto, estar ubicados en "C: \ Documents and Settings \ Default User". Esa es la ubicación del perfil de usuario predeterminado, que es la plantilla para los nuevos perfiles de usuario. Su única función es copiarse en una nueva carpeta para usarla como perfil de usuario cuando un usuario inicia sesión en la computadora por primera vez.

Si el servicio sigue las pautas de Microsoft, almacenará datos en la carpeta de datos de la aplicación (% APPDATA%) o la carpeta de datos de la aplicación local (% LOCALAPPDATA% en Windows Vista y versiones posteriores). No debe usar las carpetas Mis documentos o Documentos, pero es posible que también desee consultar allí.

En una instalación típica de Windows XP o Windows Server 2003, verifique las siguientes ubicaciones para los datos de aplicación de los programas que se ejecutan como Sistema Local (NT AUTHORITY \ SYSTEM):

  • C: \ Windows \ system32 \ config \ systemprofile \ Application Data \Vendedor\Programa
  • C: \ Windows \ system32 \ config \ systemprofile \ Local Settings \ Application Data \Vendedor\Programa
  • C: \ Windows \ system32 \ config \ systemprofile \ Mis documentos

En una instalación típica de Windows Vista y versiones posteriores, revise los siguientes lugares para obtener datos de la aplicación de los programas que se ejecutan como Sistema Local (NT AUTHORITY \ SYSTEM):

  • C: \ Windows \ system32 \ config \ systemprofile \ AppData \ Roaming \Vendedor\Programa
  • C: \ Windows \ system32 \ config \ systemprofile \ AppData \ Local \Vendedor\Programa
  • C: \ Windows \ system32 \ config \ systemprofile \ AppData \ LocalLow \Vendedor\Programa
  • C: \ Windows \ system32 \ config \ systemprofile \ Documents

Por supuesto, sustituya el nombre del proveedor apropiado y el nombre del programa por Vendedor y Programa.

[Editar - para bricelam] Para los procesos de 32 bits que se ejecutan en ventanas de 64 bits, sería en SysWOW64.

  • C: \ Windows \ SysWOW64 \ config \ systemprofile \ AppData

98
2018-05-18 15:48



Para los procesos de 32 bits que se ejecutan en versiones de Windows de 64 bits, verifique en 'C: \ Windows \ SysWOW64' en su lugar. - bricelam
También vea la respuesta aquí: stackoverflow.com/questions/3637605/… - stolsvik


El destino está cambiando en el tiempo. En Windows 10:

  • %systemroot%\ServiceProfiles

P.ej.:

  • C:\Windows\ServiceProfiles\LocalService
  • C:\Windows\ServiceProfiles\NetworkService

11
2018-01-15 15:17



Nota: esto se aplica a LocalService y NetworkService, pero no LocalSystem que la pregunta es acerca de Esas son tres cuentas separadas, mira aquí para más detalles - M.M


Ir Sysinternals y descargar procmon. Necesitará saber el nombre del archivo ejecutable que ejecuta el servicio. Luego, puede usar el filtro en procmon para enumerar solo las actividades generadas por esa aplicación.

Ahora debería poder recorrer la lista y determinar qué archivo está utilizando esta aplicación (NOTA: Después de varios minutos de registro, puede usar el menú de archivos para detener la supervisión)

La suite completa de Sysinternal se puede descargar como un solo archivo zip y puede encontrar otras herramientas en el kit que pueden ser útiles.


6
2018-05-18 10:57





Si su servicio utiliza API estándar para obtener los directorios predeterminados del usuario (configuración y datos de aplicación), los archivos se guardarán en el Default UserCarpeta, por ejemplo:

C: \ Documents and Settings \ Usuario predeterminado \ Configuración local \

Por lo tanto, me gustaría confirmar su suposición. Lo verifiqué en un servicio que escribí que se ejecuta como cuenta del sistema local.


3
2018-05-18 09:35



+1: Al menos para un programa que uso, esto funcionó, mientras que C:\Windows\system32\config\systemprofile\... opciones no en Windows Server 2003 SP2. - Kev


He utilizado un servicio que se ejecuta como la cuenta 'Sistema local' y los datos del usuario se almacenan en:

c:\Documents and Settings\LocalService

Esta es una carpeta oculta y me tomó un tiempo encontrarla. Espero que esto ayude.


2
2018-05-18 11:08





En XP hay un "Perfil del sistema" ubicado en C: \ WINDOWS \ system32 \ config \ systemprofile

Pensé que era allí donde se encontraba el sistema local. Las cuentas de Servicio de red y Servicio local tienen perfiles ocultos en la carpeta Documentos y Configuración.

La carpeta de usuario predeterminado se usa normalmente como la carpeta base desde la que se crean las nuevas cuentas de usuario. Entonces, si un nuevo usuario iniciara sesión en un sistema por primera vez. Sus configuraciones se copiarían del perfil de usuario predeterminado inicialmente.


1
2018-05-18 13:51





De un proceso real ejecutándose como SISTEMA (S-1-5-18).

  • GetUserName: SYSTEM
  • GetTempPath  C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc\
  • 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: (ninguna)

1
2017-08-17 18:09