I've been researching methods to monitor hidden services for a university project. I came across this paper which talks about injecting relays as hidden service directories to gather onion addresses. To make this affordable, the researchers take advantage of what they call "shadowing".

From the paper:

However, by inspecting the Tor source code we noticed that while only two relays per IP appear in the Consensus, all running relays are monitored by the authorities; more importantly, statistics on them is collected, including the uptime which is used to decide which flags a relay will be assigned.

This would allow them to get the necessary flags to get the HSDir flag for more than two relays on a single IP.

Our approach is based on shadow relays described in the previous section. An attacker can use this artifact of Tor’s design as follows. She can rent 50 IP addresses and run 24 relays on each of them for 25 hours thus running 1200 Tor instances in total; 100 of them should appear in the consensus. The fingerprints of the public keys of the relays should fall into every second gap in the fingerprint circle. At the end of 25 hour time period all of the relays will have HSDir flags but only 100 of them will appear in the consensus and the rest will be shadow relays. The idea is to gradually make active relays unreachable to the Tor authorities so that shadow relays become active and thus gradually cover all gaps in the circular list during 24 hours.

I was wondering if this technique is still possible given that the paper is from 2013 and this might have been patched since then.

Additional question:

Now that the "stable" flag is a requirement to get the HSDir flag, how long does a relay need to run in order to get the HSDir flag?

From the Tor documentation:

"Stable" -- A router is 'Stable' if it is active, and either its Weighted MTBF is at least the median for known active routers or its Weighted MTBF corresponds to at least 7 days.

Does this mean that 7 days of uptime is not a requirement for the "stable" flag?


As far as I know it is still possible to do those kind of attacks against the network. However Tor tries to detect bad relays and block them from participating in the network. So there is a high chance that your research doesn't lead to satisfactory results.

Tor has created a Research Safety Board. You can ask them for advice on how to best conduct your research while not harm the actual users.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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