LWN.net Logo

Security

Privacyfix

By Michael Kerrisk
October 24, 2012

As even moderately sophisticated users of the web are aware by now, the great majority of web sites that we visit have a keen interest in tracking their users. At the simplest end of the scale, visitor tracking takes the form of web server logs that record the source IP address of an HTTP request, the HTTP request itself, and the browser's user agent string. Further along the scale are simple cookie-based systems used to track the number of unique visitors to a site or to track each user's navigation around a site. Going further still are the cookie-based systems and widget-based systems (Facebook's "like" buttons, Google's "+1" buttons, and the like) that an increasing number of companies are using to track users' surfing habits across web sites, typically to gather a picture of our browsing habits in order to target us with more "personalized" advertising.

Furthermore, many of the free web services to which we provide any kind of personal information have a keen interest in monetizing that information as far their stated privacy policies allow. And in some cases those companies are prepared to be flexible about their policies when it suits their business goals. To take just one of the most noted examples, Facebook's constantly morphing range of privacy settings, and their defaults, appear to be designed more to suit the requirements of Facebook's paying advertisers rather than its users. As has been pithily observed, "if you are not paying for it, you're not the customer; you're the product being sold."

However, even for sophisticated users, preventing tracking and controlling the privacy of personal data can be challenging. Less sophisticated users can have trouble to even find which part of a web service's interface is used to control the privacy settings that determine how a company uses their data. While many users may be aware of cookies, probably only a minority actively try to control their use. And few of us have any idea how much the information that we provide to free web services might be worth to the companies providing the services.

Privacyfix, a plug-in for the Firefox and Chrome browsers released earlier this month, aims to educate users on how they are tracked and how their personal data is used; it also assists them with the task of locking down the privacy of their personal data on some web services. And perhaps most eye-catchingly, it attempts to give the user an estimate of the value of their web surfing habits for a couple of the web service giants. The plug-in is free as in beer, but while the web site mentions some collaborations with open source projects, no mention is made of the plug-in itself as being under a free license; one assumes that it is not.

Installation of the plug-in is accomplished by clicking a link on the Privacyfix home page. The actual installation takes just a few seconds, but is followed by a set-up phase whose duration depends on the speed of the user's Internet link. During this phase the plug-in is downloading a data set containing information about a large number of commonly used web sites. The Privacyfix FAQ emphasizes that the data exchange that is going on at this point is almost entirely one way. No browser information (such as cookies, history, or bookmarks) is sent to the Privacyfix site. The only information that goes to the site is unavoidable technical information such as the user's IP address, which PrivacyChoice, the company that produces the plug-in, claims to delete immediately.

Once the download is complete, the plug-in analyzes your browser's cookies and browser history, and—if you are logged in—your Facebook privacy settings and Google account settings to give you a picture of just how tracked your life on the web is. The plug-in then presents its results in a tabbed browser display of the form shown to the right.

[Privacyfix Facebook tab] The first two tabs provide information relating to the two web giants, Facebook and Google. In the lower right portion of each tab, the plug-in gives an indication of the extent to which your browsing is tracked or analyzed, and, based on the last 60 days of browser activity, estimates the annual monetary value of your browsing habits to the service. Based on the database of web sites that Privacyfix checks, the plug-in provides an indication of just how pervasive Facebook tracking is: an astonishing 83% of the sites that I visited are tracked by Facebook. In addition, I was informed that Facebook makes just a few US cents per year at my level of activity. Although my usage of Facebook is so low as to almost put me in the non-user category, this does seem like an underestimate, especially given the fact that Privacyfix tells me that Facebook tracks so many of the sites I visit. The developers note that these monetary estimates are based on the work of TREFIS, a company that estimates the monetization of users' interaction with major web services; the estimates shown by Privacyfix are necessarily imprecise.

The right-hand side of the browser display is more practically interesting. A series of horizontal bands provides visual feedback on how locked down your Facebook privacy settings are; hovering the mouse over each indicator provides further explanation about the setting. In this display, a green band indicates that Privacyfix considers your current setting to be good from a privacy point of view. An orange band indicates a setting that needs attention; the display shown above indicates what one unsophisticated Facebook user in this editor's household sees when using the "Facebook" tab. (And yes, there will be a talk at home tonight about Facebook privacy settings.)

Simply reading the pop-up explanation on each privacy indicator is informative; I didn't previously know that Facebook may automatically share my profile information when I visit certain web sites. One of the nice features of the plug-in is that each of the indicators can be clicked to change the privacy setting, typically by navigating the user to the appropriate part of the Facebook web interface that controls the setting—a boon to those who have, like your editor, struggled to navigate around Facebook's privacy settings. Once the settings have been changed (in any way), Privacyfix sets the corresponding indicator green.

Privacyfix takes a policy-neutral approach to your privacy settings. It will indicate privacy settings that may need attention, but won't automatically change any settings for you. The rationale for that approach is that you may have some quite practical reasons for surrendering some level of privacy; for example, disabling Facebook's "like" button may interfere with the rendering of some web pages. Similarly, disabling Google's recording of your web search history means that future searches may lead to less personalized results. Privacyfix leaves the user to make those choices.

The display in the "Google" tab is similar to the Facebook tab. The lower right portion tells me that Google collects data on 60% of the pages I visited in the last 60 days. The big surprise here is the monetary value of my browsing habits for Google: Privacyfix estimates these at US$1179 per year. Although I spend a lot of the day on the web, this number does seem implausibly high, especially when compared to the Facebook number. However, the point is made: our browsing habits are worth a lot of money to Google. Again, a set of clickable indicators on the right-hand side of the display provides a basic education on how Google uses data about the user and allows privacy settings to be changed.

The "Websites" tab displays the favicons of web sites that the user has visited that Privacyfix has rated as having some privacy issues, based on the sites' privacy policies. Sites that share data outside the parent company and its affiliates are placed in a special section at the top of the display. (I was surprised to find that the Deutsche Bahn, the German railway company, reserves the right to share the personal data that I've given to them with third parties.) A "fix" button in this part of the display allows you to automatically generate an email requesting removal of personal data on these sites; of course, in many cases there is no guarantee that such a request will be honored. Clicking each favicon drills down to a page displaying further information about the corresponding web site's policies and which other companies track your visits to the site and what their tracking policies are. [Privacyfix Google healthbar]

Privacyfix's "Tracking" tab provides a visual overview of which companies are currently using tracking cookies to monitor user visits. This sort of visual display provides an impressive reminder of just how tracked we are: most frequent web users are likely to see that they are tracked by at least a couple of hundred web sites. Again, each icon is clickable, leading to further information about the site's tracking policies, and there are "fix" buttons to disable tracking cookies and ad tracking.

The final tab, "Healthbar", places a "privacy health" button at the far right of the browser address bar. While browsing the web, you can click this button to obtain a pop-up privacy assessment of the site, if it is one of those in the Privacyfix database. To the right is Privacyfix's health display for Google.com. Again, this sort of display is an effective tool for educating users about web privacy. Most of the web sites that I visited that Privacyfix knows about showed at least some orange indicators to indicate potential privacy issues; notably, Wikipedia had a clean green bill of health.

When it comes to understanding and controlling how our private data is used on the web, Privacyfix seems a useful tool on many dimensions. First and foremost among these is its use as an educational tool for web users of all levels of sophistication to gain a better understanding of how they are tracked on the web and to learn about the privacy policies of the companies who are tracking them. Increasing user understanding in this area can only be a good thing, inasmuch as it may lead to greater public pressure on companies to act according to more ethical privacy and tracking policies.

Comments (5 posted)

Brief items

Security quotes of the week

Because of their proprietary nature and narrowly-specified license and approval guidelines, medical devices are actually more at risk of catching computer viruses because they are often outdated, unprotected, and unable to be modified or upgraded.
-- NaturalNews learns that not just the patients in a hospital have viruses

Criminals no longer need to stake out a home or a business to monitor the inhabitants' comings and goings. Now they can simply pick up wireless signals broadcast by the building's utility meters… Because energy usage often drops to near zero when a house is empty, the readings could be used to identify which owners are at work or on holiday.
-- New Scientist

We demonstrate that SSL certificate validation is completely broken in many security-critical applications and libraries. Vulnerable software includes Amazon's EC2 Java library and all cloud clients based on it; Amazon's and PayPal's merchant SDKs responsible for transmitting payment details from e-commerce sites to payment gateways; integrated shopping carts such as osCommerce, ZenCart, Ubercart, and PrestaShop; AdMob code used by mobile websites; Chase mobile banking and several other Android apps and libraries; Java Web-services middleware - including Apache Axis, Axis 2, Codehaus XFire, and Pusher library for Android - and all applications employing this middleware. Any SSL connection from any of these programs is insecure against a man-in-the-middle attack.
-- From a paper by M. Georgiev, S. Iyengar, S. Jana, R. Anubhai, D. Boneh, and V. Shmatikov

Comments (16 posted)

New vulnerabilities

chromium: multiple vulnerabilities

Package(s):chromium CVE #(s):CVE-2012-2874 CVE-2012-2876 CVE-2012-2877 CVE-2012-2878 CVE-2012-2879 CVE-2012-2880 CVE-2012-2881 CVE-2012-2882 CVE-2012-2883 CVE-2012-2884 CVE-2012-2885 CVE-2012-2886 CVE-2012-2887 CVE-2012-2888 CVE-2012-2889 CVE-2012-2891 CVE-2012-2892 CVE-2012-2894 CVE-2012-2896 CVE-2012-2900 CVE-2012-5108 CVE-2012-5110 CVE-2012-5111 CVE-2012-5112 CVE-2012-5376
Created:October 22, 2012 Updated:October 24, 2012
Description: There are multiple vulnerabilities in versions of Chromium before 22.0.1229.94. See the CVE entries for more information.
Alerts:
Gentoo 201210-07 2012-10-21
openSUSE openSUSE-SU-2012:1376-1 2012-10-22
Mageia MGASA-2013-0136 2013-05-09

Comments (none posted)

claws-mail: denial of service

Package(s):claws-mail CVE #(s):CVE-2012-4507
Created:October 22, 2012 Updated:November 6, 2012
Description: From the CVE entry:

The strchr function in procmime.c in Claws Mail (aka claws-mail) 3.8.1 and earlier allows remote attackers to cause a denial of service (NULL pointer dereference and crash) via a crafted email.

Alerts:
openSUSE openSUSE-SU-2012:1374-1 2012-10-22
Mageia MGASA-2012-0318 2012-10-30
Fedora FEDORA-2012-16753 2012-11-06
Fedora FEDORA-2012-16772 2012-11-06

Comments (none posted)

cups-pk-helper: privilege escalation

Package(s):cups-pk-helper CVE #(s):CVE-2012-4510
Created:October 24, 2012 Updated:April 9, 2013
Description: From the Debian advisory:

cups-pk-helper, a PolicyKit helper to configure cups with fine-grained privileges, wraps CUPS function calls in an insecure way. This could lead to uploading sensitive data to a cups resource, or overwriting specific files with the content of a cups resource. The user would have to explicitly approve the action.

Alerts:
Debian DSA-2562-1 2012-10-23
Mageia MGASA-2012-0310 2012-10-29
Fedora FEDORA-2012-18950 2012-12-11
Fedora FEDORA-2012-18927 2012-12-11
Mandriva MDVSA-2013:069 2013-04-08

Comments (none posted)

gitolite: directory traversal vulnerability

Package(s):gitolite3 CVE #(s):CVE-2012-4506
Created:October 24, 2012 Updated:October 24, 2012
Description: From the CVE: Directory traversal vulnerability in gitolite 3.x before 3.1, when wild card repositories and a pattern matching "../" are enabled, allows remote authenticated users to create arbitrary repositories and possibly perform other actions via a .. (dot dot) in a repository name.
Alerts:
Fedora FEDORA-2012-15746 2012-10-18
Fedora FEDORA-2012-15731 2012-10-18

Comments (none posted)

haproxy: code execution

Package(s):haproxy CVE #(s):CVE-2012-2942
Created:October 23, 2012 Updated:January 9, 2013
Description: From the CVE entry:

Buffer overflow in the trash buffer in the header capture functionality in HAProxy before 1.4.21, when global.tune.bufsize is set to a value greater than the default and header rewriting is enabled, allows remote attackers to cause a denial of service and possibly execute arbitrary code via unspecified vectors.

Alerts:
Fedora FEDORA-2012-16033 2012-10-23
Fedora FEDORA-2012-16056 2012-10-23
Gentoo 201301-02 2013-01-08
Ubuntu USN-1800-1 2013-04-15

Comments (none posted)

java-1.7.0-oracle: multiple unspecified vulnerabilities

Package(s):java-1.7.0-oracle CVE #(s):CVE-2012-1531 CVE-2012-1532 CVE-2012-1533 CVE-2012-3143 CVE-2012-3159 CVE-2012-5067 CVE-2012-5083
Created:October 19, 2012 Updated:December 3, 2012
Description:

From the Red Hat advisory:

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier, 6 Update 35 and earlier, 5.0 Update 36 and earlier, and 1.4.2_38 and earlier; and JavaFX 2.2 and earlier; allows remote attackers to affect confidentiality, integrity, and availability via unknown vectors related to 2D. (CVE-2012-1531)

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier and 6 Update 35 and earlier allows remote attackers to affect confidentiality, integrity, and availability via unknown vectors related to Deployment. (CVE-2012-1532)

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier, and 6 Update 35 and earlier, allows remote attackers to affect confidentiality, integrity, and availability via unknown vectors related to Deployment. (CVE-2012-1533)

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier, 6 Update 35 and earlier, and 5.0 Update 36 and earlier allows remote attackers to affect confidentiality, integrity, and availability, related to JMX. (CVE-2012-3143)

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier, and 6 Update 35 and earlier, allows remote attackers to affect confidentiality, integrity, and availability via unknown vectors related to Deployment. (CVE-2012-3159)

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allows remote attackers to affect confidentiality via unknown vectors related to Deployment. (CVE-2012-3167)

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier, 6 Update 35 and earlier, 5.0 Update 36 and earlier, 1.4.2_38 and earlier, and JavaFX 2.2 and earlier allows remote attackers to affect confidentiality, integrity, and availability via unknown vectors related to 2D. (CVE-2012-3183)

Alerts:
Red Hat RHSA-2012:1391-01 2012-10-18
SUSE SUSE-SU-2012:1398-1 2012-10-24
Scientific Linux SL-java-20121030 2012-10-30
Red Hat RHSA-2012:1465-01 2012-11-15
Red Hat RHSA-2012:1466-01 2012-11-15
Red Hat RHSA-2012:1467-01 2012-11-15
SUSE SUSE-SU-2012:1489-1 2012-11-16
SUSE SUSE-SU-2012:1490-1 2012-11-16
SUSE SUSE-SU-2012:1489-2 2012-11-21
Red Hat RHSA-2012:1485-01 2012-11-22
SUSE SUSE-SU-2012:1588-1 2012-11-28
SUSE SUSE-SU-2012:1595-1 2012-11-30

Comments (none posted)

libproxy: code execution

Package(s):libproxy CVE #(s):CVE-2012-4504 CVE-2012-4505
Created:October 22, 2012 Updated:March 11, 2013
Description: From the Ubuntu advisory:

Tomas Mraz discovered that libproxy incorrectly handled certain PAC files. A remote attacker could use this issue to cause libproxy to crash, or to possibly execute arbitrary code.

Alerts:
openSUSE openSUSE-SU-2012:1375-1 2012-10-22
Mageia MGASA-2012-0309 2012-10-29
Debian DSA-2571-1 2012-11-04
Ubuntu USN-1629-1 2012-11-12
Red Hat RHSA-2012:1461-01 2012-11-14
CentOS CESA-2012:1461 2012-11-15
Oracle ELSA-2012-1461 2012-11-14
Scientific Linux SL-libp-20121115 2012-11-15
Mandriva MDVSA-2012:172 2012-11-19
Fedora FEDORA-2012-17574 2012-11-19

Comments (none posted)

mom: denial of service

Package(s):mom CVE #(s):CVE-2012-4480
Created:October 18, 2012 Updated:October 24, 2012
Description:

From the Fedora advisory:

Florian Weimer of the Red Hat Product Security Team found [1] that mom created PID files in /var/run as world-writable. This could allow a malicious local attacker to edit the PID file and on mom shutdown or restart, to kill some other process than the mom process, that they would not normally have access to terminate.

This is fixed upstream [2].

[1] https://bugzilla.redhat.com/show_bug.cgi?id=863178

[2] http://gerrit.ovirt.org/#/c/8366/

Alerts:
Fedora FEDORA-2012-15496 2012-10-18

Comments (none posted)

ruby: unintended file creation

Package(s):ruby CVE #(s):CVE-2012-4522
Created:October 22, 2012 Updated:January 17, 2013
Description: From the Red Hat bugzilla:

An upstream Ruby security notice indicated that ruby suffered from a flaw where unintended files could be created if they contained a NUL characer in the file path or name. Certain methods like IO#open did not check the filename passed to them, and just passed those strings to lower layer routines, which could lead to unintentional files being created

Alerts:
Fedora FEDORA-2012-16086 2012-10-22
Ubuntu USN-1614-1 2012-10-22
Oracle ELSA-2013-0129 2013-01-12
Scientific Linux SL-ruby-20130116 2013-01-16
CentOS CESA-2013:0129 2013-01-09
Red Hat RHSA-2013:0582-01 2013-02-28
openSUSE openSUSE-SU-2013:0376-1 2013-03-01

Comments (none posted)

tiff: code execution

Package(s):tiff CVE #(s):CVE-2012-4447
Created:October 22, 2012 Updated:December 31, 2012
Description: From the Debian advisory:

It was discovered that a buffer overflow in libtiff's parsing of files using PixarLog compression could lead to the execution of arbitrary code.

Alerts:
Debian DSA-2561-1 2012-10-21
Mageia MGASA-2012-0317 2012-10-29
Ubuntu USN-1631-1 2012-11-15
Mandriva MDVSA-2012:174 2012-11-22
Red Hat RHSA-2012:1590-01 2012-12-18
CentOS CESA-2012:1590 2012-12-19
CentOS CESA-2012:1590 2012-12-19
Oracle ELSA-2012-1590 2012-12-18
Oracle ELSA-2012-1590 2012-12-19
Scientific Linux SL-libt-20121219 2012-12-19
Fedora FEDORA-2012-20446 2012-12-31
Fedora FEDORA-2012-20404 2012-12-31
openSUSE openSUSE-SU-2013:0187-1 2013-01-23
Mandriva MDVSA-2013:046 2013-04-05

Comments (none posted)

tinyproxy: denial of service

Package(s):tinyproxy CVE #(s):CVE-2012-3505
Created:October 24, 2012 Updated:November 7, 2012
Description: From the Debian advisory:

gpernot discovered that Tinyproxy, a HTTP proxy, is vulnerable to a denial of service by remote attackers by sending crafted request headers.

Alerts:
Debian DSA-2564-1 2012-10-23
Mageia MGASA-2012-0323 2012-11-06

Comments (none posted)

viewvc: cross-site scripting

Package(s):viewvc CVE #(s):CVE-2012-4533
Created:October 24, 2012 Updated:November 6, 2012
Description: From the Debian advisory:

"function name" lines returned by diff are not properly escaped, allowing attackers with commit access to perform cross site scripting.

Alerts:
Debian DSA-2563-1 2012-10-23
Mageia MGASA-2012-0313 2012-10-29
Fedora FEDORA-2012-16674 2012-11-06
Fedora FEDORA-2012-16673 2012-11-06
Mandriva MDVSA-2013:134 2013-04-10

Comments (none posted)

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

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