Segurança do Firefox: rel = noopener para target = _blank

A Mozilla está testando um novo recurso de segurança no Firefox Nightly atualmente que adiciona rel = "noopener" automaticamente aos links que usam target = "_ blank".

Target = "_ blank" instrui os navegadores a abrir o destino do link em uma nova guia no navegador da web automaticamente; sem o atributo target, os links seriam abertos na mesma guia, a menos que os usuários usassem a funcionalidade interna do navegador, por exemplo, mantendo pressionada a tecla Ctrl ou Shift, para abrir o link de maneira diferente.

Rel = "noopener é suportado por todos os principais navegadores da Web. O atributo garante que o abridor de janelas seja nulo nos navegadores modernos. Nulo significa que ele não contém valor.

Se rel = "noopener" não for especificado, os recursos vinculados terão controle total sobre o objeto de janela de origem, mesmo que os recursos estejam em origens diferentes. O link de destino pode manipular o documento de origem, por exemplo, substituí-lo por um semelhante para phishing, exibir publicidade nele ou manipulá-lo de qualquer outra maneira imaginável.

Você pode conferir uma página de demonstração sobre o abuso rel = "noopener" aqui. É inofensivo, mas destaca como os sites de destino podem alterar o site de origem se o atributo não for usado.

Rel = "noopener" protege o documento de origem. Os webmasters podem - e devem - especificar rel = "noopener" sempre que usarem target = "_ blank"; já usamos o atributo em todos os links externos aqui neste site.

A Apple implementou uma mudança no Safari em outubro que aplica automaticamente o rel = noopener a qualquer link que use target = _blank.

A versão noturna do Firefox também oferece suporte ao recurso de segurança agora. A Mozilla deseja coletar dados para garantir que a alteração não interrompa nada importante na Internet.

A preferência dom.targetBlankNoOpener.enable controla a funcionalidade. Ele está disponível apenas no Firefox 65 e definido como true por padrão (o que significa que rel = "_ noopener" foi adicionado).

Os usuários do Firefox podem alterar a preferência de desativar o recurso. Embora não seja recomendado por causa das implicações de segurança, convém fazê-lo se tiver problemas de compatibilidade.

  1. Carregue about: config? Filter = dom.targetBlankNoOpener.enable na barra de endereços do navegador.
  2. Confirme que você será cuidadoso se o prompt de aviso for exibido.
  3. Clique duas vezes na preferência.

Um valor true significa que rel = "noopener" é adicionado aos links com target = "_ blank", um valor false que não é.

A Mozilla tem como alvo o Firefox 65 para a versão estável. As coisas podem demorar, dependendo dos problemas que podem ser relatados ou notados. O Firefox 65 será lançado em 29 de janeiro de 2019. (via Sören Hentzschel)