Lançamento do Chrome 84

A empresa Google apresentou lançamento do navegador web Chrome 84. Ao mesmo tempo disponível lançamento estável de um projeto de código aberto Chromium, que serve como base para o Chrome. O navegador Chrome caracteriza-se pelo uso de logotipos do Google, pela presença de um sistema de envio de notificações em caso de falha, pela possibilidade de carregar o módulo Flash sob demanda, 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 na busca de parâmetros RLZA próxima versão do Chrome 85 está agendada para 25 de agosto.

Principais mudanças em Chrome 84:

  • Desativado o suporte aos protocolos TLS 1.0 e TLS 1.1. Para acessar sites por meio de um canal seguro, o servidor deve oferecer suporte a pelo menos o TLS 1.2; caso contrário, o navegador agora exibirá um erro. Segundo o Google, atualmente cerca de 0,5% dos carregamentos de páginas web ainda são feitos com versões antigas do TLS. A desativação foi realizada em conformidade com as recomendações IETF (Internet Engineering Task Force). A razão para a rejeição do TLS 1.0/1.1 é a falta de suporte a cifras modernas (como ECDHE e AEAD) e a exigência de suporte a cifras antigas, cuja confiabilidade no estágio atual da computação é questionada (por exemplo, é necessário suportar TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, para verificação de integridade e autenticação são usados MD5 e SHA-1). A configuração que permite retornar ao TLS 1.0/1.1 será mantida até janeiro de 2021.
  • O bloqueio é garantido de carregamento inseguro (sem criptografia) de arquivos executáveis e foi adicionado um aviso ao carregar arquivos inseguros. No futuro, é planejada a interrupção gradual do suporte ao carregamento de arquivos sem criptografia. A restrição foi implementada, pois o carregamento de arquivos sem criptografia pode ser usado para ações maliciosas através da alteração de conteúdo durante ataques MITM.
  • Adicionada suporte inicial identificador Client Hints, desenvolvido como uma alternativa ao cabeçalho User-Agent. O mecanismo Client Hints oferece, como substituição ao User-Agent, uma série de cabeçalhos "Sec-CH-UA-*", permitindo a entrega seletiva de dados sobre parâmetros específicos do navegador e do sistema (versão, plataforma, etc.) apenas após solicitação do servidor. O usuário tem a possibilidade de determinar quais parâmetros são permitidos para entrega e fornecer essas informações seletivamente aos proprietários de sites. Ao usar Client Hints, o identificador não é enviado por padrão sem uma solicitação explícita, o que inviabiliza a identificação passiva (por padrão, apenas o nome do navegador é informado). Funcionamento para unificação do User-Agent foi adiado até o próximo ano.
  • Continua ativação
    mais rigoroso de uso da transmissão de Cookies entre sites, que foi cancelada Devido ao COVID-19. Para solicitações não-HTTPS, o processamento de cookies de terceiros definidos ao acessar sites diferentes do domínio da página atual é proibido. Esses cookies são usados para rastrear o movimento do usuário entre sites em códigos de redes publicitárias, widgets de redes sociais e sistemas de web analytics.

    Lembramos que para gerenciar a transmissão de cookies, utiliza-se o atributo SameSite especificado no cabeçalho Set-Cookie, que por padrão será definido como 'SameSite=Lax', limitando o envio de cookies para subconsultas entre sites, como solicitações de imagens ou carregamento de conteúdo via iframe de outro site. Os sites podem sobrescrever o modo SameSite padrão, definindo explicitamente o valor SameSite=None ao configurar o cookie. Além disso, o valor SameSite=None para cookies só pode ser definido no modo Secure (ativa-se para conexões via HTTPS). A alteração será implementada gradualmente, começando com uma pequena porcentagem de usuários e, em seguida, expandindo progressivamente a cobertura.

  • Implementação experimental adicionada do bloqueador de anúncios pesados, que pode ser ativado através da configuração 'chrome://flags/#enable-heavy-ad-intervention'. O bloqueador permite desativar automaticamente blocos de anúncios iframe após os limites de tráfego e carga da CPU serem ultrapassados. O bloqueio será ativado se, no thread principal, forem gastos mais de 60 segundos de tempo de CPU no total ou 15 segundos em um intervalo de 30 segundos (consumindo 50% dos recursos por mais de 30 segundos), além de quando mais de 4 MB de dados forem carregados pela rede.

    O bloqueio será acionado apenas se, antes de exceder os limites, o usuário não interagir com o bloco de anúncios (por exemplo, não clicando nele), o que, considerando a limitação de tráfego, permitirá bloquear a reprodução automática de vídeos pesados em anúncios sem a ativação explícita da reprodução pelo usuário. As medidas propostas livrarão os usuários de anúncios com implementação de código ineficaz ou atividade parasitária intencional (como aqueles que realizam mineração). Segundo estatísticas do Google, os anúncios que se enquadram nos critérios de bloqueio representam apenas 0,30% de todos os blocos de anúncios, mas consomem 28% dos recursos da CPU e 27% do tráfego de toda a publicidade.

  • Foi realizado um trabalho para reduzir o consumo de recursos da CPU quando a janela do navegador não está visível para o usuário. O Chrome agora verifica se a janela do navegador está coberta por outras e exclui a renderização de pixels nas áreas sobrepostas. A nova função será habilitada gradualmente: a otimização será ativada para alguns usuários na versão 84 do Chrome e para os demais na versão 85.
  • Ativada por padrão a proteção contra notificações incômodas, como spam de solicitações para receber notificações push. Como essas solicitações interrompem o trabalho do usuário e distraem sua atenção nas ações nas caixas de diálogo de confirmação, em vez de uma caixa de diálogo separada, uma dica informativa que não exige ação do usuário será exibida na barra de endereços com um aviso sobre o bloqueio da solicitação de permissões, que se recolhe automaticamente em um indicador com uma imagem de um sino riscado. Ao clicar no indicador, você pode ativar ou rejeitar a permissão solicitada a qualquer momento conveniente.

    Lançamento do Chrome 84
  • Garantido o registro da escolha do usuário ao abrir manipuladores de protocolos externos — o usuário pode escolher "sempre permitir este site" para um determinado manipulador e o navegador memorizará essa decisão em relação ao site atual.
  • Adicionada proteção contra alterações nas configurações do usuário sem consentimento explícito. Se uma extensão modificar o mecanismo de busca padrão sugerido ou a página exibida para uma nova guia, o navegador agora exibirá um diálogo pedindo para confirmar a operação indicada ou cancelar a alteração.
  • Continuado implementação de proteção contra o download de conteúdo multimídia misto (quando em uma página HTTPS são carregados recursos pelo protocolo http://). Em páginas abertas por HTTPS, agora os links "http://" serão automaticamente substituídos por "https://" nos blocos relacionados ao carregamento de imagens (anteriormente, scripts e iframes foram substituídos, e a auto-substituição de recursos de áudio e vídeo está prevista para a próxima versão). Se uma imagem não estiver disponível via https, seu carregamento será bloqueado (pode-se manualmente relatar o bloqueio através do menu acessível pelo símbolo de cadeado na barra de endereços).
  • Adicionada suporte ao API Web OTP (desenvolvido como API de Recepção de SMS), permitindo a inserção em uma página web de uma senha temporária após receber uma mensagem SMS com um código de confirmação, enviado para o smartphone Android do usuário com o navegador aberto. A confirmação via SMS, por exemplo, pode ser usada para verificar o número de telefone informado pelo usuário durante o registro. Se antes o usuário precisava abrir o aplicativo de mensagens SMS, copiar o código para a área de transferência, voltar ao navegador e colar o código, a nova API possibilita automatizar esse processo e reduzi-lo a um único toque.
  • API Expandida Animações Web
    para gerenciar a reprodução de animações web. A nova versão adicionou suporte a operações de composição, permitindo controlar como os efeitos são combinados e fornecendo novos manipuladores acionados por eventos de substituição de conteúdo. A API de Animações Web também agora suporta Promise para definir a sequência de exibição da animação e um melhor controle de como a animação interage com outras funcionalidades do aplicativo.
  • No modo Origin Trials (recursos experimentais que requerem ativação separada) foram adicionadas várias novas APIs. O Origin Trial permite o uso da API especificada a partir de aplicativos carregados a partir de localhost ou 127.0.0.1, ou após registro e obtenção de um token especial, que é válido por tempo limitado para um site específico.
    • API Armazenamento de Cookies para acesso do Service worker a Cookies HTTP, que serve como uma alternativa assíncrona ao uso de document.cookie.
    • API Detecção de Inatividade para identificar a inatividade do usuário, permitindo determinar momentos em que o usuário não interage com o teclado/mouse, o protetor de tela está ativo, a tela está bloqueada ou o trabalho está sendo realizado em outro monitor. A notificação do aplicativo sobre a inatividade ocorre através do envio de um aviso após atingir um determinado limite de inatividade.
    • Modo Isolamento de Origem, permite que o desenvolvedor utilize um isolamento mais completo do processamento de conteúdo em um processo separado vinculado à origem (origem — domínio+porta+protocolo), em vez de ao site, custando a interrupção do suporte a algumas funcionalidades obsoletas, como a execução síncrona de scripts que usam document.domain e a chamada de postMessage() para enviar mensagens a instâncias de WebAssembly.Module. Em outras palavras, o Isolamento de Origem permite organizar a separação em diferentes processos com base no domínio do recurso, e não no site com todas as inclusões externas nas páginas.
    • API WebAssembly SIMD para utilizar instruções SIMD vetoriais em aplicações no formato WebAssembly. Para garantir a independência da plataforma, um novo tipo de 128 bits é proposto, que pode representar diferentes tipos de dados compactados, e várias operações vetoriais básicas para processamento de dados compactados. SIMD permite aumentar o desempenho através da paralelização do processamento de dados e será útil na compilação de código nativo em WebAssembly. Para habilitar o suporte a SIMD, pode-se usar a configuração "chrome://flags/#enable-webassembly-simd".
  • Estabilizado e agora está sendo distribuído fora dos Origin Trials
    API Indexação de Conteúdo, fornecendo metadados sobre o conteúdo que foi anteriormente armazenado em cache por aplicações web operando no modo Progressive Web Apps (PWA). O aplicativo pode armazenar no lado do navegador diferentes dados, incluindo imagens, vídeos e artigos, e ao perder a conexão de rede, utilizar esses dados através da API Cache Storage e IndexedDB. A API de Indexação de Conteúdo permite adicionar, encontrar e remover tais recursos. No navegador, essa API já é utilizada para listar as páginas e os dados multimídia disponíveis para visualização offline.
  • Estabilizada a variante da API Wake Lock baseado no mecanismo Promise, proporcionando uma maneira mais segura de gerenciar a desativação do bloqueio automático da tela e a transição de dispositivos para modos de economia de energia.
  • Na versão para a plataforma Android foi adicionada suporte a atalhos de aplicativos, permitindo fornecer acesso rápido a ações típicas demandadas no aplicativo. Para criar atalhos, basta adicionar elementos ao manifesto do aplicativo web no formato PWA (Progressive Web Apps).
    Lançamento do Chrome 84
  • Para Web Worker, é permitido o uso da API ReportingObserver, permitindo definir um manipulador para a geração de relatórios que são acionados ao acessar funcionalidades obsoletas. O relatório gerado, por escolha do usuário, pode ser salvo, enviado para o servidor ou processado por um script em JavaScript.
  • API atualizada Resize Observer, permitindo conectar um manipulador que receberá notificações sobre alterações de tamanho dos elementos especificados na página. No ResizeObserverEntry, três novas propriedades foram adicionadas: contentBoxSize, borderBoxSize e devicePixelContentBoxSize para obter informações mais detalhadas, fornecidas na forma de arrays de objetos ResizeObserverSize.
  • Adicionada a palavra-chave "revert» para redefinir o estilo do elemento para o valor padrão.
  • Removidos os prefixos das propriedades CSS «-webkit-appearance» e «-webkit-ruby-position», que agora estão disponíveis como «appearance” e “ruby-position«.
  • Em JavaScript são implementadas suporte para marcar métodos e propriedades de classe como privados, permitindo que o acesso a eles seja aberto apenas dentro da classe (anteriormente, apenas os campos podiam ser privados). Para marcar métodos e propriedades como privados, deve-se especificar colocar o sinal «#» antes do nome do campo.
  • Em JavaScript foi adicionada suporte referências fracas (weak reference) para objetos JavaScript, permitindo manter uma referência ao objeto sem bloquear a remoção do objeto associado pelo coletor de lixo. Também foi adicionado suporte a finalizadores, permitindo a definição de um manipulador que é chamado após a execução do coletor de lixo do objeto especificado.
  • O início de aplicações em WebAssembly foi acelerado, graças à implementação no compilador inicial (baseline) Liftoff instruções atômicas e operações em lotes com memória. Ferramentas de depuração para WebAssembly foram melhoradas, aumentando significativamente a performance da depuração ao usar pontos de interrupção (anteriormente, durante a depuração, um interpretador era utilizado, agora o compilador Liftoff).
  • Nas ferramentas para desenvolvedores web pphttps://developers.google.com/web/updates/2020/05/devtools, o painel para análise de desempenho foi atualizado. Informações gerais sobre a métrica TBT (Total Blocking Time), que mostra quanto tempo a página parece estar disponível, mas na verdade não está (ou seja, a página já foi renderizada, mas a execução do thread principal ainda está bloqueada e a entrada de dados é impossível). Uma nova seção Experience foi adicionada para analisar a métrica CLS (Cumulative Layout Shift), que reflete a estabilidade visual do conteúdo. No painel de inspeção de estilos CSS, foi implementada uma pré-visualização das imagens especificadas através da propriedade «background-image».

Além das inovações e correções de bugs, na nova versão foram eliminadas 38 vulnerabilidades. Muitas das vulnerabilidades foram descobertas através de teste automatizado com ferramentas AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Um problema (CVE-2020-6510, estouro de buffer no manipulador de operações em segundo plano fetch) foi marcado como crítico, permitindo contornar todos os níveis de proteção do navegador e executar código no sistema fora do ambiente sandbox. No âmbito do programa de recompensas por descobrir vulnerabilidades para a versão atual, a Google pagou 26 prêmios no valor de 21500 dólares (duas recompensas de $5000, duas recompensas de $3000, uma recompensa de $2000, duas recompensas de $1000 e três recompensas de $500). O valor de 16 recompensas ainda não foi definido.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster