canmove, Confirmed users
285
edits
No edit summary |
No edit summary |
||
Line 20: | Line 20: | ||
|Feature open issues and risks=* What type of UX to have for allowing users to opt in (or out) of enabling plugins on a (semi)persistent basis? See below in "Use Cases". | |Feature open issues and risks=* What type of UX to have for allowing users to opt in (or out) of enabling plugins on a (semi)persistent basis? See below in "Use Cases". | ||
* | * How do we manage these click to play settings? Deliver via our existing blocklist mechanism? New system? | ||
* | * Where are the preferences to require click to play for all or specific plugins? Where are the preferences to have separate plugin permissions per-site? | ||
* | * What do the warnings show up when a user wants to enable an out of date plugin? What does the UX of the "scary warning" look like? Do we direct them to the plugin check website? Do we have two levels of warnings (scary and really scary) and what would the look like? | ||
* Adverse reactions between content plugin sniffing and click-to-play | * Adverse reactions between content plugin sniffing and click-to-play | ||
Line 45: | Line 45: | ||
Chrome has implemented something similar: http://blog.chromium.org/2011/03/mini-newsletter-from-your-google-chrome.html | Chrome has implemented something similar: http://blog.chromium.org/2011/03/mini-newsletter-from-your-google-chrome.html | ||
|Feature users and use cases=Use cases with '''proposed interactions below emphasized''': | |Feature users and use cases=Use cases with '''proposed interactions below emphasized''': | ||
# User has a plugin where mozilla has remotely required click to play because the plugin is vulnerable, but no update available | |||
# User has | |||
#* User cannot run plugin or | #* User cannot run plugin or | ||
#* '''User can run plugin after scary warning''' | #* '''User can run plugin after scary warning''' | ||
# User has a vulnerable | # User has a plugin where mozilla has remotely required click to play because the plugin is vulnerable, and an update is available | ||
#* '''User is prompted to open plugin-check/update page, but can run plugin after scary warning instead''' | #* '''User is prompted to open plugin-check/update page, but can run plugin after scary warning instead''' | ||
# User is tired of always clicking to play a given plugin (i.e. outdated flash on YouTube) | |||
#* '''User can right click on the overly and check an option to always allow this specific out-of-date version on the specific domain.''' | |||
# User is tired of always clicking to play a given plugin (i.e. YouTube | |||
#* ''' | |||
#* Jruderman has suggested a context menu instead of a click - this is a mitigation against click jacking. Could provide "Now/Always/Never" choices. | #* Jruderman has suggested a context menu instead of a click - this is a mitigation against click jacking. Could provide "Now/Always/Never" choices. | ||
# | # User has a plugin that requires click to play, but it is not visible on the page. | ||
#* '''Info bar / door hanger will show up asking if the user wants to enable the plugin.''' | |||
# A web page has multiple instances of a plugin that requires click to play | |||
#* | #* '''Clicking to play one instance of the plugin will enable that instance and all hidden instances of the plugin. Other visible instances of the plugin will not be enabled until explicitly clicked''' | ||
# | |||
#* ''' | |||
|Feature dependencies=* UX design/review | |Feature dependencies=* UX design/review | ||
* Revisions to blocklisting (or at least re-purposing of existing mechanisms) | * Revisions to blocklisting (or at least re-purposing of existing mechanisms) | ||
Line 82: | Line 64: | ||
* Reduce resource consumption by plugins | * Reduce resource consumption by plugins | ||
* Drive update of vulnerable plugins | * Drive update of vulnerable plugins | ||
* Warn of newly installed plugins | * Warn of newly installed plugins (???) | ||
Optional requirements | Optional requirements | ||
Line 88: | Line 70: | ||
* Control plugins on a per-plugin basis for a given site | * Control plugins on a per-plugin basis for a given site | ||
* Mitigate attacks where user interacts with site (clickjacking, or simply wants to run vulnerable plugin) | * Mitigate attacks where user interacts with site (clickjacking, or simply wants to run vulnerable plugin) | ||
|Feature non-goals=We can't prevent users getting owned up by vulnerable plugins if they choose to activate a plugin on a site hosting malicious payloads. That is why driving plugin updates is important. | |Feature non-goals=We can't prevent users getting owned up by vulnerable plugins if they choose to activate a plugin on a site hosting malicious payloads. That is why driving plugin updates is important.<br/> | ||
|Feature ux design=When plugins are found on a page, their start up will be delayed until a user performs interaction with the browser to enable the running of the plugin. | |||
We are not distinguishing between popular/unpopular plugins. Mozilla will not maintain a list of all plugins and their current versions. | |||
|Feature functional spec=Phase 1: | |||
Users can turn on a preference to require click to play for all plugins | |||
Phase 2: | |||
Users can turn on preferences to require click to play for specific plugins | |||
Phase 3: | |||
Users can turn on preferences to require click to play for specific plugins. | |||
Mozilla can remotely configure the users browser to require click to play for specific plugins that are out-of-date and/or vulnerable.<br/> | |||
(Note that we may allow vendors a few days or a week to update their users before remotely requiring click to play on a plugin. This will depend on the severity of the vulnerabilities in the plugin.) | |||
|Feature ux design=When "click to play" plugins are found on a page, their start up will be delayed until a user performs interaction with the browser to enable the running of the plugin. | |||
Visible plugins will have a chrome-privileged overlay that users will click on to activate the plugin. Invisible (or barely visible) plugins will cause an infobar to appear to enable all plugins on the page. | Visible plugins will have a chrome-privileged overlay that users will click on to activate the plugin. Invisible (or barely visible) plugins will cause an infobar to appear to enable all plugins on the page. | ||
|Feature implementation notes=Meta bug for the work is {{bug|738698}} | |Feature implementation notes=Meta bug for the work is {{bug|738698}} | ||