Partição de cache | Um navegador da web é composto por várias partes e cada parte funciona em conjunto para oferecer a experiência de usuário que procuramos. Um banco de dados de navegadores é uma dessas partes e é responsável por armazenar dados localmente em uma máquina para oferecer uma experiência de navegação personalizada e mais rápida.
Esse banco de dados é responsável por armazenar cookies e outros identificadores, como as credenciais de login de que os sites precisam para funcionar corretamente. Possui também uma memória cache responsável por armazenar ativos de sites que carregam sites com mais rapidez, melhorando a experiência do usuário.
Embora o armazenamento em cache forneça uma experiência de usuário mais rápida , ele apresenta ameaças à segurança que foram tratadas pelo particionamento de cache, mas o particionamento de cache está tirando sua privacidade? Neste artigo de tecnologia do SindiCont, falaremos sobre tecnologias de particionamento de cache e as ameaças à privacidade que representam.
O que é partição de cache?
Cada site que você visita é composto por várias imagens e fontes. Essas imagens e fontes precisam ser carregadas de servidores diferentes e as solicitações de rede são necessárias para acessar esses dados.
Cada solicitação de rede feita por seu navegador aumenta o tempo de carregamento do site. Para diminuir essa sobrecarga, os desenvolvedores criaram o conceito de cache, que armazena ativos na máquina local para reduzir o tempo de carregamento da página.
Um site diferente pode acessar esses ativos sem fazer uma solicitação de rede aos seus servidores, melhorando a experiência de navegação.
Se você visitar várias páginas em um site, o navegador armazenará em cache o logotipo da empresa ou outros ativos necessários em cada página do site. Isso reduz o tempo de renderização do site, pois o navegador não precisa solicitar esses recursos novamente, pois estão disponíveis no próprio sistema.
O cache também é usado para armazenar bibliotecas de fontes e outras bibliotecas de estrutura como jquery de redes de entrega de conteúdo necessárias para renderizar páginas corretamente. O armazenamento em cache dessas bibliotecas ajuda os sites a carregarem mais rápido, pois a maioria dos sites usa bibliotecas semelhantes e, se a biblioteca estiver no sistema, o navegador não precisará solicitar os recursos novamente.
Vulnerabilidades de Segurança da Partição de Cache
Embora o armazenamento em cache tenha muitas vantagens, ele causa várias vulnerabilidades de segurança que podem ser usadas para rastreamento entre sites e ataques de pesquisa. Uma breve visão geral dessas vulnerabilidades é fornecida abaixo:
- Rastreamento do histórico de navegação do usuário: qualquer adversário pode rastrear o histórico de navegação de um usuário observando os dados armazenados no cache do navegador. Observando os itens de cache, o adversário pode adivinhar os hábitos de navegação do usuário.
- Rastreamento entre sites: o cache pode ser usado para armazenar identificadores semelhantes a cookies que podem ser usados por empresas de publicidade terceirizadas para rastreamento entre sites.
- Ataques de canal lateral: se os dados forem armazenados em cache em seu navegador, as solicitações serão processadas mais rapidamente e um invasor pode usar a variação no tempo de resposta para expor informações pessoais.
Particionamento de cache explicado
Como o nome sugere, o particionamento de cache divide o cache do navegador em várias seções para que apenas um determinado site da Web possa acessar os recursos armazenados em cache. Isso evita que outros sites acessem os dados armazenados na memória cache, protegendo os dados do usuário.
Para realizar esta tarefa, o Chrome usa o isolamento de chave de rede, que cria uma chave única para os recursos de cache do navegador. Essa técnica de isolamento usa dados de site de nível superior e informações atuais de iframe para criar um identificador exclusivo que evita que outros sites acessem as informações do cache.
Embora o particionamento de cache ofereça muita segurança em comparação com a abordagem de cache monolítica, ele possui algumas falhas.
- Renderização mais lenta de páginas da web: como diferentes páginas da web não podem usar as bibliotecas armazenadas no cache, várias solicitações devem ser feitas para obtê-las. Isso aumenta o tempo que um site leva para carregar se as bibliotecas não estiverem armazenadas no servidor do site e dependerem de uma rede de distribuição de conteúdo. As fontes do Google também tiveram um impacto negativo no desempenho devido ao particionamento do cache, e é melhor hospedar suas fontes em vez de obtê-las de uma rede de distribuição de conteúdo.
- Questões de privacidade: como diferentes sites não podem usar as bibliotecas armazenadas localmente em seu sistema, sempre que você visita um site que usa uma biblioteca hospedada, o navegador envia uma solicitação de rede aos servidores CDN para obter os recursos. Isso fornece suas informações de IP e outros dados confidenciais aos servidores CDN sempre que você solicitar uma biblioteca.
Para se proteger de deméritos de particionamento de cache, você pode usar extensões que criam uma emulação CDN local em seu sistema, servindo as bibliotecas localmente ou você também pode usar uma alternativa para o Chrome. Agora que você sabe mais sobre partição de cache, deixe seu comentário!