Security improvement: avoid installing an XPI

Bug reports and enhancement requests
Post Reply
Aspirant
Junior Member
Posts: 27
Joined: Mon Sep 28, 2009 12:21 am

Security improvement: avoid installing an XPI

Post by Aspirant »

In NoScript 2.1.4 and earlier, NoScript installed as a folder under
C:\Users\user_name\AppData\Roaming\Mozilla\Firefox\Profiles\profile_name\extensions\

Starting with NoScript 2.1.5, NoScript installs an XPI archive in the same location. The problem with the new NoScript structure is that it prevents other security programs from blocking reads of XPI files. Normally, I disallow Firefox reading XPI files on the standard user account (which is used by an inexperienced user). This prevents the Firefox from installing an extension downloaded by malware (outside of Firefox) on the standard user account. Starting with NoScript 2.1.5, I can't use this security rule.

My suggestion is to return NoScript to the earlier structure -- installing as a folder.
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
User avatar
therube
Ambassador
Posts: 7969
Joined: Thu Mar 19, 2009 4:17 pm
Location: Maryland USA

Re: Security improvement: avoid installing an XPI

Post by therube »

(Now what would happen if the malware installed as a folder instead of an XPI?)
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14 Pinball NoScript FlashGot AdblockPlus
Mozilla/5.0 (Windows NT 6.1; rv:9.0a2) Gecko/20111017 Firefox/9.0a2 SeaMonkey/2.6a2
User avatar
Giorgio Maone
Site Admin
Posts: 9524
Joined: Wed Mar 18, 2009 11:22 pm
Location: Palermo - Italy
Contact:

Re: Security improvement: avoid installing an XPI

Post by Giorgio Maone »

Also, reverting to the exploded folder form is unfeasible because on Firefox 4 and above there's a performance penalty.
Mozilla/5.0 (Windows NT 5.2; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Aspirant
Junior Member
Posts: 27
Joined: Mon Sep 28, 2009 12:21 am

Re: Security improvement: avoid installing an XPI

Post by Aspirant »

therube wrote:(Now what would happen if the malware installed as a folder instead of an XPI?)
Since the external security software prevents Firefox from reading XPI extension files on the standard user account, the standard user cannot install a malware extension from Firefox.
Giorgio Maone wrote:Also, reverting to the exploded folder form is unfeasible because on Firefox 4 and above there's a performance penalty.
With 6 extensions installed in Firefox, NoScript is the only one that installs as an XPI archive. Do you have information suggesting that other extensions (like Adblock Plus and Add-on Compatibility Reporter) will likely change in the future to use the installed XPI method?

Users who value speed above all else will choose Chrome/Chromium/Comodo Dragon over Firefox. Users who value security highly, but don't want the inconvenience or learning curve of NoScript, will choose Chrome/Chromium/Comodo Dragon over Firefox. This is due to Chromium-based browsers having a separate process for each tab, which reduces cross-tab/site vulnerabilities. See:
http://www.e-junkie.info/2011/10/google ... refox.html
http://blog.sudobits.com/2011/06/23/fir ... chrome-12/

Thus, users (like me) who value security above all else will choose Firefox with NoScript. Therefore, I propose that a little loss in performance is worth the improvement in security for NoScript users. My wife and I are very happy with the speed of Firefox 7 with NoScript 2.1.4. However, we don't want to miss bug fixes and improvements in NoScript as it evolves.
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
al_9x
Master Bug Buster
Posts: 931
Joined: Thu Mar 19, 2009 4:52 pm

Re: Security improvement: avoid installing an XPI

Post by al_9x »

Not unpacking XPIs has been the default since Fx 4.0. Most extensions (not just NS) do not explicitly request unpacking, however you can force it with the "extensions.alwaysUnpack" pref.

Also, you should know that if you are blocking xpi read by file extension, this can be bypassed by giving a local xpi a different extension and browsing for it from the add-ons manager (install add-on from file).
Mozilla/5.0 (Windows NT 5.1; rv:8.0) Gecko/20100101 Firefox/8.0
Aspirant
Junior Member
Posts: 27
Joined: Mon Sep 28, 2009 12:21 am

Re: Security improvement: avoid installing an XPI

Post by Aspirant »

Thanks al_9x. I will try that about:config preference. I guess that my other extensions remain unpacked because I haven't upgraded them since upgrading Firefox from 3.6 directly to 7.0.

Now that I have NoScript installed packed, if I set extensions.alwaysUnpack=True and install NoScript again, will Firefox correctly uninstall the packed NoScript?
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
User avatar
GµårÐïåñ
Lieutenant Colonel
Posts: 3369
Joined: Fri Mar 20, 2009 5:19 am
Location: PST - USA
Contact:

Re: Security improvement: avoid installing an XPI

Post by GµårÐïåñ »

Aspirant wrote:Now that I have NoScript installed packed, if I set extensions.alwaysUnpack=True and install NoScript again, will Firefox correctly uninstall the packed NoScript?
It "should" yes.
~.:[ Lï£ê ï§ å Lêmðñ åñÐ Ì Wåñ† M¥ Mðñê¥ ßå¢k ]:.~
________________ .: [ Major Mike's ] :. ________________
Mozilla/6.9 (Windows NT 6.9; rv:6.9) Gecko/69696969 Firefox/6.9
Aspirant
Junior Member
Posts: 27
Joined: Mon Sep 28, 2009 12:21 am

Re: Security improvement: avoid installing an XPI

Post by Aspirant »

Setting extensions.alwaysUnpack=True in about:config solved my problem for NoScript today, and it will prevent the same problem for other extensions. No change to NoScript is needed. Thanks again al_9x.
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
JoeSmall
Posts: 1
Joined: Wed Jan 18, 2012 3:49 pm

Re: Security improvement: avoid installing an XPI

Post by JoeSmall »

Where do we put the extensions.alwaysUnpack pref?
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.75 Safari/535.7
User avatar
therube
Ambassador
Posts: 7969
Joined: Thu Mar 19, 2009 4:17 pm
Location: Maryland USA

Re: Security improvement: avoid installing an XPI

Post by therube »

It's already there.
Just toggle its value in about:config.
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14 Pinball NoScript FlashGot AdblockPlus
Mozilla/5.0 (Windows NT 5.1; rv:11.0a2) Gecko/20120117 Firefox/11.0a2 SeaMonkey/2.8a2
Post Reply