Chrome corrige vulnerabilidade de 23 anos que permitia rastrear histórico do usuário
O problema, conhecido como “browser history sniffing”, permitia que sites maliciosos identificassem quais páginas um usuário havia visitado anteriormente, explorando uma brecha no CSS.
O método de ataque se baseava em uma característica visual básica dos navegadores, onde links visitados normalmente aparecem em roxo (ou outra cor definida via CSS com o seletor :visited), enquanto links não visitados mantêm a cor padrão, geralmente azul. Sites maliciosos utilizavam JavaScript para verificar a cor dos links por meio da função “window.getComputedStyle”, permitindo deduzir o histórico de navegação do usuário.
Para solucionar o problema, o Chrome implementou um novo mecanismo de “particionamento” do histórico de navegação. Em vez de armazenar todos os links visitados em uma lista global única, o navegador agora os organiza em compartimentos separados, baseados na URL específica do link, no domínio principal do site, e na origem do frame onde o link é exibido.
Essa mudança significa que um script malicioso só poderá verificar links visitados dentro do mesmo domínio onde está hospedado, impedindo que ele descubra a atividade do usuário em outros sites.
A equipe do Chrome havia classificado dois relatórios desse bug como “won't fix” (não será corrigido) em 2013 e 2018. A correção está disponível a partir da versão 136 do navegador.