The Torouter is the codename for a hardware project that aims to provide users with a device that can easily be configured to run as a Tor bridge or relay. We are currently working on two devices; the Excito B3 and the DreamPlug.
Having two devices that are both called "the Torouter" can be a bit confusing, so we would like your help in renaming the Excito B3 Torouter!
The best suggestion will not only be the new name for the Excito B3 Torouter, but the winner will also receive an Excito B3, a Tor t-shirt and stickers. Five runners-up will receive Tor t-shirts and stickers.
To suggest new names for the Excito B3 Torouter, send an email to tor-assistants AT torproject.org with "Torouter naming contest" in the subject. The deadline is December 5, 2011.
UPDATE: We have received a lot of good naming suggestions for the Excito B3 Torouter, thank you to everyone who emailed us! We have decided that the new name for the Excito B3 Torouter is onionbox. An email has gone out to the lucky winner of a B3, a t-shirt and some stickers, as well as five-runners up who will all get t-shirts and stickers.
The Tor Cloud project gives you a user-friendly way of deploying bridges to help users access an uncensored Internet. By setting up a bridge, you donate bandwidth to the Tor network and help improve the safety and speed at which users can access the Internet.
Bridges are Tor relays that aren't listed in the main directory. This means that to use a bridge, you'll need to locate one first. And because there is no complete public list of all the bridges, they are also harder to block. A bridge will act as the first hop in a circuit, and will only forward traffic on to other relays in the Tor network.
Setting up a Tor bridge on Amazon EC2 is simple and will only take you a couple of minutes. The images have been configured with automatic package updates and port forwarding, so you do not have to worry about Tor not working or the server not getting security updates.
You should not have to do anything once the instance is up and running. Tor will start up as a bridge, confirm that it is reachable from the outside, and then tell the bridge authority that it exists. After that, the address for your bridge will be given out to users.
To help new customers get started in the cloud, Amazon is introducing a free usage tier. The Tor Cloud images are all micro instances, and new customers will be able to run a free micro instance for a whole year. The Tor Cloud images have been configured with a bandwidth limit, so customers who don't qualify for the free usage tier should only have to pay an estimated $30 a month.
For more information, see the Tor Cloud website.
UPDATE: Some users have asked about the AWS free usage tier and pointed out that it only includes 15 GB of bandwidth out per month. I have updated the Tor Cloud website (changes should go live soon) with the following:
The Tor Cloud images have been configured to use no more than 40 GB of bandwidth out per month. We have estimated that customers who do not qualify for the free usage tier will pay up to $30 a month. Customers who qualify for the free usage tier, but who run bridges that use more than 15 GB of bandwidth out per month, will pay up to $3 per month.
I hope that this better clarifies the cost of running a bridge in the Amazon cloud, let me know if you have any questions.
Tor 0.2.3.7-alpha fixes a crash bug in 0.2.3.6-alpha introduced by the new v3 handshake. It also resolves yet another bridge address enumeration issue.
All packages are updated, with the exception of the OS X PPC packages. The build machine is down and packages will be built as soon as it is back online.
Changes in version 0.2.3.7-alpha - 2011-10-30
- If we mark an OR connection for close based on a cell we process,
don't process any further cells on it. We already avoid further
reads on marked-for-close connections, but now we also discard the
cells we'd already read. Fixes bug 4299; bugfix on 0.2.0.10-alpha,
which was the first version where we might mark a connection for
close based on processing a cell on it.
- Fix a double-free bug that would occur when we received an invalid
certificate in a CERT cell in the new v3 handshake. Fixes bug 4343;
bugfix on 0.2.3.6-alpha.
- Bridges no longer include their address in NETINFO cells on outgoing
OR connections, to allow them to blend in better with clients.
Removes another avenue for enumerating bridges. Reported by
"troll_un". Fixes bug 4348; bugfix on 0.2.0.10-alpha, when NETINFO
cells were introduced.
- Fixed a typo in a hibernation-related log message. Fixes bug 4331;
bugfix on 0.2.2.23-alpha; found by "tmpname0901".
Tor 0.2.2.34 fixes a critical anonymity vulnerability where an attacker
can deanonymize Tor users. Everybody should upgrade.
The attack relies on four components:
- 1) Clients reuse their TLS cert when talking to different relays, so relays can recognize a user by the identity key in her cert.
- 2) An attacker who knows the client's identity key can probe each guard relay to see if that identity key is connected to that guard relay right now.
- 3) A variety of active attacks in the literature (starting from "Low-Cost Traffic Analysis of Tor" by Murdoch and Danezis in 2005) allow a malicious website to discover the guard relays that a Tor user visiting the website is using.
- 4) Clients typically pick three guards at random, so the set of guards for a given user could well be a unique fingerprint for her. This release fixes components #1 and #2, which is enough to block the attack; the other two remain as open research problems.
Special thanks to "frosty_un" for reporting the issue to us! (As far as we know, this has nothing to do with any claimed attack currently getting attention in the media.)
Clients should upgrade so they are no longer recognizable by the TLS certs they present. Relays should upgrade so they no longer allow a remote attacker to probe them to test whether unpatched clients are currently connected to them.
This release also fixes several vulnerabilities that allow an attacker to enumerate bridge relays. Some bridge enumeration attacks still remain; see for example proposal 188.
Changes in version 0.2.2.34 - 2011-10-26
Privacy/anonymity fixes (clients):
- Clients and bridges no longer send TLS certificate chains on outgoing OR
connections. Previously, each client or bridge would use the same cert chain
for all outgoing OR connections until its IP address changes, which allowed any
relay that the client or bridge contacted to determine which entry guards it is
using. Fixes CVE-2011-2768. Bugfix on 0.0.9pre5; found by "frosty_un".
- If a relay receives a CREATE_FAST cell on a TLS connection, it no longer
considers that connection as suitable for satisfying a circuit EXTEND request.
Now relays can protect clients from the CVE-2011-2768 issue even if the clients
haven't upgraded yet.
- Directory authorities no longer assign the Guard flag to relays that
haven't upgraded to the above "refuse EXTEND requests to client connections"
fix. Now directory authorities can protect clients from the CVE-2011-2768 issue
even if neither the clients nor the relays have upgraded yet. There's a new
"GiveGuardFlagTo_CVE_2011_2768_VulnerableRelays" config option to let us
transition smoothly, else tomorrow there would be no guard relays.
Privacy/anonymity fixes (bridge enumeration):
- Bridge relays now do their directory fetches inside Tor TLS connections,
like all the other clients do, rather than connecting directly to the DirPort
like public relays do. Removes another avenue for enumerating bridges. Fixes
bug 4115; bugfix on 0.2.0.35.
- Bridges relays now build circuits for themselves in a more similar way to
how clients build them. Removes another avenue for enumerating bridges. Fixes
bug 4124; bugfix on 0.2.0.3-alpha, when bridges were introduced.
- Bridges now refuse CREATE or CREATE_FAST cells on OR connections that they
initiated. Relays could distinguish incoming bridge connections from client
connections, creating another avenue for enumerating bridges. Fixes
CVE-2011-2769. Bugfix on 0.2.0.3-alpha. Found by "frosty_un".
- Fix a crash bug when changing node restrictions while a DNS lookup is
in-progress. Fixes bug 4259; bugfix on 0.2.2.25-alpha. Bugfix by "Tey'".
- Don't launch a useless circuit after failing to use one of a hidden
service's introduction points. Previously, we would launch a new introduction
circuit, but not set the hidden service which that circuit was intended to
connect to, so it would never actually be used. A different piece of code would
then create a new introduction circuit correctly. Bug reported by katmagic and
found by Sebastian Hahn. Bugfix on 0.2.1.13-alpha; fixes bug 4212.
- Change an integer overflow check in the OpenBSD_Malloc code so that GCC is
less likely to eliminate it as impossible. Patch from Mansour Moufid. Fixes bug
- When a hidden service turns an extra service-side introduction circuit into
a general-purpose circuit, free the rend_data and intro_key fields first, so we
won't leak memory if the circuit is cannibalized for use as another
service-side introduction circuit. Bugfix on 0.2.1.7-alpha; fixes bug
- Bridges now skip DNS self-tests, to act a little more stealthily. Fixes
bug 4201; bugfix on 0.2.0.3-alpha, which first introduced bridges. Patch by
- Fix internal bug-checking logic that was supposed to catch failures in
digest generation so that it will fail more robustly if we ask for a
nonexistent algorithm. Found by Coverity Scan. Bugfix on 0.2.2.1-alpha; fixes
Coverity CID 479.
- Report any failure in init_keys() calls launched because our IP address has
changed. Spotted by Coverity Scan. Bugfix on 0.1.1.4-alpha; fixes CID 484.
Minor bugfixes (log messages and documentation):
- Remove a confusing dollar sign from the example fingerprint in the man
page, and also make the example fingerprint a valid one. Fixes bug 4309; bugfix
- The next version of Windows will be called Windows 8, and it has a major
version of 6, minor version of 2. Correctly identify that version instead of
calling it "Very recent version". Resolves ticket 4153; reported by
- Downgrade log messages about circuit timeout calibration from "notice" to
"info": they don't require or suggest any human intervention. Patch from Tom
Lowenthal. Fixes bug 4063; bugfix on 0.2.2.14-alpha.
- Turn on directory request statistics by default and include them in
extra-info descriptors. Don't break if we have no GeoIP database. Backported
from 0.2.3.1-alpha; implements ticket 3951.
- Update to the October 4 2011 Maxmind GeoLite Country database.
On September 21, Tails anonymous live system version 0.8 was released.
Notable user-visible changes include:
HTTPS Everywhere 1.0.1-1
More random looking nicks in Pidgin.
Replace the onBoard virtual keyboard with Florence.
PiTIVi non-linear audio/video editor.
Support arbitrary DNS queries.
Use XZ compression to get much smaller ISO images and a bit faster boot.
Plus the usual bunch of minor bug reports and improvements.
The original announcement is at http://tails.boum.org/news/version_0.8/
You can download it via https://archive.torproject.org/amnesia.boum.org/tails/stable/tails-i386-..., bittorrent, or http://tails.boum.org/download/index.en.html
The Tor Browser Bundles have been updated to Firefox 7.0.1 and Tor 0.2.2.33. The bundles were originally uploaded with Firefox 7.0, but a fix was quickly released, so the two changelogs have been merged in this post.
Tor Browser Bundle (2.2.33-2)
- Begin building Vidalia with DEP/ASLR
OS X fixes
- Stop TBB from logging so much information to the system by only allowing dyld log library loads to syslog when it is in debug mode (closes: #4093)
General fixes and updates
- Update Firefox to 7.0.1
- Update OpenSSL to 1.0.0e (closes: #3996) (except for OS X)
- Update Tor to 0.2.2.33
- Update NoScript to 184.108.40.206
- Downgrade HTTPS Everywhere to 1.0.3, because we don't want stable TBBs to use development versions of extensions (closes: #4050)
Tor 0.2.3.5-alpha fixes two bugs that make it possible to enumerate
bridge relays; fixes an assertion error that many users started hitting
today; and adds the ability to refill token buckets more often than
once per second, allowing significant performance improvements.
- Bridge relays now do their directory fetches inside Tor TLS
connections, like all the other clients do, rather than connecting
directly to the DirPort like public relays do. Removes another
avenue for enumerating bridges. Fixes bug 4115; bugfix on 0.2.0.35.
- Bridges relays now build circuits for themselves in a more similar
way to how clients build them. Removes another avenue for
enumerating bridges. Fixes bug 4124; bugfix on 0.2.0.3-alpha,
when bridges were introduced.
- Fix an "Assertion md->held_by_node == 1 failed" error that could
occur when the same microdescriptor was referenced by two node_t
objects at once. Fix for bug 4118; bugfix on Tor 0.2.3.1-alpha.
Major features (networking):
- Add a new TokenBucketRefillInterval option to refill token buckets
more frequently than once per second. This should improve network
performance, alleviate queueing problems, and make traffic less
bursty. Implements proposal 183; closes ticket 3630. Design by
Florian Tschorsch and Bj√∂rn Scheuermann; implementation by
- Change an integer overflow check in the OpenBSD_Malloc code so
that GCC is less likely to eliminate it as impossible. Patch
from Mansour Moufid. Fixes bug 4059.
Minor bugfixes (usability):
- Downgrade log messages about circuit timeout calibration from
"notice" to "info": they don't require or suggest any human
intervention. Patch from Tom Lowenthal. Fixes bug 4063;
bugfix on 0.2.2.14-alpha.
Minor features (diagnostics):
- When the system call to create a listener socket fails, log the
error message explaining why. This may help diagnose bug 4027.
Tor 0.2.2.30-rc is the first release candidate for the Tor 0.2.2.x
series. It fixes a few smaller bugs, but generally appears stable.
Please test it and let us know whether it is!
Changes in version 0.2.2.30-rc - 2011-07-07
- Send a SUCCEEDED stream event to the controller when a reverse
resolve succeeded. Fixes bug 3536; bugfix on 0.0.8pre1. Issue
discovered by katmagic.
- Always NUL-terminate the sun_path field of a sockaddr_un before
passing it to the kernel. (Not a security issue: kernels are
smart enough to reject bad sockaddr_uns.) Found by Coverity;
CID #428. Bugfix on Tor 0.2.0.3-alpha.
- Don't stack-allocate the list of supplementary GIDs when we're
about to log them. Stack-allocating NGROUPS_MAX gid_t elements
could take up to 256K, which is way too much stack. Found by
Coverity; CID #450. Bugfix on 0.2.1.7-alpha.
- Add BUILDTIMEOUT_SET to the list returned by the 'GETINFO
events/names' control-port command. Bugfix on 0.2.2.9-alpha;
fixes part of bug 3465.
- Fix a memory leak when receiving a descriptor for a hidden
service we didn't ask for. Found by Coverity; CID #30. Bugfix
- Update to the July 1 2011 Maxmind GeoLite Country database.
Changes in version 0.2.2.29-beta - 2011-06-20
Tor 0.2.2.29-beta reverts an accidental behavior change for users who
have bridge lines in their torrc but don't want to use them; gets
us closer to having the control socket feature working on Debian;
and fixes a variety of smaller bugs.
- Revert the UseBridges option to its behavior before 0.2.2.28-beta.
When we changed the default behavior to "use bridges if any
are listed in the torrc", we surprised users who had bridges
in their torrc files but who didn't actually want to use them.
Partial resolution for bug 3354.
- Don't attach new streams to old rendezvous circuits after SIGNAL
NEWNYM. Previously, we would keep using an existing rendezvous
circuit if it remained open (i.e. if it were kept open by a
long-lived stream, or if a new stream were attached to it before
Tor could notice that it was old and no longer in use). Bugfix on
0.1.1.15-rc; fixes bug 3375.
- Fix a bug when using ControlSocketsGroupWritable with User. The
directory's group would be checked against the current group, not
the configured group. Patch by Jérémy Bobbio. Fixes bug 3393;
bugfix on 0.2.2.26-beta.
- Make connection_printf_to_buf()'s behaviour sane. Its callers
expect it to emit a CRLF iff the format string ends with CRLF;
it actually emitted a CRLF iff (a) the format string ended with
CRLF or (b) the resulting string was over 1023 characters long or
(c) the format string did not end with CRLF *and* the resulting
string was 1021 characters long or longer. Bugfix on 0.1.1.9-alpha;
fixes part of bug 3407.
- Make send_control_event_impl()'s behaviour sane. Its callers
expect it to always emit a CRLF at the end of the string; it
might have emitted extra control characters as well. Bugfix on
0.1.1.9-alpha; fixes another part of bug 3407.
- Make crypto_rand_int() check the value of its input correctly.
Previously, it accepted values up to UINT_MAX, but could return a
negative number if given a value above INT_MAX+1. Found by George
Kadianakis. Fixes bug 3306; bugfix on 0.2.2pre14.
- Avoid a segfault when reading a malformed circuit build state
with more than INT_MAX entries. Found by wanoskarnet. Bugfix on
- When asked about a DNS record type we don't support via a
client DNSPort, reply with NOTIMPL rather than an empty
reply. Patch by intrigeri. Fixes bug 3369; bugfix on 2.0.1-alpha.
- Fix a rare memory leak during stats writing. Found by coverity.
- Update to the June 1 2011 Maxmind GeoLite Country database.
Code simplifications and refactoring:
- Remove some dead code as indicated by coverity.
- Remove a few dead assignments during router parsing. Found by
- Add some forgotten return value checks during unit tests. Found
- Don't use 1-bit wide signed bit fields. Found by coverity.
Changes in version 0.2.2.28-beta - 2011-06-04
Tor 0.2.2.28-beta makes great progress towards a new stable release: we
fixed a big bug in whether relays stay in the consensus consistently,
we moved closer to handling bridges and hidden services correctly,
and we started the process of better handling the dreaded "my Vidalia
died, and now my Tor demands a password when I try to reconnect to it"
- Don't decide to make a new descriptor when receiving a HUP signal.
This bug has caused a lot of 0.2.2.x relays to disappear from the
consensus periodically. Fixes the most common case of triggering
bug 1810; bugfix on 0.2.2.7-alpha.
- Actually allow nameservers with IPv6 addresses. Fixes bug 2574.
- Don't try to build descriptors if "ORPort auto" is set and we
don't know our actual ORPort yet. Fix for bug 3216; bugfix on
- Resolve a crash that occurred when setting BridgeRelay to 1 with
accounting enabled. Fixes bug 3228; bugfix on 0.2.2.18-alpha.
- Apply circuit timeouts to opened hidden-service-related circuits
based on the correct start time. Previously, we would apply the
circuit build timeout based on time since the circuit's creation;
it was supposed to be applied based on time since the circuit
entered its current state. Bugfix on 0.0.6; fixes part of bug 1297.
- Use the same circuit timeout for client-side introduction
circuits as for other four-hop circuits, rather than the timeout
for single-hop directory-fetch circuits; the shorter timeout may
have been appropriate with the static circuit build timeout in
0.2.1.x and earlier, but caused many hidden service access attempts
to fail with the adaptive CBT introduced in 0.2.2.2-alpha. Bugfix
on 0.2.2.2-alpha; fixes another part of bug 1297.
- In ticket 2511 we fixed a case where you could use an unconfigured
bridge if you had configured it as a bridge the last time you ran
Tor. Now fix another edge case: if you had configured it as a bridge
but then switched to a different bridge via the controller, you
would still be willing to use the old one. Bugfix on 0.2.0.1-alpha;
fixes bug 3321.
- Add an __OwningControllerProcess configuration option and a
TAKEOWNERSHIP control-port command. Now a Tor controller can ensure
that when it exits, Tor will shut down. Implements feature 3049.
- If "UseBridges 1" is set and no bridges are configured, Tor will
now refuse to build any circuits until some bridges are set.
If "UseBridges auto" is set, Tor will use bridges if they are
configured and we are not running as a server, but otherwise will
make circuits as usual. The new default is "auto". Patch by anonym,
so the Tails LiveCD can stop automatically revealing you as a Tor
user on startup.
- Fix warnings from GCC 4.6's "-Wunused-but-set-variable" option.
- Remove a trailing asterisk from "exit-policy/default" in the
output of the control port command "GETINFO info/names". Bugfix
- Use a wide type to hold sockets when built for 64-bit Windows builds.
Fixes bug 3270.
- Warn when the user configures two HiddenServiceDir lines that point
to the same directory. Bugfix on 0.0.6 (the version introducing
HiddenServiceDir); fixes bug 3289.
- Remove dead code from rend_cache_lookup_v2_desc_as_dir. Fixes
part of bug 2748; bugfix on 0.2.0.10-alpha.
- Log malformed requests for rendezvous descriptors as protocol
warnings, not warnings. Also, use a more informative log message
in case someone sees it at log level warning without prior
info-level messages. Fixes the other part of bug 2748; bugfix
- Clear the table recording the time of the last request for each
hidden service descriptor from each HS directory on SIGNAL NEWNYM.
Previously, we would clear our HS descriptor cache on SIGNAL
NEWNYM, but if we had previously retrieved a descriptor (or tried
to) from every directory responsible for it, we would refuse to
fetch it again for up to 15 minutes. Bugfix on 0.2.2.25-alpha;
fixes bug 3309.
- Fix a log message that said "bits" while displaying a value in
bytes. Found by wanoskarnet. Fixes bug 3318; bugfix on
- When checking for 1024-bit keys, check for 1024 bits, not 128
bytes. This allows Tor to correctly discard keys of length 1017
through 1023. Bugfix on 0.0.9pre5.
- Relays now log the reason for publishing a new relay descriptor,
so we have a better chance of hunting down instances of bug 1810.
Resolves ticket 3252.
- Revise most log messages that refer to nodes by nickname to
instead use the "$key=nickname at address" format. This should be
more useful, especially since nicknames are less and less likely
to be unique. Resolves ticket 3045.
- Log (at info level) when purging pieces of hidden-service-client
state because of SIGNAL NEWNYM.
- Remove undocumented option "-F" from tor-resolve: it hasn't done
anything since 0.2.1.16-rc.
An update to the fully anonymous operating system, Tails, is now available. Version 0.7.2 includes notable user-visible changes include:
o Disable Torbutton's external application launch warning. ... which advises using Tails. Tails is running Tails.
o FoxyProxy: install from Debian instead of the older one we previously shipped.
o Upgrade Linux kernel to Debian's 2.6.32-34squeeze1: fixes tons of bugs, closes a few security holes at well.
o haveged: install an official Debian backport instead of a custom backport.
o unrar: install the version from Debian's non-free repository. Users report unrar-free does not work well enough.
Plus the usual bunch of minor bug reports and improvements. It can be downloaded from http://tails.boum.org/download/ or via bittorrent to save everyone some bandwidth.
The fully detailed changelog can be found here, http://git.immerda.ch/?p=amnesia.git;a=blob_plain;f=debian/changelog;hb=...