Chrome 86

A próxima versão do Chrome 86 e a versão estável do Chromium foram lançadas.

Principais mudanças no Chrome 86:

  • proteção contra envio inseguro de formulários de entrada em páginas carregadas por HTTPS, mas enviando dados por HTTP.
  • O bloqueio de downloads inseguros (http) de arquivos executáveis ​​é complementado pelo bloqueio de downloads inseguros de arquivos (zip, iso, etc.) e pela exibição de avisos para downloads inseguros de documentos (docx, pdf, etc.). O bloqueio de documentos e avisos para imagens, texto e arquivos de mídia são esperados na próxima versão. O bloqueio é implementado porque o download de arquivos sem criptografia pode ser usado para realizar ações maliciosas, substituindo o conteúdo durante ataques MITM.
  • O menu de contexto padrão exibe a opção "Sempre mostrar URL completo", que anteriormente exigia a alteração das configurações na página about:flags para habilitá-la. O URL completo também pode ser visualizado clicando duas vezes na barra de endereço. Lembramos que a partir do Chrome 76, por padrão o endereço passou a ser mostrado sem o protocolo e o subdomínio www. No Chrome 79, a configuração para retornar o comportamento antigo foi removida, mas após a insatisfação do usuário, um novo sinalizador experimental foi adicionado no Chrome 83 que adiciona uma opção ao menu de contexto para desabilitar a ocultação e exibição do URL completo em todas as condições.
    Para uma pequena porcentagem de usuários, foi lançada uma experiência para exibir apenas o domínio na barra de endereço por padrão, sem elementos de caminho e parâmetros de consulta. Por exemplo, em vez de "https://example.com/secure-google-sign-in/" "example.com" será mostrado. A expectativa é que o modo proposto seja levado a todos os usuários em um dos próximos lançamentos. Para desabilitar esse comportamento, você pode usar a opção “Sempre mostrar URL completo”, e para visualizar o URL inteiro, você pode clicar na barra de endereço. O motivo da mudança é o desejo de proteger os usuários de phishing que manipula parâmetros na URL – os invasores aproveitam a desatenção dos usuários para criar a aparência de estar abrindo outro site e cometendo ações fraudulentas (se tais substituições forem óbvias para um usuário tecnicamente competente , então pessoas inexperientes caem facilmente nessa manipulação simples).
  • A iniciativa para remover o suporte FTP foi renovada. No Chrome 86, o FTP está desativado por padrão para cerca de 1% dos usuários, e no Chrome 87 o escopo da desativação será aumentado para 50%, mas o suporte pode ser restaurado usando "--enable-ftp" ou "- -enable-features=FtpProtocol" sinalizador. No Chrome 88, o suporte a FTP será completamente desativado.
  • Na versão para Android, semelhante à versão para sistemas desktop, o gerenciador de senhas implementa uma verificação de logins e senhas salvos em um banco de dados de contas comprometidas, exibindo um aviso caso sejam detectados problemas ou haja tentativa de uso de senhas triviais. A verificação é realizada em um banco de dados que cobre mais de 4 bilhões de contas comprometidas que apareceram em bancos de dados de usuários vazados. Para manter a privacidade, o prefixo hash é verificado do lado do usuário, e as próprias senhas e seus hashes completos não são transmitidos externamente.
  • O botão “Verificação de segurança” e o modo de proteção aprimorada contra sites perigosos (Enhanced Safe Browsing) também foram transferidos para a versão Android. O botão “Verificação de segurança” mostra um resumo de possíveis problemas de segurança, como o uso de senhas comprometidas, o status da verificação de sites maliciosos (Navegação Segura), a presença de atualizações desinstaladas e a identificação de complementos maliciosos. O modo de proteção avançada ativa verificações adicionais para proteção contra phishing, atividades maliciosas e outras ameaças na Web e também inclui proteção adicional para sua conta do Google e serviços do Google (Gmail, Drive, etc.). Se no modo Navegação segura normal as verificações são realizadas localmente usando um banco de dados carregado periodicamente no sistema do cliente, então na Navegação segura aprimorada as informações sobre páginas e downloads em tempo real são enviadas para verificação no lado do Google, o que permite que você responda rapidamente a ameaças imediatamente após serem identificadas, sem esperar até que a lista negra local seja atualizada.
  • Adicionado suporte para o arquivo indicador ".well-known/change-password", com o qual os proprietários do site podem especificar o endereço do formulário web para alteração da senha. Se as credenciais de um usuário forem comprometidas, o Chrome solicitará imediatamente ao usuário um formulário de alteração de senha com base nas informações deste arquivo.
  • Foi implementado um novo aviso de “Dica de Segurança”, exibido ao abrir sites cujo domínio é muito semelhante a outro site e as heurísticas mostram que há uma grande probabilidade de spoofing (por exemplo, é aberto goog0le.com em vez de google.com).

    * Foi implementado suporte para cache Back-forward, proporcionando navegação instantânea ao usar os botões “Voltar” e “Avançar” ou ao navegar pelas páginas visualizadas anteriormente do site atual. O cache é ativado usando a configuração chrome://flags/#back-forward-cache.

  • Otimizando o consumo de recursos da CPU para janelas fora do escopo. O Chrome verifica se a janela do navegador está sobreposta por outras janelas e evita o desenho de pixels em áreas sobrepostas. Essa otimização foi habilitada para uma pequena porcentagem de usuários no Chrome 84 e 85 e agora está habilitada em todos os lugares. Em comparação com versões anteriores, também foi resolvida uma incompatibilidade com sistemas de virtualização que causava o aparecimento de páginas em branco.
  • Aumento do corte de recursos para guias em segundo plano. Essas guias não podem mais consumir mais de 1% dos recursos da CPU e não podem ser ativadas mais do que uma vez por minuto. Após cinco minutos em segundo plano, as guias ficam congeladas, com exceção das guias que estão reproduzindo conteúdo multimídia ou gravando.
  • O trabalho foi retomado na unificação do cabeçalho HTTP User-Agent. Na nova versão, o suporte ao mecanismo User-Agent Client Hints, desenvolvido em substituição ao User-Agent, está ativado para todos os usuários. O novo mecanismo envolve o retorno seletivo de dados sobre parâmetros específicos do navegador e do sistema (versão, plataforma, etc.) somente após uma solicitação do servidor e dando aos usuários a oportunidade de fornecer seletivamente tais informações aos proprietários do site. Ao usar User-Agent Client Hints, o identificador não é transmitido por padrão sem uma solicitação explícita, o que impossibilita a identificação passiva (por padrão, apenas o nome do navegador é indicado).
    Foi alterada a indicação da presença de atualização e da necessidade de reiniciar o navegador para instalá-la. Em vez de uma seta colorida, “Atualizar” agora aparece no campo de avatar da conta.
  • Foram realizados trabalhos para converter o navegador para usar terminologia inclusiva. Nos nomes das políticas, as palavras “lista branca” e “lista negra” foram substituídas por “lista de permissões” e “lista de bloqueios” (as políticas já adicionadas continuarão a funcionar, mas exibirão um aviso sobre serem obsoletas). Nos nomes de códigos e arquivos, as referências à "lista negra" foram substituídas por "lista de bloqueio". As referências visíveis ao usuário a “lista negra” e “lista branca” foram substituídas no início de 2019.
    Adicionada uma capacidade experimental de editar senhas salvas, ativada usando o sinalizador “chrome://flags/#edit-passwords-in-settings”.
  • A API Native File System foi transferida para a categoria de API estável e disponível publicamente, permitindo criar aplicativos da web que interagem com arquivos no sistema de arquivos local. Por exemplo, a nova API pode ser solicitada em ambientes de desenvolvimento integrados baseados em navegador, editores de texto, imagem e vídeo. Para poder escrever e ler arquivos diretamente ou usar caixas de diálogo para abrir e salvar arquivos, bem como navegar pelo conteúdo dos diretórios, o aplicativo solicita ao usuário uma confirmação especial.
  • Adicionado um seletor CSS ":focus-visible", que usa a mesma heurística que o navegador usa ao decidir se deve mostrar o indicador de mudança de foco (ao mover o foco para um botão usando atalhos de teclado, o indicador aparece, mas ao clicar com o mouse , isso não). O seletor CSS disponível anteriormente ":focus" sempre destaca o foco. Além disso, a opção “Quick Focus Highlight” foi adicionada às configurações, quando habilitada, um indicador de foco adicional será mostrado próximo aos elementos ativos, que permanece visível mesmo se os elementos de estilo para destaque visual do foco estiverem desabilitados na página via CSS.
  • 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.
  • API WebHID para acesso de baixo nível a dispositivos HID (dispositivos de interface humana, teclados, mouses, gamepads, touchpads), que permite implementar a lógica de trabalhar com um dispositivo HID em JavaScript para organizar o trabalho com dispositivos HID raros sem a presença de drivers específicos no sistema. Em primeiro lugar, a nova API visa fornecer suporte para gamepads.
  • API de informações de tela estende a API de posicionamento de janela para oferecer suporte a configurações de várias telas. Ao contrário de window.screen, a nova API permite manipular o posicionamento de uma janela no espaço geral da tela de sistemas com vários monitores, sem ficar limitado à tela atual.
  • Meta tag de economia de bateria, com a qual o site pode informar o navegador sobre a necessidade de ativar modos para reduzir o consumo de energia e otimizar a carga da CPU.
  • API de relatórios COOP para relatar possíveis violações dos modos de isolamento Cross-Origin-Embedder-Policy (COEP) e Cross-Origin-Opener-Policy (COOP), sem aplicar restrições reais.
  • A API de gerenciamento de credenciais oferece um novo tipo de credenciais, PaymentCredential, que fornece confirmação adicional da transação de pagamento que está sendo realizada. Uma parte confiável, como um banco, tem a capacidade de gerar uma chave pública, uma PublicKeyCredential, que pode ser solicitada pelo comerciante para confirmação adicional de pagamento seguro.
  • A API PointerEvents para determinar a inclinação da caneta* adicionou suporte para ângulos de elevação (o ângulo entre a caneta e a tela) e azimute (o ângulo entre o eixo X e a projeção da caneta na tela), em vez do Ângulos TiltX e TiltY (os ângulos entre o plano da caneta e um dos eixos e o plano dos eixos Y e Z). Também foram adicionadas funções de conversão entre altitude/azimute e TiltX/TiltY.
  • Alterada a codificação de espaço em URLs ao calculá-lo em manipuladores de protocolo - o método navigator.registerProtocolHandler() agora substitui espaços por "%20" em vez de "+", o que unifica o comportamento com outros navegadores como o Firefox.
  • Um pseudoelemento "::marker" foi adicionado ao CSS, permitindo personalizar a cor, tamanho, forma e tipo de números e pontos para listagens em blocos E .
  • Adicionado suporte para o cabeçalho HTTP Document-Policy, que permite definir regras de acesso a documentos, semelhante ao mecanismo de isolamento de sandbox para iframes, mas mais universal. Por exemplo, através do Document-Policy você pode limitar o uso de imagens de baixa qualidade, desabilitar APIs JavaScript lentas, configurar regras para carregar iframes, imagens e scripts, limitar o tamanho geral do documento e o tráfego, proibir métodos que levam ao redesenho da página e desativar a função Rolar para texto.
  • Para elemento adicionado suporte para parâmetros 'inline-grid', 'grid', 'inline-flex' e 'flex' definidos através da propriedade CSS 'display'.
  • Adicionado o método ParentNode.replaceChildren() para substituir todos os filhos de um nó pai por outro nó DOM. Anteriormente, você poderia usar uma combinação de node.removeChild() e node.append() ou node.innerHTML e node.append() para substituir nós.
  • A gama de esquemas de URL que podem ser substituídos usando registerProtocolHandler() foi expandida. A lista de esquemas inclui os protocolos descentralizados cabal, dat, did, dweb, ethereum, hyper, ipfs, ipns e ssb, que permitem definir links para elementos independentemente do site ou gateway que fornece acesso ao recurso.
  • Adicionado suporte para formato texto/html à API da área de transferência assíncrona para copiar e colar HTML através da área de transferência (construções HTML perigosas são limpas ao escrever e ler na área de transferência). A mudança, por exemplo, permite organizar a inserção e cópia de textos formatados com imagens e links em editores web.
  • O WebRTC adicionou a capacidade de conectar seus próprios manipuladores de dados, chamados nos estágios de codificação ou decodificação do WebRTC MediaStreamTrack. Por exemplo, esta capacidade pode ser usada para adicionar suporte para criptografia ponta a ponta de dados transmitidos através de servidores intermediários.
    No mecanismo JavaScript V8, a implementação de Number.prototype.toString foi acelerada em 75%. Adicionada propriedade .name às classes assíncronas com valor vazio. O método Atomics.wake foi removido, que já foi renomeado para Atomics.notify para estar em conformidade com a especificação ECMA-262. O código da ferramenta de teste de difusão JS-Fuzzer está aberto.
  • O compilador de linha de base Liftoff para WebAssembly lançado na última versão inclui a capacidade de usar instruções vetoriais SIMD para acelerar os cálculos. A julgar pelos testes, a otimização permitiu acelerar alguns testes em 2.8 vezes. Outra otimização tornou muito mais rápida a chamada de funções JavaScript importadas do WebAssembly.
  • Ferramentas para desenvolvedores web foram expandidas: O painel Mídia adicionou informações sobre os players usados ​​para reproduzir vídeo na página, incluindo dados de eventos, logs, valores de propriedades e parâmetros de decodificação de quadros (por exemplo, você pode determinar as causas do quadro problemas de perda e interação do JavaScript).
  • No menu de contexto do painel Elementos, foi adicionada a capacidade de criar capturas de tela do elemento selecionado (por exemplo, você pode criar uma captura de tela do índice ou tabela).
  • No console da web, o painel de aviso de problema foi substituído por uma mensagem normal, e os problemas com cookies de terceiros ficam ocultos por padrão na guia Problemas e são habilitados com uma caixa de seleção especial.
  • Na aba Renderização foi adicionado um botão “Desabilitar fontes locais”, que permite simular a ausência de fontes locais, e na aba Sensores agora é possível simular a inatividade do usuário (para aplicações que utilizam a API Idle Detection).
  • O painel Aplicativo fornece informações detalhadas sobre cada iframe, janela aberta e pop-up, incluindo informações sobre o isolamento Cross-Origin usando COEP e COOP.

A implementação do protocolo QUIC começou a ser substituída pela versão desenvolvida na especificação IETF, em vez da versão Google do QUIC.
Além de inovações e correções de bugs, a nova versão elimina 35 vulnerabilidades. Muitas das vulnerabilidades foram identificadas como resultado de testes automatizados usando as ferramentas AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Uma vulnerabilidade (CVE-2020-15967, acesso à memória liberada no código para interagir com o Google Payments) está marcada como crítica, ou seja, permite 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 27 prêmios no valor de US$ 71500 (um prêmio de US$ 15000, três prêmios de US$ 7500, cinco prêmios de US$ 5000, dois prêmios de US$ 3000, um prêmio de US$ 200 e dois prêmios de US$ 500). O tamanho de 13 recompensas ainda não foi determinado.

Retirado de Opennet.ru

Fonte: linux.org.ru

Adicionar um comentário