A Google lançou a versão do navegador web Chrome 120. Ao mesmo tempo, está disponível uma versão estável do projeto de código aberto Chromium, que serve de base para o Chrome. O navegador Chrome difere do Chromium pelo uso dos logotipos do Google, pela presença de um sistema de envio de notificações em caso de falhas, módulos para reprodução de conteúdo de vídeo protegido contra cópia (DRM), um sistema de instalação automática de atualizações, a ativação constante da isolação Sandbox, o fornecimento de chaves para a API do Google e a transmissão de parâmetros RLZ na busca. Para aqueles que precisam de mais tempo para atualizar, é mantida uma ramificação Extended Stable, acompanhada por 8 semanas. O próximo lançamento do Chrome 121 está agendado para 23 de janeiro.
Principais mudanças no Chrome 120:
- Começou um experimento para desativar o suporte a cookies de terceiros definidos ao acessar sites diferentes de de domínio a página atual. Esses cookies são usados para rastrear os movimentos do usuário entre sites em códigos de redes de anúncios, widgets de redes sociais e sistemas de web analytics. Em janeiro de 2024, os cookies de terceiros serão desativados para 1% dos usuários do navegador. As mudanças estão sendo promovidas como parte da iniciativa Privacy Sandbox, que visa alcançar um compromisso entre a necessidade dos usuários de manter a privacidade e o desejo das redes de anúncios e sites de rastrear as preferências dos visitantes.
Em vez de cookies de rastreamento, propõe-se usar as seguintes APIs:
- FedCM (Gerenciamento de Credenciais Federadas), que permite criar serviços de identificação unificados que garantem a privacidade e funcionam sem cookies de terceiros.
- Tokens de Estado Privado, que permitem distinguir diferentes usuários sem o uso de identificadores intersites e transferir informações sobre a autenticidade do usuário entre diferentes contextos.
- Os Tópicos (crítica) permitem identificar categorias de interesses dos usuários, que podem ser utilizados para agrupar usuários com interesses semelhantes sem identificar usuários específicos através de Cookies de rastreamento. Os interesses são calculados com base na atividade do usuário no navegador e são armazenados no dispositivo do usuário. Através da API Tópicos, a rede de anúncios pode obter informações gerais sobre interesses individuais sem informações sobre a atividade concreta do usuário.
- Audiência Protegida, solução para retargeting e avaliação de sua própria audiência (trabalho com usuários que já visitaram o site anteriormente).
- Relatório de Atribuição, permite avaliar características de eficácia da publicidade, como cliques e conversões (compra no site após o clique).
- API de Acesso ao Armazenamento, pode ser usada para solicitar ao usuário permissões para acessar o armazenamento de Cookies, caso Cookies de terceiros sejam bloqueados por padrão.
- De acordo com os requisitos da lei DMA (Digital Markets Act) aprovada na União Europeia, alguns usuários verão um diálogo para escolher o mecanismo de busca padrão, cujas opções correspondem às configurações em chrome://settings/search. No Chrome 120, o diálogo será mostrado a 1% dos usuários, e até a publicação do Chrome 122, alcançará 100%.
- Começou o processo de descontinuação do codec de vídeo Theora. Na fase inicial, o Theora foi desativado para 1% dos usuários, mas até 16 de janeiro, ele será desativado para todos os usuários. Durante a transição, haverá uma configuração para reativar o codec em chrome://flags/#theora-video-codec. A razão para a descontinuação do Theora cita preocupações de que a implementação do Theora, a qual tem uma lógica complexa para a análise de dados binários e decodificação de streams, possa ter vulnerabilidades semelhantes a problemas críticos recentes no codificador VP8.
- O design do catálogo da Chrome Web Store foi reformulado para facilitar a busca e o gerenciamento de extensões. Novas categorias de extensões foram adicionadas (por exemplo, uma categoria para extensões baseadas em aprendizado de máquina e uma seção 'escolha do editor'). Foi adicionada a opção de retornar ao design anterior no menu '⋮'.

- A funcionalidade da interface "Verificação de Segurança" (Safety check) foi ampliada, mostrando um resumo sobre possíveis problemas de segurança, como o uso de senhas comprometidas, o estado de verificação de sites maliciosos (Safe Browsing), a existência de atualizações não instaladas e a detecção de complementos maliciosos. Na nova versão, foi introduzido um modo proativo que realiza periodicamente verificações relacionadas à segurança do navegador e informa o usuário em caso de problemas identificados. As configurações agora incluem parâmetros para gerenciar ações no modo proativo.

- Foi implementada uma barra de ferramentas adaptável, que muda dependendo do tamanho da janela.
- No gerenciador de senhas, agora é permitido compartilhar senhas individuais com membros do Google Family Group, configurado através da Conta do Google. Apenas uma senha pode ser compartilhada por vez, e a senha compartilhada não pode ser atualizada ou revogada pelo remetente.
- A interação com impressoras foi transferida para um processo de serviço separado, o que melhorou a estabilidade do navegador e a responsividade da interface de visualização da página antes da impressão.
- No TLS, foi incluída a implementação do mecanismo de encapsulamento de chaves (KEM, Key Encapsulation Mechanism), que utiliza o algoritmo híbrido X25519Kyber768, resistente a ataques de computadores quânticos. Para a criação de chaves de sessão, utilizadas para criptografar dados dentro de conexões TLS, agora pode ser usada uma combinação do mecanismo de troca de chaves X25519, baseado em curvas elípticas e atualmente aplicado no TLS, com o algoritmo Kyber-768, que utiliza métodos de criptografia baseados na solução de problemas da teoria de redes, cujo tempo de resolução não difere em computadores comuns e quânticos.
- No serviço de supressão automática de solicitações de confirmação de permissões (Permission Suggestions Service), foi garantido o registro da URL da página que solicita permissões (em servidores o Google receberá hashes das URLs solicitando permissões).
- Na versão para Android, o suporte à plataforma Android 7.0 "Nougat" foi descontinuado.
- Foi adicionado um framework com implementação da conceito de solicitações Close, permitindo que o usuário solicite o fechamento de diálogos modais e pop-ups pressionando a tecla Esc ou usando um gesto de tela ou o botão "Voltar" em smartphones. O suporte a solicitações Close foi adicionado para diálogos criados usando o elemento
- O elemento agora suporta o atributo "name", permitindo a criação de grupos através da definição de uma série de elementoscom um mesmo nome.
- O API Media Session adicionou o evento "enterpictureinpicture", permitindo que o site registre um manipulador que é chamado quando um conteúdo é aberto no modo "imagem em imagem".
- A sintaxe de blocos CSS aninhados foi simplificada — as regras CSS aninhadas agora podem começar com qualquer elemento, sem a necessidade de indicar o símbolo de ampersand ou usar a função is() antes da regra aninhada. dl { dt { /* estilo para dl dt */ } dd { /* estilo para dl dd */ } }
- Na propriedade CSS "background-clip" foi adicionado o suporte ao parâmetro "text" para exibir o fundo selecionado apenas na área delimitada pelos caracteres do texto. Por exemplo, especificar "background: linear-gradient(60deg, red, yellow, red, yellow, red); background-clip: text; color: rgba(0, 0, 0, 0.2)" resultará na exibição:

- No CSS, foi adicionado o media query "scripting", que pode ser usado para determinar a capacidade de execução de scripts, por exemplo, em JavaScript, na página atual.
- No CSS, foi adicionado o pseudo-classe ":dir()", permitindo selecionar elementos com base na direção do texto (por exemplo, ":dir(ltr)" abrangerá elementos cujo texto é exibido da esquerda para a direita).
- No CSS, foram adicionadas funções exponenciais pow(), sqrt(), hypot(), log() e exp().
- No CSS, foi adicionada a supporte para as propriedades mask, mask-image, mask-repeat, mask-position, mask-clip, mask-origin, mask-size, mask-composite e mask-mode para ocultar um elemento através da sobreposição de uma imagem em pontos específicos.
- No API FontFaceSet, foi adicionado o método check(), que permite verificar se o texto pode ser exibido com as fontes selecionadas sem usar fontes no FontFaceSet que ainda não foram carregadas.
- A API WebGPU adicionou a capacidade de usar o tipo de ponto flutuante de 16 bits f16 nos shaders.
- Na API Media Capabilities, o método decodingInfo() ganhou os campos hdrMetadataType, colorGamut e transferFunction para determinar o suporte a HDR.
- Na API MediaStreamTrack, foi adicionada a capacidade de obter informações sobre os contadores de quadros de vídeo recebidos e descartados.
- Foi adicionada a capacidade de transmitir um objeto ArrayBuffer para os construtores VideoFrame, AudioData, EncodedVideoChunk, EncodedAudioChunk e ImageDecoder para uso direto do array de bytes sem a necessidade de criar uma cópia.
- Em conformidade com a especificação alterada para aumentar a proteção contra ataques XSS e melhorar a portabilidade entre navegadores, o SVGUseElement deixou de suportar URLs ‘data:’, que anteriormente não eram suportadas no motor WebKit.
- Adicionada uma suporte experimental (teste de origem) para o cabeçalho HTTP ‘Priority’, que permite transmitir informações sobre a prioridade do processamento do pedido (RFC 9218) na fase de primeira solicitação ao recurso.
- Melhorias foram feitas nas ferramentas para desenvolvedores web. O depurador agora ignora por padrão scripts localizados nos diretórios ‘/node_modules/’ e ‘/bower_components/’ com módulos Node.js. No modo de depuração remota, um interruptor foi implementado para escolher entre mouse e tela sensível ao toque. A depuração de animações foi aprimorada. No painel Elements, um interruptor 'media' foi adicionado para depurar elementos
Além das inovações e correções de bugs, a nova versão eliminou 10 vulnerabilidades. Muitas das vulnerabilidades foram identificadas por testes automatizados usando ferramentas como AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Não foram detectados problemas críticos que permitissem contornar todos os níveis de proteção do navegador e executar código no sistema além do ambiente sandbox. No âmbito do programa de recompensas por descoberta de vulnerabilidades, a Google concedeu 13 prêmios totalizando 15 mil dólares (um prêmio de $10.000, um prêmio de $2.000 e três prêmios de $1.000) para esta versão.
Fonte: opennet.ru


