By Jake Edge
November 3, 2010
The recent release of Firesheep—a Firefox
extension that captures others' cookies on open WiFi networks—has
set off something of a firestorm. The particular hole that Firesheep
exploits is not anything new, we looked at an EFF-sponsored workaround for the
problem back in July, but the particulars of the Firesheep implementation
are fairly eye-opening. It would seem that Firesheep developer Eric Butler
was wildly successful in doing what he set out to do: increase
the visibility of insecure session cookie handling by major web sites.
It is fairly standard for web sites to protect their login screens by using
HTTPS (i.e. SSL/TLS encrypted connections) so that usernames and passwords
cannot be intercepted. But once the login has been completed, a session is
created, and sites
typically hand out a cookie—a (hopefully) opaque value that the
server can use to associate a request with a particular session
(i.e. user). Each time the user's browser sends a request to the site, it
also sends any cookies that have been set by that site. Those cookies are
valid for a server-selectable period of
time, and while they are valid, they can be used by anyone to appear to the
server as the user who logged in. The problem is that the cookies are
often transmitted via unencrypted HTTP.
So Firesheep, which was released
at ToorcCon 12 on October 24, can intercept these cookie values for
various high-profile web sites (e.g. Facebook, Twitter, Amazon, Google,
Github, and so on). It does the cookie interception by sniffing the network
traffic on open WiFi networks, and once it has them, it offers the user the
ability to connect to those services using the captured cookies. So someone
sitting in a coffeeshop can run Firesheep and potentially access
Facebook as some other unsuspecting customer.
The ability to do a one-click takeover of someone's account is clearly
Firesheep's most controversial feature. But it certainly serves the
purpose of alerting the public to this particular problem. Packaging the
program as a Firefox extension is also a clever touch. There is no reason
that Firesheep couldn't be a standalone program, but making it available in
the browser eases the installation process so that it can get in the hands
of more (ab)users.
Butler's intent is to shame (or scare) web site operators into switching to
HTTPS. It is the same end goal that the EFF had with its HTTPS Everywhere Firefox
extension, but Firesheep definitely grabbed a lot more attention than the
EFF's tool did. HTTPS Everywhere uses rules to rewrite http://
URLs to https:// URLs, which is useful—but not
particularly striking, at least to casual users and the press.
People have expressed ethical concerns about the release of Firesheep, but
like many security-oriented tools, it can be used for good or ill. There
are also reports that Microsoft's anti-virus software is marking Firesheep
as a threat. This firestorm has caused Butler to strongly
defend Firesheep and its release:
In addition to questioning Firesheep's legality, some people have
questioned the ethics of its release. Similar tools have existed for years,
so big companies, especially Facebook and Twitter, cannot claim they are
unaware of these issues. They have knowingly placed user privacy on the
back burner, and I'd be interested to hear some discussion about the ethics
of these decisions, which have left users at risk since long before
Firesheep.
Web sites can fix the problem by converting over to HTTPS and marking their
session cookies as HTTPS-only, but it's not quite as simple as just
flipping a switch. HTTPS will definitely require more server resources to
encrypt and decrypt all of its traffic, but there are other potential
problem areas as well. Various internal links in existing content may need
to be converted or
handled by the web server rewrite engine, and there is a class of content
that web site operators may not have any control over: advertisements.
Ad networks run by Google and others often do
not offer HTTPS for serving ads. That results in a warning from many
web browsers because there is insecure (i.e. HTTP) content in an HTTPS
page. The last thing many web site operators want is for their new users
to be greeted with a scary warning about the site.
We have been running some experiments here at LWN and plan to have
HTTPS-only cookies soon, though we haven't quite figured out how to handle
the Google ad problem. It is really something we (and lots of other sites)
should have done a long time ago. Thanks to Firesheep, there are now even more
compelling reasons to make that switch happen.
(
Log in to post comments)