April 20, 2011
This article was contributed by Nathan Willis
Mozilla first announced Firefox 4 support for the X-Do-Not-Track HTTP header (DNT) in January, but for a while it appeared that it would be the lone browser implementing the privacy-protecting option. The movement has picked up considerable steam in recent weeks, however, with both Safari and Internet Explorer (IE) adding support for the header. IE 9 also adds a related feature: Tracking Protection Lists (TPLs), a form of subscription-based block list similar to that offered by the AdBlock Plus project. Yet while both are improvements from the viewpoint of most consumers, their real value remains up in the air in light of important unanswered questions.
The limitations of DNT and block lists
DNT is an HTTP header that a web browser would send along with a page request to a web server — the idea being that it requests that the server not employ "tracking" to monitor the user's behavior during the session. It is currently an IETF Internet Draft, and is still undergoing changes. For example, the actual header now simply reads "DNT: 1" or "DNT: 0", instead of the comparatively wordy original form, "X-Do-Not-Track: N". But the bigger debate remains over what "tracking" actually means. The draft concisely defines it as "Tracking includes collection, retention, and use of all data related to the request and response."
The Electronic Frontier Foundation's Peter Eckersley tackled that question in an EFF blog post in February, where he observed that the simple definition encompasses some techniques that are generally agreed to fall outside the average person's conception of "tracking." Examples include single-site statistics such as might be gathered by standard web server logs or an analytics tool, tracking necessary to complete online transactions, and tracking necessary to prevent fraud or respond to security breaches.
What constitutes "tracking" is a nebulous question without a bright-line, technical answer, but that is acceptable because, Eckersley argues, DNT is a ultimately a policy tool and not a privacy-enhancing technology. He expounded on that distinction in a March post written in response to the announcement of IE 9's support for DNT and TPLs. There, he argues that block lists and DNT can complement each other, but that neither is 100% effective on its own.
Block lists, the term Eckersley uses to describe both TPL and plug-in solutions like AdBlock Plus, block outgoing HTTP requests that match a set of URL patterns that are created to catch known advertising, tracking, and cookie APIs. They have the advantage that they can stop privacy-risking HTTP connections altogether (in a manner that is relatively easy for the user to verify), and that they place the end user in control, without depending on legal or regulatory means to enforce compliance.
On the other hand, block lists are highly dependent on human
list-maintainers keeping up to date with thousands of site APIs, correctly
discerning which are performing tracking, and determining which will break functionality if blocked. There is also a growing list of tracking mechanisms like fingerprinting that do not rely on cookies, static domains, or other easily-caught factors. Fingerprinting as implemented by EFF's Panopticlick is a proof-of-concept, but there are already businesses performing similar techniques in the wild to collect data for commercial usage.
Block lists also require a trust relationship with the list maintainers,
and the trustworthiness of any given list maintainer is difficult to
verify. Eckersley points to one particularly untrustworthy IE 9 TPL
offered by the privately-owned TRUSTe corporation. TRUSTe's TPL blocks
only 23 domains, and explicitly whitelists 3,954 others. Thanks to IE 9's
implementation of TPLs, any domain whitelisted by TRUSTe's list
cannot be overridden by appearing on the blacklist of another TPL.
Consequently, subscribing to TRUSTe's TPL has the net effect of
opting-in to nearly 4,000 tracking domains.
But even for any specific definition of "tracking" agreed upon, DNT suffers from a lack of agreement over what sites should do when encountering an opt-out visitor. The draft says that a server encountering the header must delete any previously-stored data used for third-party tracking. It does not address serving different content back to the client, nor the case where an API enables tracking but also implements other functionality. Finally, as we observed in January, a large number of tracking companies currently regard "opt-out" choices as applying solely to "behavioral advertising."
Most importantly, however, DNT's effectiveness hinges on its adoption by
web sites, which at present is entirely voluntary, much like the
robots.txt de facto standard for search exclusion. A small handful of sites have publicly announced their support for DNT, including the Associated Press, but Eckersley argues that requiring compliance is the only way to guarantee consumer protection.
DNT enforcement
The US Federal Trade Commission (FTC) endorsed DNT in December of 2010 in a "preliminary staff report" that outlined a framework for consumer privacy protection. The framework includes recommendations for limited data collection and retention, transparent data collection policies, and straightforward opt-in/opt-out mechanisms clearly presented to consumers.
The EFF submitted a public response to the paper, providing answers to the FTC's "questions for comment." In it, the EFF weighs in on the scope of the framework, advocating that the proposed rules be applied for any data that can be "reasonably linked to specific consumer, computer or other device" and not limited to "personally identifiable information" only. That distinction would encompass fingerprinting as well as cookie-based tracking, because as the EFF also points out, almost any information from a browsing can be "linked" to a user: location information, browsing history, browser settings, even time-based access patterns.
The historical standard, which assumes that only "personal" information (such as account names or email addresses) can be associated with an individual, is built on top of the notion that people can remain anonymous by "hiding in the crowd" from which it is infeasible to extract enough information about one user to track him or her. Given current computer power, however, that assumption is no longer true: almost anyone can mine the crowd's data and extract or "re-link" an individual. Ultimately, the EFF says, "the linkability problem is a function of the universe of available data, not merely the particular data that one is exchanging."
The EFF also recommends that no businesses be exempted from the rules
a priori, but recommends that the FTC (which is tasked with consumer
protection and fraud prevention) not police the marketplace as a whole and
instead focus on responding to businesses that engage in abuse. Finally, the EFF recommends that the US federal government lead by example and embrace the DNT header for all federal agency web sites.
The EFF's comments and the FTC's staff report do not carry the force of law, but two bills have been introduced in the US House of Representatives that do mandate DNT compliance in one form or another. Eckersley notes in the February post that there are some commenters who believe technical means would be a better incentive for businesses to comply, such as the browser community adding violators to public block lists. He does not include a citation, so it is unclear exactly who the commentators in question are, or whether they have TPL-style block lists or a different mechanism in mind.
The two-handed approach
It might sound odd to suggest that block lists would be the compliance guarantee for DNT, but consider that Mozilla is no longer the sole browser vendor supporting the header. With IE9 and Safari also implementing the header, only Google Chrome remains a hold-out among the first-tier browser makers. That percentage of the browser market carries considerable weight.
Eckersley ultimately concludes that both block lists and DNT are required to protect consumer's online privacy. Block lists provide verifiable, immediate privacy protection, while DNT provides a regulatory tool for relief against sites that actively seek to harm consumers.
Ideally, widespread adoption of DNT puts privacy back into the hands of the user by default, although that depends on how simple and prominent the DNT settings are exposed to the user in the browser. It is probably still wishful thinking to expect browser makers to set DNT: 1 by default. Block lists, especially when enabled by default as in IE9, remain a valuable safety net, particularly for people who forget to check their DNT setting. Just remember to avoid TRUSTe's list — and to double-check the contents of any other block list, lest those intent on gaming the system open the door to still more privacy violations.
Comments (11 posted)
Brief items
This announcement means that Dropbox never had any mechanism to prevent
employees from accessing your files, and it means that Dropbox never had
the crypto smarts to ensure the privacy of your files and never had the
smarts to only decrypt the files for you. It turns out, they keep their
keys on their servers, and anyone with clearance at Dropbox or anyone that
manages to hack into their servers would be able to get access to your
files.
--
Miguel de
Icaza
Apple has made it possible for almost anybody — a jealous spouse, a private
detective — with access to your phone or computer to get detailed
information about where you've been.
--
Pete
Warden in the Guardian (via
Boing
Boing)
Honest Achmed's uncles may invite some of their friends to issue certificates
as well, in particular their cousins Refik and Abdi or "RA" as they're known.
Honest Achmed's uncles assure us that their RA can be trusted, apart from that
one time when they lent them the keys to the car, but that was a one-off that
won't happen again.
[...]
Honest Achmed promises to studiously verify that payment from anyone requesting
a certificate clears before issuing it (except for his uncles, who are good for
credit). Achmed guarantees that no certificate will be issued without payment
having been received, as per the old latin proverb "nil certificati sine
lucre".
--
"Honest
Achmed" requests addition to Mozilla's root certificate store
Honest Achmed is at least more honest than Comodo.
--
Kyle
Hamilton
Comments (7 posted)
New vulnerabilities
dhcpcd: arbitrary code execution
| Package(s): | dhcpcd |
CVE #(s): | CVE-2011-0996
|
| Created: | April 18, 2011 |
Updated: | January 9, 2013 |
| Description: |
From the CVE entry:
dhcpcd before 5.2.12 allows remote attackers to execute arbitrary commands via shell metacharacters in a hostname obtained from a DHCP message. |
| Alerts: |
|
Comments (none posted)
flash-player: arbitrary code execution
| Package(s): | flash-player |
CVE #(s): | CVE-2011-0611
|
| Created: | April 18, 2011 |
Updated: | April 20, 2011 |
| Description: |
From the CVE entry:
Adobe Flash Player 10.2.153.1 and earlier for Windows, Macintosh, Linux, and Solaris; 10.2.154.25 and earlier for Chrome; and 10.2.156.12 and earlier for Android; Adobe AIR 2.6.19120 and earlier; and Authplay.dll (aka AuthPlayLib.bundle) in Adobe Reader and Acrobat 9.x through 9.4.3 and 10.x through 10.0.2 on Windows and Mac OS X, allows remote attackers to execute arbitrary code or cause a denial of service (application crash) via crafted Flash content, related to a size inconsistency in a "group of included constants," object type confusion, and Date objects, as demonstrated by a .swf file embedded in a Microsoft Word document, and as exploited in the wild in April 2011. |
| Alerts: |
|
Comments (none posted)
ifcfg-*: insecure file permissions
| Package(s): | ifcfg-* |
CVE #(s): | |
| Created: | April 18, 2011 |
Updated: | April 20, 2011 |
| Description: |
From the openSUSE advisory:
This update fixes the file permissions for ifcfg-* files. |
| Alerts: |
|
Comments (none posted)
kbd: arbitrary file corruption
| Package(s): | kbd |
CVE #(s): | CVE-2011-0460
|
| Created: | April 18, 2011 |
Updated: | April 20, 2011 |
| Description: |
From the openSUSE advisory:
The kbd init scripted wrote a file to /dev/shm during
shut-down. Since local users may create symlinks there a
malicious user could cause corruption of arbitrary files |
| Alerts: |
|
Comments (none posted)
kdenetwork: arbitrary code execution
| Package(s): | kdenetwork |
CVE #(s): | CVE-2011-1586
|
| Created: | April 19, 2011 |
Updated: | May 2, 2011 |
| Description: |
From the Ubuntu advisory:
It was discovered that KGet did not properly perform input validation when
processing metalink files. If a user were tricked into opening a crafted
metalink file, a remote attacker could overwrite files via directory
traversal, which could eventually lead to arbitrary code execution.
|
| Alerts: |
|
Comments (none posted)
kernel: multiple vulnerabilities
| Package(s): | kernel |
CVE #(s): | CVE-2011-1012
CVE-2011-1082
CVE-2011-1163
CVE-2011-1182
CVE-2011-1476
CVE-2011-1477
CVE-2011-1493
|
| Created: | April 18, 2011 |
Updated: | September 14, 2011 |
| Description: |
From the openSUSE advisory:
CVE-2011-1012: The code for evaluating LDM partitions (in
fs/partitions/ldm.c) contained a bug that could crash the
kernel for certain corrupted LDM partitions.
CVE-2011-1082: The epoll subsystem in Linux did not prevent
users from creating circular epoll file structures,
potentially leading to a denial of service (kernel
deadlock).
CVE-2011-1163: The code for evaluating OSF partitions (in
fs/partitions/osf.c) contained a bug that leaks data from
kernel heap memory to userspace for certain corrupted OSF
partitions.
CVE-2011-1182: Local attackers could send signals to their
programs that looked like coming from the kernel,
potentially gaining privileges in the context of setuid
programs.
CVE-2011-1476: Specially crafted requests may be written to
/dev/sequencer resulting in an underflow when calculating a
size for a copy_from_user() operation in the driver for
MIDI interfaces. On x86, this just returns an error, but it
could have caused memory corruption on other architectures.
Other malformed requests could have resulted in the use of
uninitialized variables.
CVE-2011-1477: Due to a failure to validate user-supplied
indexes in the driver for Yamaha YM3812 and OPL-3 chips, a
specially crafted ioctl request could have been sent to
/dev/sequencer, resulting in reading and writing beyond the
bounds of heap buffers, and potentially allowing privilege
escalation.
CVE-2011-1493: In the
rose networking stack, when parsing the FAC_NATIONAL_DIGIS
facilities field, it was possible for a remote host to
provide more digipeaters than expected, resulting in heap
corruption. Check against ROSE_MAX_DIGIS to prevent
overflows, and abort facilities parsing on failure.
|
| Alerts: |
|
Comments (none posted)
krb5: arbitrary code execution
| Package(s): | krb5 |
CVE #(s): | CVE-2011-0285
|
| Created: | April 15, 2011 |
Updated: | April 26, 2011 |
| Description: |
From the CVE entry:
The process_chpw_request function in schpw.c in the password-changing functionality in kadmind in MIT Kerberos 5 (aka krb5) 1.7 through 1.9 frees an invalid pointer, which allows remote attackers to execute arbitrary code or cause a denial of service (daemon crash) via a crafted request that triggers an error condition. |
| Alerts: |
|
Comments (none posted)
language-selector: local command execution
| Package(s): | language-selector |
CVE #(s): | CVE-2011-0729
|
| Created: | April 20, 2011 |
Updated: | April 20, 2011 |
| Description: |
A local attacker can make use of an authorization check failure in language-selector's D-Bus backend to run arbitrary commands as root. |
| Alerts: |
|
Comments (none posted)
libmodplug: stack based buffer overflow
| Package(s): | libmodplug |
CVE #(s): | CVE-2011-1574
|
| Created: | April 18, 2011 |
Updated: | March 16, 2012 |
| Description: |
From the openSUSE advisory:
Libmodplug is vulnerable to a stack based buffer overflow
when handling malicious S3M media files. CVE-2011-1574 has
been assigned to this issue.
|
| Alerts: |
|
Comments (none posted)
libmojolicious-perl: directory traversal
| Package(s): | libmojolicious-perl |
CVE #(s): | CVE-2011-1589
|
| Created: | April 20, 2011 |
Updated: | April 26, 2011 |
| Description: |
The Mojolicious web application framework contains a directory traversal vulnerability. |
| Alerts: |
|
Comments (none posted)
libtiff: arbitrary code execution
| Package(s): | libtiff |
CVE #(s): | CVE-2009-5022
|
| Created: | April 18, 2011 |
Updated: | June 10, 2011 |
| Description: |
From the Red Hat advisory:
A heap-based buffer overflow flaw was found in the way libtiff processed
certain TIFF image files that were compressed with the JPEG compression
algorithm. An attacker could use this flaw to create a specially-crafted
TIFF file that, when opened, would cause an application linked against
libtiff to crash or, possibly, execute arbitrary code. |
| Alerts: |
|
Comments (none posted)
perl: tainted data laundering
| Package(s): | perl |
CVE #(s): | |
| Created: | April 14, 2011 |
Updated: | April 20, 2011 |
| Description: |
From the Perl advisory:
The current perlsec 5.13 man page still claims that "Laundering data
using regular expression is the only mechanism for untainting dirty
data", or by "using them as keys in a hash" - yet functions lc() and
uc() are unwarrantedly laundering data too.
This holds true for v5.10.1, v5.12.3 and v5.13.10;
but not for v5.8.8. |
| Alerts: |
|
Comments (none posted)
PolicyKit: local privilege escalation
| Package(s): | polkit policykit |
CVE #(s): | CVE-2011-1485
|
| Created: | April 20, 2011 |
Updated: | April 18, 2012 |
| Description: |
The pbexec utility can be exploited by a local user to run arbitrary commands as root. |
| Alerts: |
|
Comments (none posted)
postfix: symlink attack
| Package(s): | postfix |
CVE #(s): | CVE-2009-2939
|
| Created: | April 18, 2011 |
Updated: | May 11, 2011 |
| Description: |
From the Ubuntu advisory:
It was discovered that the Postfix package incorrectly granted write access
on the PID directory to the postfix user. A local attacker could use this
flaw to possibly conduct a symlink attack and overwrite arbitrary files.
This issue only affected Ubuntu 6.06 LTS and 8.04 LTS. |
| Alerts: |
|
Comments (none posted)
request-tracker: multiple vulnerabilities
Comments (none posted)
Page editor: Jake Edge
Next page: Kernel development>>