Tor (The Onion Router) is a free software implementation of second-generation onion routing – a system enabling its users to communicate anonymously on the Internet. Originally sponsored by the US Naval Research Laboratory, Tor became an Electronic Frontier Foundation (EFF) project in late 2004, and the EFF supported Tor financially until November 2005. The Tor software is now developed by the Tor Project, which since December 2006 is a 501(c)(3) research/education non-profit organization based in the United States of America[1][4] that receives a diverse base of financial support.
Like all current low latency anonymity networks, Tor is vulnerable to traffic analysis from observers who can watch both ends of a user's connection.[5]
Description
Aiming to protect its users against traffic analysis attacks, volunteers operate an overlay network of onion routers that enable anonymous outgoing connections and anonymous "hidden" services.
Outgoing connections
Vidalia routing http traffic with a Firefox plugin.
Users of the Tor network run an onion proxy on their machine. This software connects out to Tor, periodically negotiating a virtual circuit through the Tor network. Tor employs cryptography in a layered manner (hence the onion analogy), ensuring perfect forward secrecy between routers. At the same time, the onion proxy software presents a SOCKS interface to its clients. SOCKS-aware applications may be pointed at Tor, which then multiplexes the traffic through a Tor virtual circuit.
Once inside the Tor network, the traffic is sent from router to router, ultimately reaching an exit node at which point the cleartext packet is available and is forwarded on to its original destination. Viewed from the destination, the traffic appears to originate at the Tor exit node.
Tor's application independence sets it apart from most other anonymity networks: it works at the TCP stream level. Applications commonly anonymised using Tor include IRC, instant messaging and Web browsing. When browsing the Web, Tor is often coupled with Privoxy – a filtering proxy server – that aims to add privacy at the application layer.
Hidden services
Tor can also provide anonymity to servers in the form of location-hidden services, which are Tor clients or relays running specially configured server software. Rather than revealing the server's IP address (and therefore its location), hidden services are accessed through the Tor-specific .onion pseudo top-level domain. The Tor network understands this TLD and routes data anonymously both to and from the hidden service. Due to this lack of a public address, hidden services may be hosted behind firewalls or NAT. A Tor client is necessary in order to access a hidden service.[6]
Hidden services have been deployed on the Tor network beginning in 2004.[7] Being decentralized by design, there is no official index of hidden services. There are a number of independent hidden services that serve this purpose.
Because location-hidden services do not use exit nodes, they are not subject to exit node eavesdropping. There are, however, a number of security issues involving Tor hidden services. For example, services that are reachable through Tor hidden services and the public Internet are susceptible to correlation attacks, and consequently are not necessarily hidden. Other pitfalls include "letting your web server reveal identifying information about you, your computer, or your location"[8], uptime and downtime statistics, intersection attacks and user error.
Node flags
Not all Tor nodes are equal. Tor directory authorities describe nodes with several flags, as described in the following table [9]:
Router flags (Directory protocol flags, version 3)
| Flag |
Description |
Probable cause |
| Authority |
Is a directory authority |
|
| BadExit |
Believed to be useless as an exit node |
ISP censoring, behind restrictive proxy |
| BadDirectory |
Believed to be useless as a directory cache |
Directory port isn't working, bandwidth is always throttled |
| Exit |
More useful for building general-purpose exit circuits than for relay circuits |
|
| Fast |
Suitable for high-bandwidth circuits |
|
| Guard |
Suitable for use as an entry guard |
|
| HSDir |
Considered a v2 hidden service directory |
|
| Named |
Identity-nickname mapping is canonical and this authority binds names |
|
| Stable |
Suitable for long-lived circuits |
|
| Running |
Currently usable |
|
| Valid |
Has been 'validated' |
|
| V2Dir |
Implements the v2 directory protocol |
|
| V3Dir |
Implements the v3 directory protocol |
|
Weaknesses
DNS leaks
As with many anonymous web surfing systems, direct DNS requests are usually still performed by many applications, without using the Tor proxy. Using Privoxy or the command "torify" included with the Tor distribution is a possible solution to this problem.[10] Additionally, applications using SOCKS5 – which supports name-based proxy requests – can route DNS requests through Tor, having lookups performed at the exit node and thus receiving the same anonymity as other Tor traffic.[11]
As of Tor release 0.2.0.1-alpha, Tor includes its own DNS resolver which will dispatch queries over the mix network. This should close the DNS leak and can interact with Tor's address mapping facilities to provide Tor hidden service (.onion) access to non-SOCKS aware applications.[12]
Traffic analysis
Steven J. Murdoch and George Danezis from University of Cambridge presented an article[13] at the 2005 IEEE Symposium on Security and Privacy. They presented traffic-analysis techniques that allow adversaries with only a partial view of the network to infer which nodes are being used to relay the anonymous streams and therefore greatly reduce the anonymity provided by Tor. They have also shown that otherwise unrelated streams can be linked back to the same initiator. The identity of the original user remains undiscovered by this attack, however.[13] Murdoch has been working with and funded by Tor since 2006.
Eavesdropping by exit nodes
In September 2007, Dan Egerstad, a Swedish security consultant, revealed that by operating and monitoring Tor exit nodes he had intercepted usernames and passwords for a large number of email accounts.[14] As Tor does not, and by design cannot, encrypt the traffic between an exit node and the target server, any exit node is in a position to capture any traffic passing through it which does not use end-to-end encryption, e.g. SSL. While this does not inherently violate the anonymity of the source, it affords added opportunities for data interception by self-selected third parties, greatly increasing the risk of exposure of sensitive data by users who are careless or who mistake Tor's anonymity for security.[15]
Etiquette and abuse
Because of its inherent anonymity, Tor is subject to abuse. Routers each maintain an exit policy of what traffic is and is not permitted to leave the Tor network through that node. It is possible to combat most major abuses of the Tor network using a combination of addresses and ports. Potential abuses include:
- Bandwidth hogging
- It is considered impolite to transfer massive amounts of data across the Tor network – the onion routers are run by volunteers using their own bandwidth at their own cost.
- BitTorrent
- Due to the high bandwidth usage caused by the use of this protocol, it is considered impolite and inappropriate to use the Tor network for BitTorrent transfers.
Illegal uses
Some Tor servers have been used for illegal purposes, including child pornography and p2p sharing of copyrighted files using the bit torrent protocol.[16][17][18] Child pornography in particular has attracted international law enforcement investigations. In September 2006, German authorities seized data center equipment running Tor software during a child pornography crackdown.[17][19][20]
See also
- Tor overview page with basic information Start here
- Tools to use with Tor:
- Web browsers bundled with Tor
- Anonymous chat
- Preinstalled environments with Tor enabled:
- Other anonymity networks
- Freenet – Censorship-resistant network
- GNUnet is a free software framework for decentralized, peer-to-peer networking.
- I2P – Anonymous Internet Protocol layer
- Perfect Dark is a Japanese peer-to-peer file-sharing application for use with Microsoft Windows.
- JAP – Java Anon Proxy
- Psiphon
- Anonymous remailers
- Anonymous search
- FAROO – Peer-to-peer ("P2P") web search engine with encryption
- Yacy – A P2P web search engine without central server
- Scroogle – Anonymous Google search through proxy with SSL (https)
- Philosophies incorporating anonymity
Footnotes
References
External links
Articles
|