Conceder acesso a uma chave de registro em HKLM \ System \ CurrentControlSet \ Control \ Class

3

Eu tenho alguns softwares comerciais que são protegidos por uma licença soft de terceiros. Esta semana, o licenciamento de terceiros falhou e eu rastreei até quando estava tentando acessar essa chave de registro:

HKLM\System\CurrentControlSet\Control\Class\{4D36E97D-E325-11CE-BFC1-08002BE10318}\Properties

Ao verificar manualmente essa chave, mesmo como administrador, não tenho permissão para visualizá-la. De algum tipo de googling acredito que eu possa ter acesso se eu corresse como uma conta de "Sistema" e vi referências a ferramentas que me permitiriam fazer isso. (Apenas executei o regedit usando a ferramenta PSExec da Sysinternals e vi que a chave Properties concede somente acesso a SYSTEM )

No entanto, posso acessar livremente todas as chaves que não são Properties em {4D36E97D-E325-11CE-BFC1-08002BE10318} EG Properties020100 , Class , Properties etc

Depois de um tempo atrás com o suporte técnico do meu fornecedor (e eles conversando com o fornecedor de licenciamento), a resposta foi que o software de licenciamento precisa de acesso à chave Properties e que preciso alterar o registro permissões para conceder acesso.

Minha confusão / preocupação é que, para cada chave que está sob a chave %code% , a chave %code% associada exibe o mesmo comportamento de permissões - ou seja, como administrador, não consigo acessá-la. Dado que o meu sistema Windows tem sido executado dessa forma por um longo tempo sem quaisquer problemas, eu não acho que a concessão de acesso por causa de um programa seja a coisa correta a ser feita.

Agora, as minhas perguntas:

  1. Quais sistemas / contas precisam realmente de acesso a este %code% chave?

  2. Quais problemas / problemas eu estaria me abrindo se eu concedesse abre o acesso slather a esta chave?

  3. Eu suspeito que o software de licenciamento possa ter sido inicialmente capaz para acessar essa chave específica quando ela estava sendo instalada por meio de permissões elevadas. Isso parece razoável?

  4. Alguém pode me indicar a documentação da MS sobre o assunto?

por Peter M 31.10.2014 / 17:16

1 resposta

2

O proprietário da subchave Properties é geralmente SYSTEM , mas às vezes Administradores. Seu conteúdo é usado para gerenciamento de dispositivos de hardware pelo kernel. As permissões corretas (ou seja, padrão) para a chave são apenas Controle total para SYSTEM , nada para mais ninguém.

Nada será quebrado se você conceder acesso de leitura aos administradores ou até mesmo aos usuários. Não é bom que um programa tenha que examinar esses dados, mas não há nada de sensível em nenhum deles. De fato, a grande maioria deles parece conter a mesma coisa. No entanto, conceder acesso de escrita a não administradores é uma péssima ideia . Modificar essas chaves pode quebrar o Plug and Play! Os administradores sempre podem fazer o que quiserem na máquina, mas os usuários normais não podem alterar nada que afete ninguém. (Observe como usuários normais não podem escrever em qualquer lugar dentro de HKEY_LOCAL_MACHINE .) Além disso, você deve ter o cuidado de preservar o proprietário original de cada chave e o Controle total SYSTEM ACE (entrada de controle de acesso) deve sempre ser preservada.

É possível que o instalador do programa executando com permissões elevadas tenha permissão para procurar ou escrever lá. Se alguma parte (um serviço, talvez) estivesse sendo executada como SYSTEM , ela seria permitida com base no ACE. O programa também poderia ter aproveitado a capacidade dos administradores de habilitar SeBackupPrivilege ou SeRestorePrivilege , o que permite ler qualquer coisa ou escrever qualquer coisa, respectivamente. ( Leia mais sobre privilégios. ) Alguns MSI Os instaladores realmente permitem esses privilégios poderosos.

A Microsoft publicou muito pouca documentação sobre essas chaves, mas você pode ler Configurações e ferramentas de driver de dispositivo e {GUID da classe} .

    
por 15.01.2016 / 21:54