if the descriptor ID is predictable, how easy is to muscle into the positions in the list just above a target site, ensuring that you become its HSDir that day?

To prove the point they then used their brute force technique to make themselves all six HSDirs for Facebook’s .onion site

  • So they were able to make themselves the servers (facebook) entry nodes?
  • Is this as devastating an attack to general users?

The HSDirs change each day because the site’s digest, which is based on its ID and the date, also changes (in a deliberately predictable way) every day.

  • Why the hell is anything about Tor's design predictable? Wouldn't randomization be our friend with these types of anonymity tools? I'm sure the complex work that goes into developing the tor network justifies the "predictable" nature of the vulnerability but even a basic user such as myself can see how randomizing as many variables as possible can be beneficial.
  • At least they are doing something about it with their next gen hidden services implementation: blog.torproject.org/blog/… Sep 11 '16 at 7:58
  • You were asking multiple questions at once. This makes it hard to give a good answer, please split your question in several questions.
    – Jens Kubieziel
    Sep 16 '16 at 19:22

Quick synopsis

This is oldish research that was presented about a year ago by Filippo Valsorda and George Tankersley at HITB.

Sophos are an anti-virus company. They have a product to sell and the person who wrote the article clearly doesn't know what they're talking about, for example...

"recently revealed a new vulnerability" is false in that it wasn't recently revealed and it wasn't a new vulnerability, the limitations of onion services have been long acknowledged, they presented a practical attack against know weaknesses.

"Network packets are wrapped in multiple layers of encryption" isn't true either, packets are not encapsulated, stream data is.

"Each relay in the circuit peels back one layer of encryption, revealing the address of the next relay." not really how it works either.

"In 2012, researchers at the US Naval Research Laboratory and Washington DC’s Georgetown University investigated Tor’s vulnerability to traffic correlation attacks" This was already addressed by improving the guard parameters to make it more resistant.

"Operation Onymous, a 17-nation sting that took out over 400 Dark Web sites" actually that figure wasn't true and the number was later admitted to be something like 27 sites. "The figure of 414 dark net sites, which was widely reported internationally, and appeared in many news headlines, was later adjusted without explanation to "upward of 50" sites. The true figure is thought to be nearer to 27 sites, to which all 414 .onion addresses direct.". 10/10 for regurgitating since-disproven misinformation without even reading Wikipedia.

"involved a correlation technique" it was actually a traffic tagging/confirmation technique.

"So they were able to make themselves the servers (facebook) entry nodes?"

No, they were able to make themselves the HSDir that will serve the descriptors for facebook's onion service. This would allow them to censor the onion service, or ensure that anyone wanting to use Facebook's onion had to talk to them to find out where to initiate contact.

"Is this as devastating an attack to general users?"

Not really, what this would get you is that with a successful correlation attack (which isn't trivial) that you could say with some percentage of certainty that Bob requested the descriptor for Alice's onion, assuming you knew Alice's onion address and ran 6 relays over a 4 day period where you'd known 4 days prior which onion was Alice's and that no other relays had been added to the set of HSDirs during that time (imagine if two or more people tried this at once and both injected 6+ of their own HSDirs each...). It wouldn't even let you say for certain that Bob ever actually contacted Alice's onion direct even if you were already watching Bob and knew the address of Alice's onion.

"Why the hell is anything about tor's design predictable?"

It had to be, Alice and Bob share no secret except the onion address. Anyone with Alice's onion address has the same knowledge as Bob, and so must also be able to figure out where to ask for her descriptor. The improvement being made is the addition of Shared Random Value to the consensus, this would make it infeasible for anyone to predict their position in the HSDir hash ring prior to calculating their relays identity key and publishing their relay descriptor.

Additional thoughts

People with high security onion services shouldn't be advertising them in principle, and there are further authentication methods that can be used that would mean that even if an adversary was able to discover the onion address (through use of a naughty HSDir, for example) they would not be able to discover what services the onion provided without knowledge of a out-of-band distributed shared secret. Further still, an onion service operator can instead publish an encrypted descriptor on a per-client basis which means knowledge of the onion address would only allow the client to denial of service or deanonymize themselves, not any of the other clients.

Your comments about "even a basic user such as myself can see how randomizing as many variables as possible can be beneficial", I'd like to know where you imagine that "randomness" would come from, without something like the change to the consensus and a whole new cryptographic protocol being engineered, as is currently being done?

Not the answer you're looking for? Browse other questions tagged or ask your own question.