O que posso fazer quando um núcleo inteiro da minha CPU acabar quando eu visitar um site específico?

3

Eu sou um fã de markdown, e há uma ferramenta muito útil chamada Typora (É grátis, mas não código aberto).

Quando fui ao seu site oficial para baixá-lo, não havia animação nem serviço complicado. No entanto, meus ventiladores de resfriamento no meu computador funcionaram em velocidade máxima quando eu visitei este site. E quando eu abro o gerenciador de tarefas, vejo um núcleo inteiro sendo comido. O que este site faz? Existe um minerador de bitcoin em JavaScript incluído no código-fonte?

Além disso, o próprio Typora tem o mesmo tipo de problemas?

Existem ferramentas úteis para analisar o comportamento de um determinado site ou software?

    
por Sajoi8 02.03.2018 / 04:01

3 respostas

7

Eu tentei acessar este site na minha VM encontrou o mesmo problema. O site do Typora está executando o script abaixo:

<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-54f423356e25706b" async="async"></script>

O Typora também está usando os scripts abaixo, sem armazenamento em cache, para que possa aproveitar os recursos mais recentes:

https://m.addthisedge.com/live/boost/ra-54f423356e25706b/_ate.track.config_resp
https://s7.addthis.com/js/300/addthis_widget.js

Eu bloqueei addthis.com e addthisedge.com usando o arquivo hosts em C:\Windows\System32\drivers\etc . É o arquivo usado para mapear o nome do domínio para o IP. Eu apontei esses domínios para o meu IP aleatório local. Depois disso, o site não consegue localizar scripts e não conseguiu executar.

O que é addthis.com? De acordo com o The Guardian , ele é um rastreador de compartilhamento social . Descobri que tentou ler dados de outros sites que eu estava usando naquele momento.

Após bloquear esses sites, o uso da CPU é normal.

    
por 02.03.2018 / 10:43
3

A maioria dos navegadores vem com uma ferramenta de desenvolvimento embutida chamada "Profiler". Essa ferramenta pode ser usada para identificar qual funcionalidade de javascript de um site consome quanto tempo de processamento. Ferramentas de desenvolvimento são geralmente acessadas com F12.

O uso desse site confirma a resposta novamente . A maior parte do tempo de processamento é usada pelo script https://s7.addthis.com/js/300/addthis_widget.js (pela função i._handleScroll , para ser específico). O script é minificado, então eu realmente não sinto vontade de fazer mais pesquisas sobre o que ele está realmente fazendo. Ou esse script é simplesmente horrível, ou o desenvolvedor do site cometeu um erro ao integrar esse script em seu site. De qualquer forma, isso não é para você consertar. Você pode bloquear esse script usando noscript ou colocando na lista negra todo o domínio em hosts, mas é possível que o site não funcione corretamente se você fizer isso.

A propósito: Websites usando o poder de processamento de seus visitantes para minerar Bitcoins ou outras criptomoedas são realmente uma coisa. Eu vi esses sites eu mesmo. Mas eles geralmente não usam a CPU. Eles usarão a GPU do visitante por meio da API WebGL . Isso significa que seus fãs de GPU começarão a girar, mas o uso da CPU no gerenciador de tarefas permanecerá moderado. Se você quiser verificar a carga atual da sua GPU, verifique o site do fornecedor. Eles geralmente oferecem programas complementares aos seus motoristas que mostram essas informações.

    
por 02.03.2018 / 15:11
1

Depende do seu navegador. No Firefox, você pode instalar o NoScript e whitelist JS para esse site seletivamente, talvez seja um recurso JS específico que não é estritamente necessário para visualizar o próprio Typora.

O Ghostery também pode fazer isso no Chrome, embora eu tenha muito menos experiência com o que ele faz, é muito mais automatizado que o Noscript.

Atenção: Eu gosto do NoScript, mas ele pode ficar um pouco paranóico sobre as coisas e você precisa fazer muito handholding na whitelist. É melhor ter um navegador diferente sem ele disponível também.

Atualização: sim, é um grande sucesso. O Firefox mostra um FirefoxCPWebContent a 170% no meu macs Activity Monitor. E isso é com todo o JS do site desabilitado. Parece que eles abusaram do código de algo feroz - há muitas identificações abertas para fontes para esse subprocesso.

Linha de fundo: mesmo o NoScript não pode consertar isso.

    
por 02.03.2018 / 05:23