Posso desativar a Verificação de conteúdo de extensão do Chrome?


15

Há pouco tempo, as extensões do Google Chrome são 'conteúdo verificado', o que significa que outros aplicativos não podem 'hackear' elas. É uma coisa boa, mas incrivelmente irritante, porque eu os corro o tempo todo, para ajustar e melhorar.

Quase imediatamente após salvar um arquivo de extensão, a extensão é desativada e uma mensagem é exibida na página de extensões locais:

Esta extensão pode ter sido corrompida

Existe uma maneira de desativar esse recurso de 'segurança' e continuar invadindo? Eu gostaria de ser o chefe do meu navegador, e não o contrário.

Há uma flag de cromo ( extension-content-verification), mas como a descrição diz:

Isso pode ser usado para ativar esse recurso, caso contrário não teria sido ativado, mas não pode ser usado para desativá-lo (porque essa configuração pode ser alterada por malware).


O Google não permite que você o desative, portanto, parece que sua única opção é usar a edição canary do Google Chrome, destinada a desenvolvedores como você.
Tomer

Não quero desenvolver no Chrome, mas algumas extensões. Eu não uso Canary para o dia de hoje Chroming. Estranho, não é desativável. É novo. De alguma forma, não foi um problema nos últimos 4 anos?
Rudie

É um novo recurso que deve impedir o software malicioso de adicionar sua própria extensão ao Chrome sem o conhecimento do usuário.
Tomer

O que você pode tentar é bloquear certos URLs que o chrome usa para obter os problemas das extensões. (usando um proxy HTTPS)
Tomer

A adição chrome.google.comao meu hostsnão faz isso = (eles provavelmente têm seu próprio sistema DNS ou algo assim. Existe um sinalizador, mas "[..] não pode ser usado para desativá-lo (porque essa configuração pode ser adulterada por malware)" . Droga.
Rudie

Respostas:


10

Há uma quarta maneira de gerenciar esse problema e evitar completamente o sistema de detecção. Como você menciona que deseja hackear suas extensões, isso implica que você tem algum conhecimento sobre o desenvolvimento de extensões. Também deve ser entendido que as extensões são, por sua própria natureza, código fonte. Isso significa que você tem toda a fonte para mexer. Dito isto ...

O quarto método é relativamente simples da seguinte maneira:

  1. Encontre a extensão na pasta Extensões em Dados do aplicativo do Chrome
  2. Copie a pasta inteira da extensão e cole-a em outro lugar
  3. Desativar a extensão original no Chrome
  4. Renomeie a pasta de extensão abcsoupname recém-copiada para MyNewExtension
  5. Mude para a pasta MyNewExtension
  6. Excluir _metadados
  7. Edite o manifest.json e remova as seções chave e update_url . Altere as seções name e short_name para evitar qualquer confusão com a outra extensão desativada.
  8. Valide e corrija seu manifest.json em jsonlint.com
  9. Vá para Configurações => Extensões
  10. Ative o Modo de desenvolvedor e, em seguida, 'Carregar extensão descompactada' na nova pasta que você acabou de criar.
  11. Voila. Uma nova versão desta extensão não está sob Controle de Conteúdo.

Agora você pode editar, manipular e gerenciar esta extensão conforme desejar. Você precisará clicar em Recarregar na área de extensões sempre que fizer uma alteração. Além disso, você não receberá atualizações do desenvolvedor original. Portanto, você precisará atualizar periodicamente e descobrir uma maneira de mesclar as alterações atualizadas em seu código de extensão separado. Você pode deixar intacta o update_url , mas provavelmente eliminará as alterações feitas na próxima atualização. É por isso que sugiro removê-lo. No entanto, sinta-se livre para experimentar.

Ao deixar a extensão original desativada, isso permitirá que você a ative e receba periodicamente atualizações para a versão do autor. Você pode comparar as diferenças entre sua versão personalizada e a versão do autor e mesclar as alterações necessárias. Eu recomendo essa abordagem de atualização para sua nova extensão personalizada. Se você optar por deixar o update_url ativo, provavelmente apagará suas alterações na próxima atualização (supondo que isso funcione corretamente em uma extensão modificada). Como algumas extensões não são atualizadas com muita frequência, isso pode fazer com que você se esforce para determinar o que mudou meses depois, quando a próxima atualização for lançada.

Você também precisará executar essas etapas em qualquer extensão em que deseja modificá-la. Efetivamente, você está criando uma extensão totalmente nova usando a base de código de uma extensão existente e colocando essa extensão no modo de desenvolvedor.

Observe que não use o TextEdit do Mac para editar arquivos json, pois ele substituirá "por" ou "e falhará na verificação de sintaxe json.


Isso foi mencionado antes. É uma solução decente, mas eu gostaria de receber atualizações. Em vez disso, aceitei falhas e me sinto grande em relação a isso. Obrigado pelas etapas =)
Rudie

11
A dificuldade é que você deseja editar a extensão e ter atualizações. Isso é mutuamente exclusivo. Se você editar uma extensão, após a atualização, você potencialmente perderá todas as alterações, lembrando o que foi alterado. Isso pode ser difícil se for meses depois. Desativar atualizações e mesclar manualmente as alterações é a única maneira viável de gerenciar isso.
Comorança 05/07

Uma atualização é apenas uma mesclagem na minha versão hackeada. Mesclagens podem ser inteligentes. Caso contrário, é um conflito de mesclagem que posso resolver. Em vez disso, escolhi a abordagem paranóica e não usei nenhuma extensão de contribuição, apenas copiei e cortei como você está dizendo. Resposta muito tarde, desculpe.
Rudie

Isso não funciona mais. Se sua extensão não estiver disponível na loja de aplicativos, ela será desativada e não poderá ser reativada sem removê-la e adicioná-la novamente.
Wolfish

Oi Wolfish, isso definitivamente não é verdade. Os desenvolvedores devem ser capazes de desenvolver extensões localmente em seus sistemas. É por isso que o Chrome oferece um modo de desenvolvedor. Você notará na etapa 10 que precisará ativar o Modo de desenvolvedor. Essa é a chave. Sem o modo dev ativado, você não pode carregar extensões externas. Os desenvolvedores não podem criar extensões sendo forçados a enviá-las à loja para testes, o que também expõe o código inacabado ao público (ainda mais arriscado). No entanto, o Chrome é muito diligente ao solicitar que você desative o modo dev em cada reinicialização do Chrome.
Commorancy

6

Como o Google não permite que você desative o recurso de verificação de conteúdo de extensão, suas possíveis soluções alternativas são basicamente:

  1. Use a edição canary do Chrome, que permite editar extensões e adicionar suas próprias extensões sem nenhum aviso
  2. Copie o diretório de extensão para outro lugar, exclua a _metadatapasta e carregue-a no modo de desenvolvedor. A desvantagem desta solução alternativa é que sempre que você abrir o chrome, verá uma mensagem solicitando que você desative a extensão. (porque está no modo de desenvolvedor)
  3. Impedir que o Chrome obtenha os hashes da extensão, para que não seja possível verificar seu conteúdo. A desvantagem desta solução alternativa é que talvez você não consiga baixar \ atualizar outras extensões.

    Para fazer isso:

    1. Adicione a linha 127.0.0.1 clients2.googleusercontent.comao seu hostsarquivo (geralmente em C:\Windows\System32\drivers\etc)
    2. Limpe o cache DNS do chrome ou aguarde alguns minutos
    3. Feche o Chrome e faça algumas alterações na extensão
    4. Exclua a _metadatapasta do diretório da extensão (que armazena os hashes originais)
    5. Relançar o Chrome

Você também pode usar um servidor proxy HTTPS para bloquear apenas as solicitações relevantes, mas isso seria muito invasivo.


1. parece fazer algo =), mas agora não consigo baixar extensões e ainda está bloqueado. Tentativa 2. Mais amanhã.
Rudie

Ainda diz que está corrompido? tente excluir a _metadatapasta que armazena os hashes do Google.
Tomer

Isso funciona, mas agora não consigo fazer o download de outras extensões ... Por que não fazer o download apenas chrome.google.com, mas verificar um domínio diferente? Sempre tem que tornar isso difícil. Eu não acho que um proxy HTTPS seja possível. Eles provavelmente têm a abordagem do MITM coberta. (2) é provavelmente a melhor solução, eu já tenho alguns dev ext executando de qualquer maneira. No entanto, nenhuma atualização = (Obrigado!
Rudie

Ok, mas acho que eles não podem realmente fazer nada sobre o MITM se você pedir ao seu computador para confiar em sua própria autoridade de certificação. talvez tente mitmproxy ou algo assim.
Tomer
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.