web-dev-qa-db-fra.com

Le délai du bouton Enregistrer dans une boîte de dialogue de téléchargement de Firefox est-il une fonction de sécurité? Que protège-t-il?

Lorsque je clique pour télécharger un fichier via Firefox, une fenêtre de dialogue apparaît me demandant si je veux enregistrer le fichier quelque part ou l'ouvrir immédiatement une fois téléchargé.

Screenshot of a Firefox download dialog

Le bouton OK de la fenêtre de dialogue est désactivé et ne s'active que lorsque la boîte de dialogue a été mise au point pendant environ une seconde. La boîte de dialogue n'est pas modale, et si je me concentre sur une autre fenêtre, le bouton OK se désactivera et ne se réactivera pas tant que la fenêtre n'aura pas maintenu le focus pendant une seconde.

Mon partenaire a déploré cette conception et m'a demandé pourquoi elle ne pouvait pas simplement cliquer sur OK pour télécharger immédiatement - j'ai répondu que j'ai toujours pensé que c'était une fonction de sécurité. Maintenant que j'y pense cependant, je ne sais pas exactement quel comportement cela pourrait empêcher. J'aurais pensé que cela pourrait empêcher un site Web malveillant de télécharger un fichier en secret en forçant la fenêtre de téléchargement à rester ouverte pendant au moins assez longtemps pour voir ce qui se passe - mais il devrait être possible pour un site de télécharger des trucs secrètement en arrière-plan en tous cas. Quoi qu'il en soit, je présume que la plupart des utilisateurs auraient à un moment donné cliqué sur la case `` faire cela automatiquement à partir de maintenant '' et ne seraient donc pas protégés de toute façon ...

Alors, est-ce une fonctionnalité de sécurité? Si oui, contre quoi protège-t-il?

246
Numeron

Oui, il s'agit d'une fonction de sécurité, et le but du délai est d'empêcher les attaques basées sur le fait d'inciter l'utilisateur à entrer des données pour ignorer la boîte de dialogue en la faisant apparaître de manière inattendue lorsque l'utilisateur est en train de saisir plusieurs pressions de touches ou souris. clics en succession rapide. Les deux exemples qui sont donnés dans ce billet de blog expliquant la fonctionnalité sont:

  • CAPTCHA qui demande à l'utilisateur de taper le mot only. Lorsqu'il appuie sur n, une boîte de dialogue d'enregistrement apparaît, puis l'utilisateur appuie immédiatement sur l puis sur y, qui est le raccourci clavier pour OK sur certains navigateurs, confirmant involontairement le téléchargement
  • Une page Web qui convainc l'utilisateur de double-cliquer quelque part à l'écran, positionnée de sorte que lorsque la boîte de dialogue s'ouvre après le premier clic, le pointeur de sa souris se trouve juste au-dessus du bouton "OK", ce qui signifie qu'il le confirme immédiatement.

En désactivant le bouton pendant plusieurs secondes, l'entrée n'a aucun effet.

rapport de bogue de Mozilla sur le problème

351
samgak

Imaginons qu'il n'y ait pas de délai, l'action par défaut pour les fichiers exécutables est de l'ouvrir, et il y a un certain délai avant que la page ne demande le téléchargement du fichier. En théorie, vous pourriez accidentellement exécuter un virus si vous tapiez quelque chose au moment exact où la boîte de dialogue est apparue. Incroyablement rare, mais je suis sûr que c'est arrivé à quelqu'un quelque part.

Moins malicieusement, du point de vue de l'expérience utilisateur, l'utilisateur peut être en train d'appuyer sur espace ou Entrée à droite lorsque la boîte de dialogue apparaît, acceptant ainsi l'action par défaut, et éventuellement incorrecte. Le court délai empêche l'utilisateur de sélectionner accidentellement la mauvaise option.

Bien que je doute que cette fonctionnalité soit réellement destinée à protéger quoi que ce soit (je préfère faire confiance à mon antivirus pour cette tâche), je trouve que je suis moins susceptible de faire accidentellement la mauvaise chose avec le fichier lorsque l'interface utilisateur vide mon entrée et s'assure Je voulais en fait effectuer une action.

15
phyrfox

Il y a une chose qu'aucune des autres réponses n'a mentionnée: de nombreux utilisateurs cliquent sur OK et téléchargent sans lire la fenêtre contextuelle.

Si un utilisateur télécharge accidentellement un fichier malveillant (ou a été amené à le faire), et clique OK à l'instinct sans lire et vérifier le fichier qu'ils téléchargent, ils pourraient manquer des informations de sécurité importantes telles que la taille, l'extension de type de fichier et l'emplacement du fichier sur le point d'être téléchargé.

En désactivant le OK pendant quelques secondes, Firefox oblige les utilisateurs à réfléchir à deux fois et à vérifier ce qu'ils téléchargent.

11
angussidney