Lançamento do Chrome 76

A empresa Google apresentou lançamento do navegador web Chrome 76. 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 RLZ. A próxima versão do Chrome 77 está agendada para 10 de setembro.

Principais mudanças em Chrome 76:

  • Ativado por padrão, o modo de proteção contra o envio de cookies de terceiros, que, na ausência do atributo SameSite no cabeçalho Set-Cookie, define por padrão o valor 'SameSite=Lax', limitando o envio de cookies para inserções de sites de terceiros (mas os sites ainda poderão anular a limitação explicitamente definindo o valor SameSite=None ao configurar os cookies). Até agora, o navegador enviava cookies em qualquer solicitação ao site para o qual os cookies estavam definidos, mesmo que inicialmente um site diferente fosse aberto, e o acesso fosse feito indiretamente por meio de um carregamento de imagem ou via iframe. No modo 'Lax', o envio de cookies é bloqueado apenas para subconsultas intersites, como solicitações de imagens ou carregamento de conteúdo via iframe, que são frequentemente utilizadas para organizar ataques CSRF e para rastrear os movimentos do usuário entre sites.
  • A reprodução de conteúdo Flash foi desativada por padrão. Até o lançamento do Chrome 87, previsto para dezembro de 2020, o suporte ao Flash poderá ser restaurado nas configurações (Avançado > Privacidade e Segurança > Configurações do Site) com a subsequente confirmação explícita para a operação de reprodução de conteúdo Flash para cada site (a confirmação é lembrada até a reinicialização do navegador). A remoção completa do código para garantir o suporte ao Flash foi sincronizada com o plano anteriormente anunciado pela Adobe para encerrar o suporte à tecnologia Flash em 2020;
  • Para empresas, foi adicionada a possibilidade de buscar arquivos no armazenamento do Google Drive na barra de endereço;

    Lançamento do Chrome 76
  • Começou bloqueio em massa no Chrome de anúncios inaceitáveis que prejudicam a percepção do conteúdo e não atendem aos critérios estabelecidos pela Coalizão para Melhorar a Publicidade;
  • Um modo responsivo de transição para uma nova página foi implementado, onde a limpeza do conteúdo atual e a exibição de fundo branco não ocorrem imediatamente, mas após um pequeno delay. Para páginas que carregam rapidamente, a limpeza resulta apenas em um flash e não traz uma carga útil, que informaria o usuário sobre o início do carregamento da nova página. Na nova versão, se a página carrega rapidamente e se encaixa em um pequeno delay, a nova página é exibida no lugar, substituindo sem costura a anterior (por exemplo, conveniente ao abrir outras páginas do mesmo site que possuem um design e paleta de cores semelhantes). Se a exibição da página requer um tempo significativo para o usuário, a tela será limpa previamente, como antes.
  • Os critérios para determinar a atividade do usuário na página foram reforçados. O Chrome permite exibir notificações pop-up e reproduzir conteúdo de vídeo/audio intrusivo apenas após as ações do usuário na página. Na nova versão, pressionar Escape, passar o cursor sobre um link e tocar na tela não são mais considerados interações que ativam a página (é necessário um clique explícito, digitação de texto ou rolagem);
  • Adicionado a media query "prefers-color-scheme", permitindo que sites determinem a aplicação de um tema escuro no navegador e ativem automaticamente o modo escuro para o site em visualização.
  • Ao ativar o modo escuro nas compilações para Linux, a barra de endereços agora é exibida em cores escuras;
  • Bloqueada a possibilidade de determinar a abertura de uma página em modo incógnito por meio de manipulações com a API FileSystem, que anteriormente era utilizada por alguns sites para impor uma assinatura paga no caso de abertura anônima de páginas sem armazenar Cookies (para evitar que os usuários utilizassem o modo privado para contornar o mecanismo de fornecimento de acesso gratuito de teste). Anteriormente, ao operar em modo incógnito, o navegador bloqueava o acesso à API FileSystem para evitar a persistência de dados entre sessões, o que permitia ao JavaScript verificar a possibilidade de armazenar dados via API FileSystem e, em caso de falha, concluir sobre a atividade do modo incógnito. Agora, o acesso à API FileSystem não é bloqueado, e o conteúdo é limpo após o término da sessão;
  • Adicionados novos desafios em
    API Payment Request e Payment Handler. O objeto PaymentRequestEvent agora possui um novo método changePaymentMethod(), e no objeto PaymentRequest, foi adicionado um novo manipulador de evento paymentmethodchange, que permite à plataforma de pagamento ou aplicativo web reagir à mudança de método de pagamento pelo usuário. A nova versão também simplificou o teste de aplicativos relacionados a pagamentos usando certificados autoassinados. Foi adicionada uma nova opção de linha de comando «—ignore-certificate-errors» para ignorar erros de verificação de certificados durante o desenvolvimento;
  • Na barra de endereços, ao lado do botão para adicionar aos favoritos para aplicativos web que operam no modo Desktop Progressive Web Apps (PWA), o sinalizador -k para integração com atalho para instalar o aplicativo web no sistema para funcionar como um programa isolado;
    Lançamento do Chrome 76
  • Para dispositivos móveis, foi disponibilizada a opção de gerenciar a exibição de um mini banner convidando a adicionar o aplicativo na tela inicial. Para aplicativos PWA (Progressive Web App), o mini banner é automaticamente exibido por padrão na primeira abertura do site. O desenvolvedor agora pode optar por não exibir este banner e implementar seu próprio convite para instalação, para isso, pode configurar um manipulador de evento
    beforeinstallprompt e vincular a ele a chamada preventDefault();
    Lançamento do Chrome 76
  • Aumentada a frequência de verificação de atualizações para aplicativos PWA (Progressive Web App) instalados no ambiente Android. Agora, as atualizações do WebAPK são verificadas uma vez por dia, em vez de a cada três dias como anteriormente. Se durante essa verificação no manifesto for detectada qualquer alteração em uma propriedade chave, o navegador fará o download e instalará o novo WebAPK;
  • Na API Clipboard Assíncrono foi adicionada a capacidade de ler e gravar imagens via clipboard, utilizando os métodos navigator.clipboard.read() e navigator.clipboard.write();
  • Implementada a suporte para um grupo de cabeçalhos HTTP Fetch Metadata (Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site e Sec-Fetch-User), permitindo enviar metadados adicionais sobre a natureza da solicitação (restituição entre sites, solicitação através da tag img, etc.) para que o servidor possa tomar medidas para proteger contra alguns tipos de ataques (por exemplo, é improvável que um link para um manipulador de transferência de dinheiro seja fornecido através da tag img, portanto, tais solicitações podem ser bloqueadas sem passar para o aplicativo);
  • Adicionada a função form.requestSubmit(), que inicia o envio programático de dados do formulário semelhante a um clique no botão de envio. A função pode ser aplicada no desenvolvimento de botões de envio de formulário personalizados, para os quais a chamada form.submit() não é suficiente, pois não aciona a verificação interativa dos parâmetros, a geração do evento 'submit' e a transmissão dos dados vinculados ao botão de envio;
  • Foi adicionada a função commit(), que permite confirmar transações relacionadas ao objeto IDBTransaction sem aguardar a conclusão dos manipuladores de eventos em todas as solicitações relacionadas. O uso de commit() aumenta a largura de banda das solicitações de gravação e leitura no armazenamento, permitindo um controle explícito sobre a conclusão da transação;
  • Na função Intl.DateTimeFormat, como formatToParts() e resolveOptions(), foram adicionadas as opções dateStyle e timeStyle, permitindo solicitar estilos de exibição de data e hora específicos para a localidade;
  • O método BigInt.prototype.toLocaleString() foi alterado para formatar números considerando a localidade, enquanto o método Intl.NumberFormat.prototype.format() e a função formatToParts() foram adaptados para suportar valores de entrada do tipo BigInt;
  • É permitido o uso da API Media Capabilities em todos os tipos de Web Workers, o que pode ser usado para selecionar parâmetros otimizados ao criar MediaStream a partir do worker;
  • Método adicionado Promise.allSettled(), que retorna apenas promessas já resolvidas ou rejeitadas, sem considerar promessas que estão aguardando execução;
  • A opção '—disable-infobars' foi removida, que anteriormente poderia ser usada para ocultar avisos pop-up na interface do Chrome (para ocultar avisos relacionados à segurança, foi proposta a regra CommandLineFlagSecurityWarningsEnabled);
  • Na interface para trabalhar com blobs foram adicionados os métodos text(), arrayBuffer() e stream() para ler tipos específicos de dados;
  • Adicionada a propriedade CSS 'white-space: break-spaces', que define que qualquer sequência de espaços que cause estouro de linha deve ser quebrada;
  • Iniciou-se o trabalho de limpeza das flags em chrome://flags, por exemplo, remover flag para desativar o atributo "ping", permitindo que os proprietários de sites monitorem os cliques em links de suas páginas. Ao clicar em um link que possui o atributo "ping=URL" na tag "a href", não é mais possível desativar o envio da requisição POST adicional para o URL especificado no atributo, resultando na perda de significado do bloqueio do ping, já que esse atributo está definido nas especificações do HTML5 e existem várias maneiras alternativas para realizar a mesma ação (como passar por um link de trânsito ou interceptar cliques com manipuladores JavaScript);
  • Removido o flag para desativar o modo de isolamento estrito de sites, onde páginas de diferentes hosts sempre são alocadas na memória de processos diferentes, cada um aplicando seu próprio sandbox.
  • No motor V8, a performance de escaneamento e parsing do formato JSON foi significativamente aumentada. Para páginas web populares, o desempenho da execução do JSON.parse melhorou em até 2.7 vezes. A conversão de strings unicode também foi acelerada, por exemplo, a velocidade de execução das chamadas String#localeCompare, String#normalize, além de algumas APIs Intl, quase dobrou. A performance de operações com arrays congelados foi significativamente otimizada ao usar operações, como frozen.indexOf(v), frozen.includes(v), fn(…frozen), fn(…[…frozen]) e fn.apply(this, […frozen]).

    Lançamento do Chrome 76

Além das inovações e correções de bugs, na nova versão foram eliminadas 43 vulnerabilidades. Muitas das vulnerabilidades foram descobertas através de teste automatizado com ferramentas AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Nenhum problema crítico que permita contornar todos os níveis de proteção do navegador e executar código no sistema fora do ambiente sandbox foi identificado. No âmbito do programa de recompensas por descoberta de vulnerabilidades para esta versão, a empresa Google pagou 16 prêmios no total de $23.500 (um prêmio de $10.000, um prêmio de $6.000, dois prêmios de $3.000 e três prêmios de $500). O valor de 9 recompensas ainda não foi determinado.

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