Por quê?
- Porque eles querem que você pense sobre o que está fazendo
- Porque evita instalações acidentais
- Porque impede instalações acionadas com códigos maliciosos
Como você pode desencadear uma instalação maliciosamente?
Aqui está um artigo interessante sobre as condições de corrida nos diálogos de segurança de Jesse Ruderman:
Outra forma de ataque envolve convencer o usuário a clicar duas vezes em um determinado ponto da tela. Este local é o local onde o botão 'Sim' aparecerá. O primeiro clique aciona a caixa de diálogo; o segundo clique chega ao botão 'Sim'. Fiz uma demonstração desse ataque para Firefox e Mozilla.
A solução do Firefox, do bug 162020 , é atrasar a ativação dos botões "Sim" / "Instalar" até três segundos após o diálogo aparecer. Acredito que essa é a única solução possível, a não ser negar completamente ao conteúdo não confiável a capacidade de apresentar o diálogo. Infelizmente, essa correção é frustrante para usuários que instalam extensões com frequência.
Basicamente, tudo se resume a prever quando um usuário clicaria e, em seguida, interceptá-lo dentro de um diálogo de instalação. Ruderman explicou uma situação de jogo mais concisa como essa em seu relatório de bug do Firefox, o que levou à inclusão do período de atraso.
Para resumir novamente, seu ponto principal foi:
Se eu conseguir controlar ou prever quando e onde um usuário clicará, posso levá-lo a instalar o software .
Alguma alternativa para o período de atraso?
O período de atraso foi certamente apenas uma maneira de lidar com isso. Outro poderia ter sido embaralhar os botões para "Instalar", "Cancelar" toda vez que você instalasse algo. Isso é algo usado com muita frequência, mas confunde o usuário mais do que ajuda.
Outra idéia seria mover o local da janela aleatoriamente para cada caixa de diálogo. Isso tem o mesmo resultado que embaralhar os botões, ou seja, confundir o usuário.
Além disso, a introdução da aleatoriedade não é a solução definitiva. Se houver atalhos de teclado para os botões, você também poderá interceptar as teclas pressionadas. Dito isso, parece mais um recurso herdado hoje, já que a maioria dos plug-ins é instalada no site oficial do Firefox, de qualquer maneira.