3 ms·
Firefox divides browser add-ons into several categories (as do other browsers, but I'm most familiar with the Firefox terminology), including: * Extensions *
by mbrubeck 15y ago
Firefox divides browser add-ons into several categories (as do other browsers, but I'm most familiar with the Firefox terminology), including:
* Extensions
* Plug-ins
* Search engines
* Themes
"Plug-ins" are a particular type of add-on registered to handle specific media types in <embed> and <object> elements. There are a relatively small number of common plug-ins, including Flash, Java, Silverlight, and Quicktime. They are designed to be exposed to web content, so web pages can easily test for them. The EFF Panopticlick demo uses plug-in sniffing as part of its fingerprinting.
"Extensions" are add-ons that use browser APIs to modify the behavior of the browser application. There are a huge variety of popular extensions, including Adblock Plus, Greasemonkey, Chrome To Phone, Stylish, Tree Style Tabs, etc. In general, a web page can detect an extension only if it modifies the pages or takes some other action to expose itself to scripts on the page. However, this bug report and blog post demonstrate a way for a web page to detect a Chrome extension even if it does not take such actions. And one of capo's links in this thread demonstrates a similar method that works for many Firefox extensions.
Plug-in sniffing is possible in all browsers that support plug-ins, and there's no simple fix without breaking web compatibility. Extension sniffing depends on both the browser and the extension, and there are reasonable ways it could be fixed or mitigated.