为什么Firefox在安装附加组件之前会强制延迟3秒?


54

我认为Firefox在安装附加组件之前的延迟会带来安全性好处,但是对于我来说,我无法确定它是什么。(是的,我知道您可以禁用延迟。)

如果您回答此问题,请提供Firefox邮件列表或提交日志的参考。


12
问题应该是“为什么Mozilla是唯一这样做的人?”。恕我直言,每个新对话框都应在显示按钮后1秒钟启用这些按钮,因为您可能会意外地单击它(或者有人希望您在未经您同意的情况下单击它)。当我单击某个地方时,我真的很讨厌它,而在单击之前就在其中生成了一个按钮。当有人想在您点击“播放”按钮时立即打给您时,电话也会发生这种情况。
迈克,

4
“如果您回答此问题,请从Firefox邮件列表或提交日志中提供参考。” 如果这是您的要求,那么您是否可以自己搜索?
kmm

2
也许并不是那么容易找到,或者还有其他需要考虑的事情。也许这里有人会有更多内部信息-谁知道?问本身 @Kevin
slhck

我试图看看自己,但找不到信息。(我在几个小时前的编辑中这样说过,但由于某种原因而丢失了:superuser.com/users/68351/…
Natan Yellin

@aantn抱歉,我已将其删除,因为它并未真正为问题添加必要的信息。我们通常希望人们首先搜索,所以没有必要提及它:)
slhck 2011年

Answers:


71

为什么?

  • 因为他们希望您考虑自己在做什么
  • 因为它可以防止意外安装
  • 因为它可以防止恶意触发的安装

您如何恶意触发安装?

这是杰西·鲁德曼(Jesse Ruderman)撰写的有关安全对话框中竞争条件的有趣文章:

攻击的另一种形式涉及说服用户双击屏幕上的某个位置。该位置恰好是显示“是”按钮的位置。第一次单击将触发对话框。第二次单击将单击“是”按钮。我演示了针对Firefox和Mozilla的这种攻击。

错误162020开始,Firefox的解决方案是将“是” /“安装”按钮的启用延迟到对话框出现后三秒钟。我相信,这是唯一可行的解​​决方法,除了完全否认不受信任的内容构成对话框的能力。不幸的是,此修复程序对于经常安装扩展程序的用户感到沮丧。

基本上,所有这些都取决于预测用户何时单击,然后在安装对话框中拦截该单击。鲁德曼(Ruderman) Firefox的错误报告中解释了这种更为简洁的游戏情况,最终导致了延迟时间的包含。

再次总结一下,他的主要观点是:

如果我可以控制或预测用户单击的时间和位置,则可以帮助他们安装软件


延迟期有其他选择吗?

延迟期当然只是解决此问题的一种方法。每次安装某些东西时,另一个可能会拖曳 “安装”,“取消” 按钮。这是很经常使用的东西,但是它会使用户感到困惑,而不是帮助。

另一个想法是为每个对话框随机移动窗口位置。这具有与改组按钮相同的结果,即使用户感到困惑。

另外,引入随机性不是最终的解决方案。如果按钮具有键盘快捷键,则也可以拦截按键。话虽这么说,今天似乎更像是一项旧功能,因为大多数插件无论如何都是从Firefox官方插件网站安装的。


1
addons.firefox.org的安装权限不能解决此问题吗?
Natan Yellin

最可能。可以选择永久接受(就像您可以使用证书一样)-通常,它看起来更像是一个遗留的“功能”。但是我不是Firefox用户,因此我无法对此发表评论。
slhck

...很酷的演示!:)
sebastian_k

每个站点的安装权限本身并不能帮助自己,因为恶意站点可能会诱骗您单击已被授予许可的站点上的按钮。(是的,即使具有攻击性的点击劫持防御,这也不是解决的问题。)
zwol 2011年

@Zack,您能举个addons.firefox.org的例子吗?
Natan Yellin
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.