Onde posso encontrar os dados armazenados por um serviço do Windows executando como "Conta do sistema local"?

95

Estou usando um serviço que armazena dados no disco. O serviço está sendo executado como "conta do sistema local".

Onde estão os dados armazenados para esse usuário do sistema?

Estou pensando, C:\Documents and Settings\Default Usermas não tenho certeza disso.

Alguém pode confirmar isso?

paulgreg
fonte

Respostas:

114

Os dados que você está procurando não devem, por padrão, estar localizados em "C: \ Documents and Settings \ Default User". Esse é o local do perfil de usuário padrão, que é o modelo para novos perfis de usuário. Sua única função é ser copiada para uma nova pasta para uso como perfil de usuário quando um usuário fizer logon no computador pela primeira vez.

Se o serviço estiver seguindo as diretrizes da Microsoft, ele armazenará dados na pasta de dados do aplicativo (% APPDATA%) ou na pasta de dados do aplicativo local (% LOCALAPPDATA% no Windows Vista e posterior). Ele não deve usar as pastas Meus documentos ou Documentos, mas convém verificar lá também.

Em uma instalação típica do Windows XP ou Windows Server 2003, verifique os seguintes locais para obter dados de aplicativos para programas em execução como Sistema Local (NT AUTHORITY \ SYSTEM):

  • C: \ Windows \ system32 \ config \ systemprofile \ Dados de aplicativos \ Fornecedor \ Programa
  • C: \ Windows \ system32 \ config \ systemprofile \ Configurações locais \ Dados de aplicativos \ Fornecedor \ Programa
  • C: \ Windows \ system32 \ config \ systemprofile \ Meus documentos

Em uma instalação típica do Windows Vista e versões posteriores, verifique os seguintes locais para obter dados de aplicativos para programas em execução como Sistema Local (NT AUTHORITY \ SYSTEM):

  • 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

Obviamente, substitua o nome do fornecedor e o nome do programa por Fornecedor e Programa .

[Editar - para bricelam] Para processos de 32 bits em execução em janelas de 64 bits, seria no SysWOW64 .

  • C: \ Windows \ SysWOW64 \ config \ systemprofile \ AppData
Jay Michaud
fonte
18
Para processos de 32 bits em execução nas versões de 64 bits do Windows, verifique em 'C: \ Windows \ SysWOW64'.
Bricelam 09/03/2013
1
Veja também a resposta aqui: stackoverflow.com/questions/3637605/…
stolsvik
14

O destino está mudando com o tempo. No Windows 10:

  • %systemroot%\ServiceProfiles

Por exemplo:

  • C:\Windows\ServiceProfiles\LocalService
  • C:\Windows\ServiceProfiles\NetworkService
lu_ko
fonte
1
Nota: isso se aplica a LocalServicee NetworkService, mas não sobre o LocalSystemqual a pergunta está sendo feita. Essas são três contas separadas, veja aqui para obter mais detalhes
MM
6

Acesse Sysinternals e baixe procmon. Você precisará saber o nome do exe em que o serviço é executado. Em seguida, você pode usar o filtro em procmon para listar apenas as atividades geradas por esse aplicativo.

Agora você deve poder percorrer a lista e determinar qual arquivo esse aplicativo está usando (NOTA: Após alguns minutos de log, você pode usar o menu de arquivo para interromper o monitoramento)

O conjunto completo do Sysinternal pode ser baixado como um único arquivo zip e você pode encontrar outros utilitários no kit que podem ser úteis.

Wayne
fonte
2

Eu usei um serviço em execução como a conta 'Sistema local' e os dados do usuário são armazenados em:

c:\Documents and Settings\LocalService

Esta é uma pasta oculta e demorei um pouco para encontrá-la. Espero que isto ajude.

Swinders
fonte
2

De um processo real sendo executado como SYSTEM ( S-1-5-18).

  • GetUserName :SYSTEM
  • Usuário 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

Serviço local

  • GetUserName :LOCAL SERVICE
  • Usuário 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

Serviço de rede

  • GetUserName : "HYDROGEN $`
  • Usuário 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
fonte
Eu estava procurando o equivalente do sistema UserProfile, e CSIDL_PROFILE era ele. Obrigado!
carlin.scott 7/03
1

No XP, existe um "Perfil do sistema" localizado em C: \ WINDOWS \ system32 \ config \ systemprofile

Eu pensei que era onde o sistema local estava localizado. As contas Serviço de rede e Serviço local têm perfis ocultos na pasta Documentos e configurações.

A pasta Usuário Padrão é normalmente usada como a pasta base na qual novas contas de usuário são criadas. Portanto, se um novo usuário fizer logon em um sistema pela primeira vez. Suas configurações seriam copiadas do perfil de usuário padrão inicialmente.

Rob Haupt
fonte