Pesquisadores de segurança da Secure Annex notaram um aumento na popularidade de um novo método de monetização de extensões de navegador, que forma uma rede distribuída a partir dos usuários das extensões, utilizada para scraping (indexação de conteúdo de sites). Os sistemas dos usuários atuam como webbots e proxies para baixar conteúdo de sites — a extensão do navegador instalada recebe instruções de um servidor externo sobre como indexar sites, e, em seguida, inicia o download do conteúdo solicitado em um iframe oculto, transmitindo os dados obtidos para um serviço externo. Nos diretórios do Chrome, Firefox e Edge, essa forma de monetização foi identificada em 245 extensões, totalizando 909 mil instalações.
O funcionamento é organizado pela inclusão no código das extensões de navegador de uma biblioteca JavaScript aberta, mellowtel.js, fornecida sob a licença LGPLv3. A biblioteca é desenvolvida pelo projeto Mellowtel, que promove uma nova plataforma de monetização que, além das extensões de navegador, pode ser aplicada em programas baseados em frameworks como Flutter e Electron. A ideia principal da plataforma é que desenvolvedores de extensões de navegador e aplicativos possam ganhar dinheiro não por meio da exibição de anúncios ou métodos duvidosos, como a venda de dados que comprometam a privacidade dos usuários, mas executando tarefas de indexação de conteúdo web para treinar sistemas de IA.
A demanda das empresas de IA por dados para treinar modelos levou ao surgimento de inúmeros bots que indexam sites sem limitar razoavelmente a intensidade das requisições e ignorando as regras de indexação do robots.txt. Esses bots criam uma enorme carga parasitária nos servidores, prejudicando o funcionamento normal dos sistemas e consumindo o tempo dos administradores. Recentemente, eles começaram a ser bloqueados ativamente (por exemplo, a rede de entrega de conteúdo Cloudflare implementou uma opção para bloquear esses bots por padrão).
As empresas de IA estão dispostas a pagar pela indexação e a plataforma Mellowtel ofereceu uma forma de satisfazer essa necessidade, envolvendo usuários comuns no processo de coleta de dados de sites. A plataforma repassa 55% dos recursos arrecadados com a colaboração de empresas de IA para os proprietários de extensões. O projeto é totalmente legítimo e afirma que a participação na coleta de dados deve ser voluntária e ativada apenas após o consentimento explícito do usuário. Supõe-se que o usuário, como forma de agradecimento aos desenvolvedores da extensão, possa ativar o modo de coleta de dados e oferecer apoio financeiro indireto a eles.
O problema é que nem todos os desenvolvedores de extensões estão dispostos a trabalhar de maneira honesta e transparente. Algumas extensões tentam ativar secretamente a monetização do Mellowtel, contornando as regras do serviço, o que leva o usuário a se tornar um participante de uma rede distribuída para download de dados de sites sem seu consentimento explícito. Das 45 extensões do Chrome que utilizam o Mellowtel, 12 já foram bloqueadas pelo Google por atividade maliciosa. No catálogo da Microsoft, 8 das 129 extensões foram bloqueadas, e no catálogo da Mozilla, 2 das 71 extensões foram bloqueadas. As razões para a remoção não são detalhadas, mas não se pode descartar que a causa tenha sido o uso inadequado do Mellowtel.
O desenvolvedor do Mellowtel afirmou que, para resolver o problema com a possível ativação oculta da coleta de dados, o serviço está implementando a verificação obrigatória de todas as extensões que utilizam o Mellowtel, para garantir que a coleta de dados esteja desativada por padrão (sendo ativada apenas após o consentimento explícito do usuário) e que haja um botão visível para desativá-la. Pedidos de tarefas de extensões que não passaram pela verificação serão colocados em quarentena e ignorados.
Durante o funcionamento das extensões que utilizam a biblioteca Mellowtel, uma conexão websocket é estabelecida com um servidor externo localizado em nuvem AWS, através da qual são transmitidas informações sobre a disponibilidade do usuário, país, largura de banda da conexão e ativação do suporte a scraping pelo usuário. Periodicamente, solicitações heartbeat são enviadas através da conexão para verificar a disponibilidade do cliente. Quando há tarefas para carregar conteúdo, um iframe oculto é inserido nas páginas visitadas pelo usuário, de onde o scraping é realizado.
Para carregar páginas externas a partir do iframe inserido ao visitar outros sites, a biblioteca contorna temporariamente a proteção contra o carregamento de conteúdo de terceiros fornecida pelo navegador, removendo os cabeçalhos HTTP Content-Security-Policy e X-Frame-Options e restaurando-os após o carregamento da página desejada. A remoção é feita através da modificação das solicitações de rede utilizando a API declarativeNetRequest (para acessar essa API, as extensões solicitam uma permissão separada). A suspensão temporária dos cabeçalhos Content-Security-Policy e X-Frame-Options afeta negativamente a segurança, pois remove a proteção padrão contra ataques de script entre sites (XSS) por um tempo.
A plataforma Mellowtel está afiliada à empresa Olostep, que oferece uma API de scraping capaz de contornar a proteção contra bots e executar até 100 mil solicitações por minuto. Essa atividade do serviço, aplicada em um único site, pode ser comparada à realização de um ataque DoS distribuído. O serviço também pode potencialmente usar os usuários como proxies para extrair conteúdo de sites privados acessíveis apenas em subredes que o usuário consegue acessar através de VPN.
Fonte: opennet.ru
