|
|
Log in / Subscribe / Register

Security

The Firefox extension war

By Jake Edge
May 6, 2009

By now, the escalating battle between the NoScript and Adblock Plus Firefox extensions is fairly well-publicized. In fact, the LWN comment thread on the topic has attracted an enormous number of comments—though many are rather tangential to the actual issue. While the original dispute has been settled, there are still a few issues to ponder from that incident.

For those who didn't follow the dispute, a review is probably in order. Both NoScript and Adblock Plus are meant to assist users in controlling the content that their browsers display. As their names imply, NoScript is focused on blocking things like Javascript, Flash, and the like, whereas Adblock Plus blocks advertisements. There is some overlap between the two, of course, because much of the advertising on the web is served via Javascript and/or contains Flash content.

NoScript's author, Giorgio Maone, uses advertising on the NoScript web pages to help fund development of the extension, which is part of why the frequently-updated extension opens a tab on the release notes page after an update. This particular feature—which can be disabled fairly easily—is quite annoying to some. Part of that annoyance may be because of the ads on that page. In late April, Adblock Plus added the NoScript site to its filter list so that its users would no longer see the ads. That led to an arms race.

The NoScript and Adblock Plus developers went back and forth, with NoScript circumventing the filters and Adblock Plus adding new filters to block the ads. This continued until the Adblock Plus filter fundamentally broke the NoScript site so that users could no longer even see the links to download NoScript. This sent Maone around the bend, evidently, as his next step was to add obfuscated code—though the extent of the obfuscation is disputed—to NoScript that disabled the Adblock Plus filter for his site.

At that point, Adblock Plus author Wladimir Palant wrote a blistering blog post about the dispute, which brought it to the attention of many. Maone quickly backed down, offering a detailed and seemingly heartfelt apology. In the meantime, though, the folks at addons.mozilla.org (AMO) noticed the problem and are considering changes to their policy on legitimate extension behavior.

It should be noted that AMO did not review the NoScript changes (or, presumably, the Adblock Plus filter changes) before the updates were made available to users. As Maone explains, once an extension reaches a certain level of trust, the AMO reviewers do not check updates—they are approved automatically. It is unclear how that process works exactly, but given the number of escalating changes both extensions were making over a short period of time, some kind of minimal oversight might have noticed that something was amiss.

For someone of malicious intent, as opposed to someone just exhibiting some incredibly bad judgment, a Firefox extension makes a pretty tempting target. Much of what goes on inside the browser involves sensitive information which users do not wish to have exposed (passwords, browsing history, etc.). If an extension can get to the point where it can push out "trusted" updates, without any review, that seems rather troubling.

Some distributions—Debian at least—package Firefox extensions for their users. Though it isn't a foolproof solution, it does add a level of review to the code before it gets installed. It probably makes sense for other distributions to consider doing that as well. Changing the AMO policy is certainly a good idea, but it will hardly protect against attackers of various sorts.

While there is nothing wrong with supporting development via advertising, clearly Maone crossed the line. Adblock Plus users specifically want ad blocking, so turning that functionality off, even "just" for one site, is plain wrong. Maone seems to recognize that now and this dispute will hopefully serve as a warning to other extension authors before they allow their anger to get in the way of their good sense. For the rest of us, though, it serves as a reminder that we are sometimes, perhaps even frequently, installing software in our browsers that has had little or no oversight.

Comments (3 posted)

New vulnerabilities

apache: information leak

Package(s):apache CVE #(s):CVE-2009-1191
Created:May 1, 2009 Updated:December 7, 2009
Description: From the Mandriva advisory: mod_proxy_ajp.c in the mod_proxy_ajp module in the Apache HTTP Server 2.2.11 allows remote attackers to obtain sensitive response data, intended for a client that sent an earlier POST request with no request body, via an HTTP request.
Alerts:
Mandriva MDVSA-2009:323 apache 2009-12-07
Fedora FEDORA-2009-8812 httpd 2009-08-20
Slackware SSA:2009-214-01 httpd 2009-08-03
Gentoo 200907-04 apache 2009-07-12
Ubuntu USN-787-1 apache2 2009-06-12
Mandriva MDVSA-2009:102 apache 2009-04-30

Comments (none posted)

Apport: arbitrary file removal

Package(s):Apport CVE #(s):CVE-2009-1295
Created:April 30, 2009 Updated:May 13, 2009
Description: From the Ubuntu alert: Stephane Chazelas discovered that Apport did not safely remove files from its crash report directory. If Apport had been enabled at some point, a local attacker could remove arbitrary files from the system.
Alerts:
SuSE SUSE-SR:2009:010 firefox apport evolution freetype2 java_1_4_2-ibm kdegraphics3 libopenssl libsoup xulrunner opensc python-crypto unbound xpdf 2009-05-12
Ubuntu USN-768-1 Apport 2009-04-29

Comments (none posted)

bash-completion: incorrect metacharacter quoting

Package(s):bash-completion CVE #(s):
Created:May 4, 2009 Updated:May 6, 2009
Description:

From the Red Hat bugzilla:

An old Debian bug report (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=259987) indicates that some bash completions fail to properly quote or escape special characters like ' and &. Most bash completions are escaped fine, but certain ones (such as aspell) do not.

Alerts:
Fedora FEDORA-2009-3639 bash-completion 2009-04-14
Fedora FEDORA-2009-3640 bash-completion 2009-04-14

Comments (none posted)

clamav: incorrect ownership

Package(s):clamav CVE #(s):
Created:May 5, 2009 Updated:May 6, 2009
Description: From the Ubuntu advisory: A flaw was discovered in the clamav-milter initscript which caused the ownership of the current working directory to be changed to the 'clamav' user.
Alerts:
Ubuntu USN-770-1 clamav 2009-05-04

Comments (none posted)

drupal: multiple vulnerabilities

Package(s):drupal CVE #(s):CVE-2008-3661
Created:May 4, 2009 Updated:May 6, 2009
Description:

From the Drupal advisory:

Certain byte sequences that are valid in the UTF-8 specification are potentially dangerous when interpreted as UTF-7. Internet Explorer 6 and 7 may decode these characters as UTF-7 if they appear before the tag that specifies the page content as UTF-8, despite the fact that Drupal also sends a real HTTP header specifying the content as UTF-8. This behaviour enables malicious users to insert and execute Javascript in the context of the website if site visitors are allowed to post content.

In addition, Drupal core also has a very limited information disclosure vulnerability under very specific conditions. If a user is tricked into visiting the site via a specially crafted URL and then submits a form (such as the search box) from that page, the information in their form submission may be directed to a third-party site determined by the URL and thus disclosed to the third party. The third party site may then execute a CSRF attack against the submitted form.

Alerts:
Debian DSA-1792-1 drupal6 2009-05-06
Fedora FEDORA-2009-4175 drupal 2009-05-02
Fedora FEDORA-2009-4203 drupal 2009-05-02

Comments (none posted)

gpdf: buffer overflows

Package(s):gpdf CVE #(s):CVE-2009-0195
Created:May 1, 2009 Updated:August 18, 2010
Description: From the Red Hat advisory: Multiple buffer overflows in JBIG2 decoder (setBitmap, readSymbolDictSeg).
Alerts:
Gentoo 201310-03 poppler 2013-10-06
Ubuntu USN-973-1 koffice 2010-08-17
CentOS CESA-2010:0400 tetex 2010-05-28
Mandriva MDVSA-2010:096 tetex 2010-05-17
CentOS CESA-2010:0399 tetex 2010-05-08
Red Hat RHSA-2010:0400-01 tetex 2010-05-06
Red Hat RHSA-2010:0399-01 tetex 2010-05-06
Mandriva MDVSA-2010:087 poppler 2010-04-29
Mandriva MDVSA-2009:282-1 cups 2009-12-07
Mandriva MDVSA-2009:283 cups 2009-10-19
Mandriva MDVSA-2009:282 cups 2009-10-19
CentOS CESA-2009:0480 poppler 2009-05-15
Red Hat RHSA-2009:0480-01 poppler 2009-05-13
CentOS CESA-2009:0458 gpdf 2009-05-03
Red Hat RHSA-2009:0458-01 gpdf 2009-04-30

Comments (none posted)

kernel: denial of service

Package(s):linux-2.6.24 CVE #(s):CVE-2008-5701
Created:May 4, 2009 Updated:May 7, 2009
Description:

From the Debian advisory:

Vlad Malov reported an issue on 64-bit MIPS systems where a local user could cause a system crash by crafing a malicious binary which makes o32 syscalls with a number less than 4000.

Alerts:
Debian DSA-1794-1 linux-2.6 2009-05-06
Debian DSA-1787-1 linux-2.6.24 2009-05-02

Comments (none posted)

kernel: multiple vulnerabilities

Package(s):linux-2.6.24 CVE #(s):CVE-2009-1192 CVE-2009-1242 CVE-2009-1265 CVE-2009-1337 CVE-2009-1338 CVE-2009-1439
Created:May 4, 2009 Updated:November 16, 2009
Description:

From the Debian advisory:

CVE-2009-1192: Shaohua Li reported an issue in the AGP subsystem they may allow local users to read sensitive kernel memory due to a leak of uninitialized memory.

CVE-2009-1242: Benjamin Gilbert reported a local denial of service vulnerability in the KVM VMX implementation that allows local users to trigger an oops.

CVE-2009-1265: Thomas Pollet reported an overflow in the af_rose implementation that allows remote attackers to retrieve uninitialized kernel memory that may contain sensitive data.

CVE-2009-1337: Oleg Nesterov discovered an issue in the exit_notify function that allows local users to send an arbitrary signal to a process by running a program that modifies the exit_signal field and then uses an exec system call to launch a setuid application.

CVE-2009-1338: Daniel Hokka Zakrisson discovered that a kill(-1) is permitted to reach processes outside of the current process namespace.

CVE-2009-1439: Pavan Naregundi reported an issue in the CIFS filesystem code that allows remote users to overwrite memory via a long nativeFileSystem field in a Tree Connect response during mount.

Alerts:
SuSE SUSE-SA:2009:055 kernel 2009-11-12
Red Hat RHSA-2009:1211-01 kernel 2009-08-13
SuSE SUSE-SA:2009:056 kernel 2009-11-16
SuSE SUSE-SA:2009:054 kernel 2009-11-11
Ubuntu USN-793-1 linux, linux-source-2.6.15 2009-07-02
Red Hat RHSA-2009:1132-01 kernel 2009-06-30
CentOS CESA-2009:1106 kernel 2009-06-19
Mandriva MDVSA-2009:135 kernel 2009-06-17
Red Hat RHSA-2009:1106-01 kernel 2009-06-16
CentOS CESA-2009:1550 kernel 2009-11-04
Red Hat RHSA-2009:1550-01 kernel 2009-11-03
SuSE SUSE-SA:2009:033 kernel 2009-06-16
SuSE SUSE-SA:2009:032 kernel 2009-06-09
SuSE SUSE-SA:2009:031 kernel 2009-06-09
SuSE SUSE-SA:2009:030 kernel 2009-06-08
Red Hat RHSA-2009:1081-01 kernel-rt 2009-06-03
Red Hat RHSA-2009:1077-01 kernel 2009-06-02
Fedora FEDORA-2009-5383 kernel 2009-05-25
Fedora FEDORA-2009-5356 kernel 2009-05-25
SuSE SUSE-SA:2009:028 kernel 2009-05-20
Mandriva MDVSA-2009:119 kernel 2009-05-19
Debian DSA-1800-1 linux-2.6 2009-05-15
Red Hat RHSA-2009:1024-01 kernel 2009-05-18
rPath rPSA-2009-0084-1 kernel 2009-05-15
CentOS CESA-2009:0473 kernel 2009-05-07
Red Hat RHSA-2009:0473-01 kernel 2009-05-07
Debian DSA-1794-1 linux-2.6 2009-05-06
Debian DSA-1787-1 linux-2.6.24 2009-05-02

Comments (none posted)

libwmf: pointer use-after-free flaw

Package(s):libwmf CVE #(s):CVE-2009-1364
Created:May 1, 2009 Updated:December 3, 2009
Description: From the Red Hat advisory: A pointer use-after-free flaw was found in the GD graphics library embedded in libwmf. An attacker could create a specially-crafted WMF file that would cause an application using libwmf to crash or, potentially, execute arbitrary code as the user running the application when opened by a victim.
Alerts:
Arch Linux ASA-201701-1 libwmf 2017-01-01
openSUSE openSUSE-SU-2015:1134-1 libwmf 2015-06-24
Mandriva MDVSA-2009:106-1 libwmf 2009-12-03
Gentoo 200907-01 libwmf 2009-07-02
SuSE SUSE-SR:2009:011 java, realplayer, acroread, apache2-mod_security2, cyrus-sasl, wireshark, ganglia-monitor-core, ghostscript-devel, libwmf, libxine1, net-snmp, ntp, openssl 2009-06-09
Fedora FEDORA-2009-5518 libwmf 2009-05-27
Fedora FEDORA-2009-5524 libwmf 2009-05-27
Fedora FEDORA-2009-5517 libwmf 2009-05-27
Debian DSA-1796-1 libwmf 2009-04-07
Mandriva MDVSA-2009:106 libwmf 2009-05-05
Ubuntu USN-769-1 libwmf 2009-05-04
CentOS CESA-2009:0457 libwmf 2009-05-03
Red Hat RHSA-2009:0457-01 libwmf 2009-04-30

Comments (none posted)

memcached: information leak

Package(s):memcached CVE #(s):CVE-2009-1255 CVE-2009-1494
Created:May 4, 2009 Updated:August 11, 2009
Description:

From the Mandriva advisory:

The process_stat function in Memcached prior 1.2.8 discloses memory-allocation statistics in response to a stats malloc command, which allows remote attackers to obtain potentially sensitive information by sending this command to the daemon's TCP port (CVE-2009-1255, CVE-2009-1494).

Alerts:
SuSE SUSE-SR:2009:013 memcached, libtiff/libtiff3, nagios, libsndfile, gaim/finch, open-, strong, freeswan, libapr-util1, websphere-as_ce, libxml2 2009-08-11
Fedora FEDORA-2009-4542 memcached 2009-05-08
Fedora FEDORA-2009-4199 memcached 2009-05-02
Mandriva MDVSA-2009:105 memcached 2009-05-04

Comments (none posted)

moin: cross-site scripting

Package(s):moin CVE #(s):CVE-2009-1482
Created:May 6, 2009 Updated:May 11, 2009
Description:

From the Debian advisory:

It was discovered that the AttachFile action in moin, a python clone of WikiWiki, is prone to cross-site scripting attacks when renaming attachements or performing other sub-actions.

Alerts:
Ubuntu USN-774-1 moin 2009-05-11
Debian DSA-1791-1 moin 2009-05-06

Comments (none posted)

pam_ssh: information (user account existence) leak

Package(s):pam_ssh CVE #(s):CVE-2009-1273
Created:May 4, 2009 Updated:May 6, 2009
Description:

From the Red Hat bugzilla:

A security flaw was found in PAM module, providing user authentication based on SSH keys. A remote attacker could use this flaw to recognize, if some username/login belongs to set of user accounts, existing on the system, and subsequently perform dictionary based password guess attack.

Alerts:
Fedora FEDORA-2009-3500 pam_ssh 2009-04-13
Fedora FEDORA-2009-3627 pam_ssh 2009-04-13

Comments (none posted)

prelude-manager: database password in world-readable configuration

Package(s):prelude-manager CVE #(s):
Created:May 4, 2009 Updated:May 6, 2009
Description:

From the Fedora advisory:

The configuration file of prelude-manager contains a database password and is world readable. This update restricts permissions to the root account.

Alerts:
Fedora FEDORA-2009-3931 prelude-manager 2009-04-27
Fedora FEDORA-2009-4044 prelude-manager 2009-04-27

Comments (none posted)

quagga: improper assertion

Package(s):quagga CVE #(s):
Created:May 5, 2009 Updated:May 6, 2009
Description: From the Debian advisory: It was discovered that Quagga, an IP routing daemon, could no longer process the Internet routing table due to broken handling of multiple 4-byte AS numbers in an AS path. If such a prefix is received, the BGP daemon crashes with an assert failure, leading to a denial of service.
Alerts:
Debian DSA-1788-1 quagga 2009-05-04

Comments (none posted)

ruby: denial of service

Package(s):ruby CVE #(s):
Created:May 1, 2009 Updated:May 6, 2009
Description: From the ruby advisory: There is a DoS vulnerability in the REXML library included in the Ruby Standard Library. A so-called "XML entity explosion" attack technique can be used for remotely bringing down (disabling) any application which parses user-provided XML using REXML.
Alerts:
Slackware SSA:2009-120-01 ruby 2009-05-01

Comments (none posted)

Page editor: Jake Edge
Next page: Kernel development>>


Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds