Versão 94 do Chrome

O Google revelou o lançamento do navegador Chrome 94. Ao mesmo tempo, está disponível uma versão estável do projeto gratuito Chromium, que serve de base ao Chrome. O navegador Chrome se diferencia pelo uso dos logotipos do Google, pela presença de um sistema de envio de notificações em caso de travamento, módulos para reprodução de conteúdo de vídeo protegido (DRM), sistema de instalação automática de atualizações e transmissão de parâmetros RLZ durante a pesquisa. O próximo lançamento do Chrome 95 está agendado para 19 de outubro.

Começando com o lançamento do Chrome 94, o desenvolvimento passou para um novo ciclo de lançamento. Novos lançamentos significativos serão agora publicados a cada 4 semanas, em vez de a cada 6 semanas, permitindo uma entrega mais rápida de novos recursos aos usuários. Observa-se que a otimização do processo de preparação de releases e a melhoria do sistema de testes permitem que releases sejam gerados com maior frequência sem comprometer a qualidade. Para empresas e aqueles que precisam de mais tempo para atualizar, uma edição Extended Stable será lançada separadamente a cada 8 semanas, o que permitirá que você mude para novos lançamentos de recursos não uma vez a cada 4 semanas, mas uma vez a cada 8 semanas.

Principais mudanças no Chrome 94:

  • Adicionado o modo HTTPS-First, que lembra o modo HTTPS Only que apareceu anteriormente no Firefox. Se o modo estiver ativado nas configurações, ao tentar abrir um recurso sem criptografia via HTTP, o navegador tentará primeiro acessar o site via HTTPS, e se a tentativa não for bem sucedida, o usuário receberá um aviso sobre a falta de Suporte HTTPS e solicitação para abrir o site sem criptografia. No futuro, o Google está considerando ativar o HTTPS-First por padrão para todos os usuários, limitando o acesso a alguns recursos da plataforma web para páginas abertas por HTTP e adicionando avisos adicionais para informar os usuários sobre os riscos que surgem ao acessar sites sem criptografia. O modo é habilitado na seção “Privacidade e Segurança” > “Segurança” > configurações “Avançadas”.
    Versão 94 do Chrome
  • Para páginas abertas sem HTTPS, envio de solicitações (download de recursos) para URLs locais (por exemplo, “http://router.local” e localhost) e intervalos de endereços internos (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0) é proibido .8/1.2.3.4, etc.). Uma exceção é feita apenas para páginas baixadas de servidores com IPs internos. Por exemplo, uma página carregada do servidor 192.168.0.1 não poderá acessar um recurso localizado no IP 127.0.0.1 ou IP 192.168.1.1, mas carregada do servidor XNUMX poderá. A mudança introduz uma camada adicional de proteção contra a exploração de vulnerabilidades em manipuladores que aceitam solicitações em IPs locais e também protegerá contra ataques de religação de DNS.
  • Adicionada a função “Sharing Hub”, que permite compartilhar rapidamente um link para a página atual com outros usuários. É possível gerar um código QR a partir de uma URL, salvar uma página, enviar um link para outro dispositivo vinculado a uma conta de usuário e transferir um link para sites de terceiros como Facebook, WhatsUp, Twitter e VK. Este recurso ainda não foi disponibilizado para todos os usuários. Para forçar o botão “Compartilhar” no menu e na barra de endereço, você pode usar as configurações “chrome://flags/#sharing-hub-desktop-app-menu” e “chrome://flags/#sharing-hub- desktop-omnibox” .
    Versão 94 do Chrome
  • A interface de configurações do navegador foi reestruturada. Cada seção de configurações agora é exibida em uma página separada, em vez de em uma página comum.
    Versão 94 do Chrome
  • Foi implementado suporte para atualização dinâmica do log de certificados emitidos e revogados (Certificate Transparency), que agora será atualizado sem referência a atualizações do navegador.
  • Adicionada uma página de serviço "chrome://whats-new" com uma visão geral das alterações visíveis ao usuário na nova versão. A página aparece automaticamente imediatamente após a atualização ou pode ser acessada através do botão Novidades no menu Ajuda. A página atualmente menciona a pesquisa de guias, a capacidade de dividir perfis e um recurso de mudança de cor de fundo, que não são específicos do Chrome 94 e foram introduzidos em versões anteriores. A exibição da página ainda não está habilitada para todos os usuários: para controlar a ativação, você pode usar as configurações “chrome://flags#chrome-whats-new-ui” e “chrome://flags#chrome-whats-new-in” -menu principal- novo emblema".
    Versão 94 do Chrome
  • Chamar a API WebSQL a partir de conteúdo carregado de sites de terceiros (como um iframe) foi descontinuado. No Chrome 94, ao tentar acessar o WebSQL a partir de scripts de terceiros, um aviso é exibido, mas a partir do Chrome 97, tais chamadas serão bloqueadas. No futuro, planejamos eliminar completamente o suporte ao WebSQL, independentemente do contexto de uso. O mecanismo WebSQL é baseado em código SQLite e pode ser usado por invasores para explorar vulnerabilidades no SQLite.
  • Por razões de segurança e para evitar atividades maliciosas, o uso do protocolo legado MK (URL:MK), antes usado no Internet Explorer e que permitia que aplicativos da web extraíssem informações de arquivos compactados, começou a ser bloqueado.
  • O suporte para sincronização com versões mais antigas do Chrome (Chrome 48 e anteriores) foi descontinuado.
  • O cabeçalho HTTP Permissions-Policy, projetado para habilitar certos recursos e controlar o acesso à API, adicionou suporte para o sinalizador “display-capture”, que permite controlar o uso da API de captura de tela na página (por padrão, a capacidade de capturar o conteúdo da tela de iframes externos está bloqueada).
  • Várias novas APIs foram adicionadas ao modo Origin Trials (recursos experimentais que requerem ativação separada). O Origin Trial implica a capacidade de trabalhar com a API especificada a partir de aplicativos baixados de localhost ou 127.0.0.1, ou após o registro e recebimento de um token especial válido por tempo limitado para um site específico.
    • Adicionada a API WebGPU, que substitui a API WebGL e fornece ferramentas para executar operações de GPU, como renderização e computação. Conceitualmente, o WebGPU está próximo das APIs Vulkan, Metal e Direct3D 12. Conceitualmente, o WebGPU difere do WebGL da mesma forma que a API gráfica Vulkan difere do OpenGL, mas não é baseado em uma API gráfica específica, mas é universal. camada que usa as mesmas primitivas de baixo nível, que estão disponíveis em Vulkan, Metal e Direct3D 12.

      WebGPU fornece aplicativos JavaScript com controle de baixo nível sobre a organização, processamento e transmissão de comandos para a GPU, bem como a capacidade de gerenciar recursos associados, memória, buffers, objetos de textura e shaders gráficos compilados. Essa abordagem permite obter maior desempenho para aplicativos gráficos, reduzindo custos indiretos e aumentando a eficiência do trabalho com a GPU. A API também possibilita a criação de projetos 3D complexos para a Web que funcionam tão bem quanto programas independentes, mas não estão vinculados a plataformas específicas.

    • Os aplicativos PWA independentes agora podem ser registrados como manipuladores de URL. Por exemplo, o aplicativo music.example.com pode registrar-se como um manipulador de URL https://*.music.example.com e todas as transições de aplicativos externos usando esses links, por exemplo, de mensagens instantâneas e clientes de e-mail, levarão à abertura deste aplicativo PWA, não a uma nova guia do navegador.
    • Foi implementado suporte para o novo código de resposta HTTP - 103, que pode ser usado para exibir cabeçalhos antecipadamente. O código 103 permite informar o cliente sobre o conteúdo de determinados cabeçalhos HTTP imediatamente após a solicitação, sem esperar que o servidor conclua todas as operações relacionadas à solicitação e comece a servir o conteúdo. De maneira semelhante, você pode fornecer dicas sobre elementos relacionados à página que está sendo veiculada que podem ser pré-carregados (por exemplo, podem ser fornecidos links para o CSS e JavaScript usados ​​na página). Tendo recebido informações sobre tais recursos, o navegador começará a baixá-los sem esperar que a página principal termine de renderizar, o que permite reduzir o tempo geral de processamento da solicitação.
  • Adicionada API WebCodecs para manipulação de baixo nível de fluxos de mídia, complementando as APIs de alto nível HTMLMediaElement, Media Source Extensions, WebAudio, MediaRecorder e WebRTC. A nova API pode estar em demanda em áreas como streaming de jogos, efeitos do lado do cliente, transcodificação de stream e suporte para contêineres de multimídia não padrão. Em vez de implementar codecs individuais em JavaScript ou WebAssembly, a API WebCodecs fornece acesso a componentes pré-construídos e de alto desempenho integrados ao navegador. Em particular, a API WebCodecs fornece decodificadores e codificadores de áudio e vídeo, decodificadores de imagem e funções para trabalhar com quadros de vídeo individuais em baixo nível.
  • A API Insertable Streams foi estabilizada, tornando possível manipular fluxos de mídia bruta transmitidos por meio da API MediaStreamTrack, como dados de câmera e microfone, resultados de captura de tela ou dados de decodificação de codec intermediário. Interfaces WebCodec são usadas para apresentar quadros brutos e um fluxo é gerado semelhante ao que a API WebRTC Insertable Streams gera com base em RTCPeerConnections. Do lado prático, a nova API permite funcionalidades como a aplicação de técnicas de aprendizado de máquina para identificar ou anotar objetos em tempo real ou adicionar efeitos como recorte de fundo antes da codificação ou após a decodificação por um codec.
  • O método scheduler.postTask() foi estabilizado, permitindo controlar o agendamento de tarefas (chamadas de retorno de chamada JavaScript) com diferentes níveis de prioridade. São fornecidos três níveis de prioridade: 1- execução primeiro, mesmo que as operações do usuário possam ser bloqueadas; 2 – são permitidas alterações visíveis ao usuário; 3 - execução em segundo plano). Você pode usar o objeto TaskController para alterar a prioridade e cancelar tarefas.
  • Estabilizado e agora distribuído fora do Origin Trials API Idle Detection para detectar a inatividade do usuário. A API permite detectar momentos em que o usuário não está interagindo com o teclado/mouse, o protetor de tela está em execução, a tela está bloqueada ou o trabalho está sendo realizado em outro monitor. A informação da aplicação sobre a inatividade é realizada através do envio de uma notificação após atingir um limite de inatividade especificado.
  • Foi formalizado o processo de gerenciamento de cores nos objetos CanvasRenderingContext2D e ImageData e o uso do espaço de cores sRGB neles. Fornece a capacidade de criar objetos CanvasRenderingContext2D e ImageData em espaços de cores diferentes de sRGB, como Display P3, para aproveitar os recursos avançados de monitores modernos.
  • Adicionados métodos e propriedades à API VirtualKeyboard para controlar se o teclado virtual é mostrado ou oculto e para obter informações sobre o tamanho do teclado virtual exibido.
  • JavaScript permite que as classes usem blocos de inicialização estáticos para agrupar o código que é executado uma vez ao processar a classe: class C { // O bloco será executado ao processar a própria classe static { console.log("Bloco estático de C"); } }
  • As propriedades flex-basis e flex CSS implementam as palavras-chave content, min-content, max-content e fit-content para fornecer um controle mais flexível sobre o tamanho da área principal do Flexbox.
  • Adicionada a propriedade CSS scrollbar-gutter para controlar como o espaço da tela é reservado para a barra de rolagem. Por exemplo, quando não quiser que o conteúdo role, você pode expandir a saída para ocupar a área da barra de rolagem.
  • A API Self Profiling foi adicionada com a implementação de um sistema de criação de perfil que permite medir o tempo de execução do JavaScript no lado do usuário para depurar problemas de desempenho no código JavaScript, sem recorrer a manipulações manuais na interface para desenvolvedores web.
  • Após a remoção do plugin Flash, decidiu-se retornar valores vazios nas propriedades navigator.plugins e navigator.mimeTypes, mas, como se viu, alguns aplicativos os utilizaram para verificar a presença de plugins para exibição de arquivos PDF. Como o Chrome possui um visualizador de PDF integrado, as propriedades navigator.plugins e navigator.mimeTypes agora retornarão uma lista fixa de plug-ins de visualizador de PDF padrão e tipos MIME - "PDF Viewer, Chrome PDF Viewer, Chromium PDF Viewer, Microsoft Edge PDF Viewer e PDF integrado do WebKit".
  • Melhorias foram feitas nas ferramentas para desenvolvedores web. Os dispositivos Nest Hub e Nest Hub Max foram adicionados à lista de simulação de tela. Um botão para inverter filtros foi adicionado à interface para inspecionar a atividade da rede (por exemplo, ao instalar o filtro “código de status: 404”, você pode visualizar rapidamente todas as outras solicitações), e também forneceu a capacidade de visualizar os valores originais ​​dos cabeçalhos Set-Cookie (permite avaliar a presença de valores incorretos que são removidos durante a normalização). A barra lateral no console web foi descontinuada e será removida em uma versão futura. Adicionada capacidade experimental para ocultar problemas na guia Problemas. Nas configurações, foi adicionada a capacidade de selecionar o idioma da interface.
    Versão 94 do Chrome

Além de inovações e correções de bugs, a nova versão elimina 19 vulnerabilidades. Muitas das vulnerabilidades foram identificadas como resultado de testes automatizados usando as ferramentas AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Nenhum problema crítico foi identificado que permitiria ignorar todos os níveis de proteção do navegador e executar código no sistema fora do ambiente sandbox. Como parte do programa de pagamento de recompensas em dinheiro pela descoberta de vulnerabilidades na versão atual, o Google pagou 17 prêmios no valor de US$ 56500 (um prêmio de US$ 15000, dois prêmios de US$ 10000, um prêmio de US$ 7500, quatro prêmios de US$ 3000, dois prêmios de US$ 1000). O tamanho das 7 recompensas ainda não foi determinado.

Fonte: opennet.ru

Adicionar um comentário