As extensões do Google Chrome para um usuário têm acesso a outros usuários?

6

Estou tentando isolar todas as extensões do Google Chrome / Chromium instaladas da minha atividade de navegação na Web mais privada. Meu pensamento era ter dois "Usuários" do Google Chrome, com mais navegação privada em uma e menos navegação privada com extensões na outra. Eu quero saber se isso é "razoavelmente" (* veja abaixo) seguro.

Suponha que eu tenha a seguinte configuração:

  • Configurei o Chrome / Chromium para ter dois "Usuários" (por meio da página de configurações do Chrome ). Chame-os de UserAlice e UserBob .
  • UserAlice tem extensões no instaladas.
  • UserBob instala algumas extensões instaladas. Quando instalados, alguns deles têm permissões concedidas a eles.

Dado este cenário, a questão principal é:

  • As extensões para UserBob têm qualquer possibilidade de ter acesso a até mesmo um pouquinho da atividade e do conteúdo de UserAlice ?
    • Se "sim", quais permissões permitem esse acesso entre usuários?

* Por "razoável", quero proteger-me do seguinte: Suponha que UserBob tenha uma extensão maliciosa instalada que de alguma forma possa ler nomes de usuário e senhas de sites visitados, como e-mail ou um banco. UserAlice navega para sites de e-mail e bancos. "Razoavelmente seguro" significa que o nome de usuário e as senhas do UserAlice , e-mail, serviços bancários, etc. não podem ser acessados por nenhuma das extensões maliciosas instaladas pelo UserBob .     

por user29020 01.08.2014 / 22:43

2 respostas

1

Desde que esses usuários sejam usuários totalmente separados no Windows, em vez de serem apenas perfis separados no Google Chrome, e desde que nenhum dos usuários possua direitos de administrador, suas extensões e dados devem ser completamente separados e um usuário não poderá para acessar os dados do outro usuário.

O Chrome é instalado no diretório Program Files . Esse diretório não é mundialmente gravável e os usuários devem armazenar seus dados pessoais em seu próprio diretório C:\Users\myProfile . Quando o Chrome for executado com o Alice logado, ele criará um perfil em algum lugar abaixo de C:\Users\Alice\appdata e, quando o Bob executar o Google Chrome, um novo perfil será criado em C:\Users\Bob\appdata .

Esses perfis do Google Chrome armazenam extensões para esse usuário, seus favoritos e caches. É o próprio Windows e as permissões do sistema de arquivos que determinam se um usuário pode acessar os dados de outro usuário. Por padrão, um usuário não administrador não poderá acessar os dados de nenhum outro usuário.

Se qualquer uma dessas extensões exigir acesso de administrador para instalação, é totalmente possível que elas tenham alterado as permissões do sistema de arquivos ou instalado um serviço de ajuda administrativa ou mesmo copiado o perfil de usuário de outro usuário. Observe que, após essa instalação inicial, a extensão perderia a capacidade de alterar as permissões ou ver o outro perfil de usuário, exceto no caso em que instalou um serviço auxiliar de administrador.

Fora de Alice explicitamente dando acesso a Bob, ou Bob conseguindo que o administrador permita a instalação de um suplemento que requer instalação fora do perfil de usuário do Chrome, Bob não deve poder acessar os dados de Alice.

Se Bob ou Alice forem administradores, eles terão acesso quase livre aos dados dos outros usuários.

É claro que há cenários alternativos em que Bob compromete a máquina e consegue instalar um rootkit usando vulnerabilidades conhecidas do sistema, mas isso é uma história para outro dia ...

Senti falta da parte da sua pergunta em que você mencionou que esses são perfis no Chrome em vez do Windows e eu teria que dizer que é totalmente possível que extensões em um perfil do Google Chrome acessem dados no outro perfil, pois não há A proteção do sistema de arquivos está em vigor e o Google Chrome não aplicará nenhuma proteção para impedir o acesso a arquivos entre perfis, pois esse é o trabalho de usuários separados dentro do sistema operacional.

Como exemplo eu usei o Firefox anteriormente e o desinstalei, eu pude lançar uma cópia portátil do Firefox na qual eu instalei um navegador sqlite (o FF armazena dados em bancos de dados sqlite) e navega até meu perfil antigo e vê meu história, o mesmo quase certamente seria possível no Chrome.

Se você realmente deseja vários usuários, deve usar os recursos do sistema operacional em vez dos recursos do programa para garantir a segurança. Se Bob e Alice compartilharem o mesmo perfil de usuário do Windows, basta procurar os dados do outro usuário fora do Google Chrome e não precisar das extensões.

    
por 03.08.2014 / 10:22
0

Resposta curta : contanto que você instale uma extensão do Chrome na Chrome Web Store e não instale explicitamente um binário autônomo separado, a extensão será, por padrão, interceptada no perfil do navegador e não pode acessar nem modificar outros usuários do Chrome. Dizer que "não há proteção contra sistemas de arquivos no local" é impreciso, já que o Chrome nunca oferece suporte a extensões do tipo XUL.

Vou abordar as duas maneiras como a outra resposta menciona como rotas que uma extensão pode aproveitar para escapar do confinamento de um perfil de navegador e acessar outras partes do sistema de arquivos, além de um extra. A primeira é através da permissão nativeMessaging WebExtension, a segunda através do acionamento de um diálogo de arquivo, e a terceira é através da API isAllowedFileSchemeAccess . Nenhuma é automática (em segundo plano ou não) e todas exigem que o usuário concorde explicitamente com tal acesso.

1) Um WebExtension usando a permissão nativeMessaging não pode obter o aplicativo nativo privilegiado sozinho. Até que o usuário decida explicitamente instalar o aplicativo nativo, o WebExtension fica preso dentro do perfil do navegador em que ele foi instalado.

Da outra resposta, "[i] f any ... extensio [n] exige [s] acesso de administrador para instalar", então o software inclui mais do que apenas uma extensão pura do Chrome, por exemplo, a extensão é usada como autônomo O cliente nativeMessaging foi instalado fora do Chrome e, ao instalar o cliente externo (fora do Chrome), pode-se também ter instalado um binário de keylogger autônomo para todo o sistema que afeta muito mais do que apenas o navegador. Fim de jogo, mas culpa do usuário, já que ele / ela substituiu a segurança fornecida pelo navegador.

2) Da outra resposta: "Eu era ... capaz de lançar uma cópia portátil do Firefox em que eu instalei um navegador sqlite ... e navegue para o meu perfil antigo e ver o meu histórico." As caixas de diálogo de arquivo exigem interação explícita do usuário, portanto, isso não é um bug de segurança. Se o usuário carregar explicitamente os arquivos no perfil do navegador para que a extensão manipule, o usuário expressou sua concordância em ter seus dados compartilhados com a extensão. Caso contrário, a extensão não pode fazer nada além de esperar que o usuário selecione um arquivo na caixa de diálogo Abrir Arquivo, que o usuário (lembrando que o perfil é destinado a interceptar extensões possivelmente não confiáveis) pode simplesmente fechar.

3) A API isAllowedFileSchemeAccess no Chrome permite acesso somente leitura ao sistema de arquivos por meio do protocolo file: //. No entanto, "um usuário deve permitir explicitamente esse comportamento para uma determinada extensão por meio do painel de preferências do Chrome em chrome: // extensions" e, a partir do início de 2017, somente 55 extensões no CWS solicitarão isso. (Fonte: Mozilla Wiki ) Não é apenas a probabilidade de encontrar uma extensão abusando desse privilégio para espionar o sistema de arquivos altamente improvável, mas o privilégio também exige que o usuário o conceda manualmente a uma extensão do navegador.

Usar perfis de navegador separados para isolar extensões potencialmente perigosas é mais do que suficiente, já que contas de usuário separadas no nível do sistema operacional são excessivas, a menos que se esteja defendendo contra explorações de navegador de dia zero que estragam completamente o modelo de permissão da WebExtension API do Google Chrome. As proteções no nível da VM estão em ordem. Se estivermos jogando com um software que aproveita as explorações, as contas de usuário no nível do sistema operacional oferecem proteção insuficiente, pois agora estamos brincando com malware.

Os aplicativos do Google Chrome são um tipo de peixe totalmente diferente, pois desfrutam de mais permissões do que as extensões padrão do Google Chrome, mas são uma tecnologia obsoleta e, mais importante, fora do escopo da pergunta do OP, pois perguntam sobre as extensões do Chrome. Assim, os aplicativos do Google Chrome não são abordados nesta resposta.

Concluindo, uma extensão do Google Chrome não pode passar por perfis de navegador, a menos que 1) o usuário tenha instalado manualmente um executável autônomo externo ao Google Chrome. Nesse caso, todas as apostas serão desativadas 2) o usuário selecionará um arquivo em um diálogo de abertura de arquivo gerado por uma extensão, em cujo caso o usuário concedeu explicitamente a permissão de extensão para o acesso arbitrário a arquivos. 3) o usuário marca manualmente uma caixa em chrome: // extensões que as próprias extensões não podem modificar.

    
por 20.05.2018 / 04:37