- O site do LinkedIn detecta a presença de 2.953 extensões do Chrome sempre que uma página é carregada
- O repositório documenta todos os IDs e nomes das extensões, além dos links da Chrome Web Store que o LinkedIn verifica
- De todas as extensões, cerca de 78% foram confirmadas na Chrome Web Store e cerca de 22% via Extpose
- O script fornecido (
fetch_extension_names.js) coleta automaticamente os nomes das extensões e, para extensões removidas, faz uma consulta alternativa no Extpose
- Esses dados mostram a escala em que sites identificam extensões instaladas no navegador dos usuários
Fingerprinting de extensões do Chrome no LinkedIn
- O LinkedIn verifica secretamente 2.953 extensões do Chrome a cada carregamento de página
- Esse processo é realizado como uma forma de fingerprinting para identificar quais extensões estão instaladas no navegador do usuário
- O repositório inclui a lista completa de extensões verificadas pelo LinkedIn e as ferramentas relacionadas
- O arquivo
chrome_extensions_with_names_all.csv organiza o ID da extensão, o nome e o link da Chrome Web Store ou do Extpose
Estrutura dos dados
- O arquivo de dados inclui três colunas: Extension ID, Name e URL
- O Extension ID é um identificador de 32 caracteres, e a URL aponta para a Chrome Web Store ou para o Extpose
- A lista completa pode ser consultada no arquivo
chrome_extensions_with_names_all.csv
Scripts
- fetch_extension_names.js busca os nomes das extensões na Chrome Web Store e, se a extensão tiver sido removida ou estiver inacessível, faz uma consulta alternativa via Extpose
- Exemplos de comando:
node fetch_extension_names.js, node fetch_extension_names.js --offset 0 --limit 500
- test_fetch.js processa as 3 primeiras extensões e pode ser testado em modo verbose
Estatísticas
- A lista de fingerprinting do LinkedIn inclui um total de 2.953 extensões
- Destas, cerca de 78% foram confirmadas na Chrome Web Store e cerca de 22% via Extpose
Arquivos-fonte
chrome_extension_ids.txt : lista bruta de IDs de extensões extraída do fingerprint.js do LinkedIn
fingerprint.js : script de detecção de extensões (versão reduzida) incluído na página do LinkedIn
fetch_extension_names.js : script auxiliar que coleta automaticamente os nomes das extensões
Resumo
- O LinkedIn está verificando informações sobre extensões de navegador em grande escala, e
este repositório divulga de forma transparente a lista completa e o método de coleta
1 comentários
Comentários do Hacker News
O Firefox parece ser imune a este problema
O Chrome expõe os recursos web acessíveis das extensões no formato
chrome-extension://[PACKAGE ID]/[PATH],enquanto o Firefox usa
moz-extension://<extension-UUID>/myfile.png.Nesse caso, o
<extension-UUID>é gerado aleatoriamente para cada navegador, impedindo que sites façam fingerprinting do navegador por meio das extensões instaladasDocumentação relacionada: documentação do Chrome, documentação do Firefox
Não seria uma mudança de “este navegador tem as extensões X, Y e Z” para “este é o navegador do Jim Bob”?
Olhando a lista de extensões, a maioria está relacionada a scraping de dados do LinkedIn ou automação
Mesmo quando eu trabalhava no LinkedIn, esse tipo de abuso era pesado, e criamos sistemas internos de detecção e prevenção bastante sofisticados, mas era uma luta sem fim
Isso pode até ser uma violação dos TOS da Chrome Web Store
O Chrome agora parece o novo IE6
O Google se transformou na próxima Microsoft e está indo cada vez mais numa direção favorável à publicidade.
A sensação é que contribuiu mais para enfraquecer bloqueadores de anúncios e permitir malware do que para melhorar a segurança
A velocidade de correção e os testes de segurança também não são ruins
Se você abrir o LinkedIn e apertar F12, a contagem de erros continua aumentando
O screenshot pode ser visto aqui
Recentemente organizei em um blog as técnicas de detecção de extensões do LinkedIn e outros métodos com menos efeitos colaterais
Post no blog da Castle
navigator.webdriverseja sempre false, o controle remoto continua possível.É difícil detectar isso, mas ainda dá para perceber por padrões de velocidade de entrada
Escrevi um artigo sobre isso alguns meses atrás.
Expliquei por que isso é possível e até como prevenir
Link do artigo
O LinkedIn tem usado muitos dark patterns estranhos ultimamente
Queria saber se alguém entende o motivo desse comportamento
Está usando diversas estratégias defensivas, desde crawlers da web até trabalho manual com pessoas contratadas
Esse método já era conhecido desde 2019
Post no blog da Nymeria
A lista de extensões que o LinkedIn escaneia é clara, mas o mais interessante são justamente as extensões que ele não escaneia
Por exemplo, “Contact Out” parece escaneável, mas o LinkedIn dá a impressão de simplesmente ignorá-la.
Dá até para suspeitar de algum acordo por trás
Link da extensão Contact Out
O texto diz: “este repositório documenta todas as extensões que o LinkedIn inspeciona e fornece ferramentas para identificá-las”,
então fiquei me perguntando como confirmaram que o LinkedIn realmente verifica esses IDs.
E também queria saber se isso afeta usuários que não usam Chrome
vangloriando-se de que a abordagem deles é “mais silenciosa, menos perceptível e mais fácil de executar em escala”
Post no blog da Castle