Engenheiros do Google propuseram Web Environment Integrity, que poderia tornar o bloqueio de anúncios quase impossível
(stackdiary.com)- Web Environment Integrity, criada por quatro engenheiros do Google, era uma proposta de API que permitiria que sites solicitassem tokens de prova do ambiente do cliente do usuário; o Google a descartou em 2 de novembro de 2023
- O objetivo declarado era aumentar a confiança e a segurança na web, como na verificação de usuários humanos em sites de anúncios, na identificação de engajamento falso em sites sociais e na confirmação de cumprimento de regras em jogos online
- A Mozilla afirmou que detecção de fraude e tráfego inválido são problemas que precisam ser resolvidos, mas se opôs à proposta por não estar claro que avanço ela traria em casos de uso reais e por ter desvantagens claras
- Críticos temiam que, mesmo sem identificadores únicos nos tokens, o mau uso pudesse levar a vigilância e controle, além de introduzir DRM em páginas web e tornar o bloqueio de anúncios no navegador quase impossível
- Como não estava claro quem controlaria os attesters nem quem definiria os requisitos de referência, permanecia o risco de prejudicar a web aberta, com grandes empresas de tecnologia influenciando pontuações de confiança e acesso à web
Proposta e descarte do Web Environment Integrity
- O Google propôs o “Web Environment Integrity Explainer”, documento escrito por quatro engenheiros do Google
- Segundo uma atualização de 2 de novembro de 2023, o Google descartou a proposta, com um post posterior relacionado vinculado separadamente
- Uma atualização de 26 de julho de 2023 apresentou um commit que parecia indicar movimento para incluir o recurso no Chromium
- Rupert Ben Wiser, um dos autores da proposta, deixou um comentário no GitHub dizendo que estava sentindo a reação contrária
Casos de uso visados pela verificação baseada em tokens
- A ideia central era que sites solicitassem um token contendo prova sobre o ambiente de código do cliente, tornando o ambiente de acesso mais confiável
- Os casos de uso citados na proposta se resumiam a três
- Sites baseados em anúncios verificariam se o usuário é humano, e não um bot
- Sites sociais diferenciariam engajamento real de usuários de engajamento falso
- Usuários de jogos online verificariam se outros jogadores seguem as regras do jogo
- O Google disse que os tokens não incluiriam identificadores únicos, mas críticos viam a possibilidade de vigilância e controle indevidos em caso de mau uso
- Em uma issue de posição sobre padrões, a Mozilla se opôs à proposta, afirmando que detecção de fraude e tráfego inválido valem ser resolvidos, mas que não está claro como a proposta traria avanços práticos e que as desvantagens de sua adoção são claras
Preocupações com DRM, extensões e controle dos attesters
- Críticos viam essa API como uma forma de controlar o comportamento do usuário na web e de introduzir DRM discretamente em páginas web, tornando o bloqueio de anúncios dentro do navegador quase impossível
- Essa possibilidade levou a preocupações não só sobre a experiência do usuário, mas também sobre neutralidade da rede e abertura da web
- Quem controla o attester que verifica o ambiente do cliente tornou-se um ponto central de debate na comunidade técnica
- Havia a preocupação de que, se o Google ou outra grande empresa de tecnologia controlasse o attester, pudesse manipular pontuações de confiança
- A estrutura poderia se consolidar de modo que algumas empresas decidissem quais sites são confiáveis
- O impacto sobre modificações de navegadores e extensões também era incerto
- A proposta afirmava que o Web Environment Integrity faria attestation da legitimidade do hardware subjacente e da stack de software, sem limitar funcionalidades declaradas da aplicação
- Como essa explicação se aplicaria a extensões permitidas ou a navegadores modificados permanecia uma zona cinzenta
- A proposta dizia que o attester deveria oferecer serviço nas mesmas condições a todos os navegadores que cumprissem determinados requisitos de referência, mas não deixava claro como esses requisitos de referência seriam definidos nem quem os faria cumprir
1 comentários
Opiniões no Hacker News
Discussões anteriores: Web Environment Integrity API Proposal – https://news.ycombinator.com/item?id=36817305 (618 pontos/4 dias atrás/442 comentários), Google Chrome Proposal – Web Environment Integrity – https://news.ycombinator.com/item?id=36778999 – (117 pontos/7 dias atrás/94 comentários), Web Environment Integrity Explainer – https://news.ycombinator.com/item?id=36785516 (87 pontos/6 dias atrás/44 comentários)
Isto não é simplesmente “tornar o bloqueio de anúncios quase impossível”, como diz o título; é tornar possível navegar na internet apenas no Chrome, Safari e Edge, além de impedir modificações e extensões
Fazer com que isso só seja possível no macOS, Windows, Android e iOS, excluindo distribuições Android customizadas como LineageOS ou GrapheneOS
Inclui até permitir crawling da internet apenas pelo Google, bloqueando crawlers privados e mecanismos de busca concorrentes
Então RISC-V ainda não seria permitido e, mesmo que fosse suportado no futuro, a competição em CPUs não seria permitida
SoCs também ficariam limitados aos que eles autorizassem, e form factors como calculadoras com navegador web poderiam ser excluídos
Até mudanças de UX em nível de sistema operacional poderiam ser controladas, como quando o Android adotou uma UX de navegador centrada em documentos no passado
Do ponto de vista de quem vem do lado do Android, esses exemplos já parecem casos aplicáveis ao Google/Android
[0] Esta parte depende de a implementação do Web Environment Integrity impor todo o secure boot aprovado por eles
[1] Existem calculadoras que rodam Android, mas, por não serem Google/Android, talvez não consigam rodar o Chrome. Há muitos dispositivos Android estranhos, como robôs ambulantes, escovas de dentes e mictórios
[2] Deve haver exemplos melhores, mas o ponto importante é que foi uma mudança no sistema operacional como um todo, não exatamente competição entre navegadores
Apenas empresas como Intel, AMD e Qualcomm poderiam participar, enquanto firmware, arquiteturas e hardware open source ficariam excluídos
Esses serviços e produtos tecnológicos seriam indesejáveis ou inacessíveis para eles, e o Terceiro Mundo seria forçado a usar soluções próprias, talvez caminhando para algo mais inovador e menos centrado em anúncios
Para contornar essa tendência, o melhor é focar em ferramentas de publicação federadas
Para as empresas quebrarem a internet, elas teriam que ser mais destrutivas do que uma guerra nuclear, e nós sempre poderemos rotear em volta delas
Não entendo como engenheiros de software que criam esse tipo de coisa conseguem continuar trabalhando
Fico me perguntando se engenheiros pagos e pessoas envolvidas não têm coragem ou dignidade para pedir demissão
Se me pedissem para empurrar algo assim, eu sairia imediatamente, qualquer que fosse a proposta, e é difícil acreditar que ninguém dentro do Google se oponha
Se isso for realmente lançado, espero que acabe gerando uma enorme reação negativa contra o Google
Talvez seja por isso que a programação hoje pareça ser feita pelo 10% inferior em talento
Mesmo assim, as pessoas fazem isso por dinheiro. Por volta de 2015, recusei uma oferta da FAANG; teria que me mudar para o outro lado dos EUA e acho que não conseguiria dormir trabalhando em uma empresa daquelas
A remuneração total no primeiro ano era de 250 mil a 350 mil dólares, dependendo do desempenho, e também havia bônus de contratação
Até hoje, quando sofro para encontrar trabalho todo mês como autônomo/contratado, meio que me arrependo dessa decisão
Independentemente de dignidade ou coragem, se você tem família para sustentar, hipoteca, despesas médicas, animais de estimação e hobbies, é difícil simplesmente “chutar o balde” e abrir mão do salário
O trabalho ocupa uma grande parte do tempo e da vida social, e também não é fácil decidir deixar colegas e amigos com quem você trabalha
É muito injusto esperar que engenheiros morram nessa colina por nós
Como o Google pode substituí-los em um piscar de olhos, o resultado é próximo de zero; culpar alguém por não colocar em risco o sustento e a saúde de si mesmo e da família em nome da dignidade ou da moral me parece mais uma transferência de responsabilidade
Não é difícil imaginar que um engenheiro queira, por conta própria, trabalhar nesse tipo de coisa
Por que não receber dinheiro do diabo enquanto luta contra os planos dele?
Na indústria de tecnologia há tantas coisas brilhantes acontecendo que dá para fazer um projeto quebrar parecendo acidente
Também tenho a esperança de que alguns engenheiros dentro do Google estejam fazendo isso agora
O dinheiro grande atraiu pessoas para as big techs e quebrou alguma coisa; da próxima vez, precisamos pensar pelo menos dois lances à frente
O texto em si é cauteloso e bom, mas o título é um clickbait idiota.
Se não houver um plano para permitir que instituições independentes sejam atestadores (attesters), isso é uma ameaça óbvia ao que resta da internet aberta.
O fato de Google ou Apple não apontarem isso explicitamente parece o maior canário morto na mina.
É uma situação em que empresas privadas que já monopolizaram partes da internet dizem, de forma evasiva, “não se preocupe, nós cuidamos disso”, mas elas jamais deveriam ficar responsáveis pela atestação.
Há dois riscos: exigências hostis como “o agente não inclui bloqueador de anúncios” e “scraping sem permissão explícita do site é proibido”; e exigências proibitivas que, embora individualmente razoáveis, em conjunto só grandes fornecedores conseguem cumprir, como “implementa os protocolos X/Y/Z e os padrões A/B/C”.
Além disso, esses critérios precisam ser verificáveis, portanto, se o usuário modificar o agente, a própria atestação na prática deixa de ser válida.
Com isso, os concorrentes do Google são bloqueados. Como um atestador poderia resolver esse problema?
Se você leu este texto no Chrome, isso por si só faz parte do problema.
Se o Google não tivesse uma posição quase monopolista, algo horrível assim provavelmente não seria possível.
Pelo bem da internet aberta, é preciso migrar para outro navegador. No desktop, o Firefox é o melhor; mesmo um baseado em Chromium pode ser melhor, desde que não seja o Chrome.
No Android, o Firefox é fraco porque as extensões são muito limitadas, mas ainda é melhor que o Chrome, que não tem extensão nenhuma; no iOS, ele é apenas um wrapper do Safari sem extensões, mas a sincronização funciona bem em todos os lugares.
Mas não se pode esquecer que, em 2011, 85% da receita da Mozilla vinha do Google, por meio do contrato para ser o mecanismo de busca padrão.
Em certo momento, foram pagos cerca de US$ 1 bilhão ao longo de 3 anos, e dizem que o preço subiu quando a Microsoft entrou na disputa para tornar o Bing o padrão.
Por isso, sempre que a Mozilla critica o Google, fica estranho, como se estivesse mordendo a mão que a alimenta.
Ela poderia fazer acordos com Microsoft, Yahoo, DDG ou Baidu, mas, sem o interesse do Google, parece que o financiamento diminuiria.
Ainda assim, o fato de Firefox e Chrome serem ambos open source é uma pequena apólice de seguro contra as brincadeiras das big techs de restringir liberdades.
https://news.ycombinator.com/item?id=36770883
Mas o Chrome ficou dominante demais, e o Google começou a exercer poder excessivo nos comitês de padronização, então voltei para o Firefox alguns anos atrás.
Quando realmente preciso de Chromium, uso o Edge e, para falar a verdade, gosto bastante dele.
Se você criar uma coleção de extensões na conta Mozilla, pode usar qualquer extensão, e muitas funcionam sem alterações.
Os mecanismos de renderização existentes cresceram junto com os padrões, mas os padrões, especialmente CSS, ficaram tão absurdamente complexos que implementar um novo engine tornou-se quase impossível.
Até a Microsoft desistiu, e o Edge virou, na prática, o Chrome.
Mesmo que o Chrome seja baseado em open source, a influência real do Google é enorme.
Se o Google estiver falando sério sobre esse plano, tentará empurrá-lo para dentro dos projetos e transformá-lo em um elemento essencial da experiência web; e, como também é o principal patrocinador do Firefox, tem influência por lá também.
A resposta mais recente do engenheiro do Google não tem senso de realidade: https://github.com/RupertBenWiser/Web-Environment-Integrity/...
Mesmo que seja implementado, é bem provável que seja removido discretamente quando a indignação diminuir.
E, mesmo que permaneça, se a porcentagem for baixa o suficiente, usuários que falharem na atestação serão bombardeados com CAPTCHAs ou simplesmente receberão a mensagem para ir embora.
Se você navegar pela web usando TOR, dá para ter uma amostra do tratamento que receberá.
O texto inteiro se resume a “apenas confie em mim”.
Também se afirma que, se a web se tornar mais privada sem uma nova API, podem aumentar barreiras de login para acesso a conteúdo básico, fingerprinting mais invasivo e desafios excessivos como autenticação por SMS e CAPTCHA; fico curioso para saber se há dados que sustentem essas alegações.
O caminho atual está completamente errado e é irresponsável; o primeiro passo para trabalhar em conjunto é abandonar totalmente essa abordagem.
É parecido com propor resolver o aquecimento global com um inverno nuclear, não é um problema que possa ser solucionado por melhorias iterativas ou por um meio-termo.
A premissa desta proposta em si é perigosa, portanto ela deve ser descartada.
Basta pensar nas inúmeras formas como ela pode ser abusada — e certamente será.
Escrevo aqui porque os comentários no GitHub foram bloqueados.
Se eu trabalhasse para o diabo e soubesse disso, também faria o mesmo.
Infelizmente, todos nós vamos aceitar isso de bom grado
Porque o Chrome é “conveniente”
As pessoas aceitam qualquer coisa em nome da conveniência, e o WhatsApp é um bom exemplo. Centenas de milhões de pessoas no mundo inteiro compartilham e sincronizam de bom grado toda a sua lista de contatos com o Facebook/Meta
Se você se importa, não deveria usar o Chrome. Se critica esse movimento perverso e continua usando o Chrome, você é parte do problema
A única exceção é que ainda uso o Google Search
Com o avanço dos grandes modelos de linguagem, talvez um dia, rodando um LLM por conta própria, seja possível se livrar completamente da dependência de empresas proprietárias
Se você não usa WhatsApp, especialmente em países como Alemanha ou Índia, onde quase todo mundo usa, há um custo social: você não consegue se comunicar com outros usuários nem participar de chats em grupo
O custo de não usar Chrome é próximo de zero. Você usa os mesmos sites, só que com Firefox
Será que a indústria web baseada em anúncios não está realmente desesperada para autenticar humanos e bots?
Não há motivo para que um bot não possa usar a internet conectado a um dispositivo “comprovável” por meio de um feed de vídeo e dispositivos de entrada
Isso só eleva o nível de sofisticação exigido dos bots
Em outra thread, também falaram de apontar uma câmera para um celular e operá-lo com “dedos” robóticos
Com WEI, talvez até fique mais fácil, já que não aparecerá CAPTCHA. Afinal, ele parecerá “humano” de qualquer forma
Cliques de bots também são cliques e podem ser cobrados
Já vi um texto dizendo que 80% a 90% dos cliques em anúncios do Facebook eram de bots, e isso é parecido com o tráfego dos sites comerciais com que trabalho
A maior parte do tráfego vem de bots, crawlers, scanners e “pesquisadores de segurança”
Às vezes também aparecem fraudes reais, como boosters de tráfego de marketing de afiliados que clicam em banners, fazem pedidos e não pagam, repetindo isso 200 vezes por dia, mas ninguém se importa enquanto as estatísticas parecerem boas
Não dá para confiar no Google para lidar com anúncios
Só hoje vi 3 anúncios vindos de Hong Kong fingindo ser da Macy’s e da Bed Bath & Beyond, e os anúncios falsos do Mr Beast voltaram ao YouTube
Nem vou entrar nos anúncios de Queen's Blade que beiram a pornografia
Não entendo como isso pode ser considerado aceitável, nem como o Google pode justificar tentar bloquear bloqueadores de anúncios
Vejo bloqueadores de anúncios como uma barreira de segurança mais importante do que vacinas, e para mim tem sido assim há quase 10 anos
Fiz a minha parte: no meu site, mostro a mensagem “Não disponível no Chrome. Use um navegador mais moderno e aberto...” junto com uma explicação
Se a maioria de nós, desenvolvedores, fizer isso, essa mudança não terá chance
Melhor ainda seria alguém criar um arquivo JS para que outras pessoas só precisem incluí-lo e ele exiba um pop-up de bloqueio obrigatório mostrando como seria a web do futuro
Seria bom incluir também uma boa explicação e links para vídeos relacionados