There are two main ways in which Tor for clients can fail. A. The attacker hacks you and gets your IP address without breaking Tor This is probably the most likely way that people would be deanonymized. LE have done attacks like this to get around VPNs and Botnets although I have not heard of any instance where they used this technique to get around Tor to deanonymize clients (they have to deanonymize hidden services though). For example, read about CIPAV. In all cases I am aware of LE have used known vulnerabilities that their targets did not patch. Of course it is possible they can use zero days as well, but it seems they do this quite rarely if at all. There is always the worry that they can buy zero days from groups that assist the police for a fee, and unfortunately this business model seems to be growing substantially. Anyway, protecting from this sort of attack requires hardening your system separately of Tor, for example I am a big fan of using virtual machines to isolate network facing applications from Tor and your external IP address. Doing this by itself significantly helps to protect you from this sort of attack, and indeed the targeted hidden services that used this technique were not deanonymized by LE hackers, even though they were penetrated. Additionally, make sure to keep your system up to date and patched, use Tor browser bundle only, I suggest disabling javascript to additionally harden the browser. There are other advanced techniques as well, using profiles with mandatory access control systems like security enhanced Linux or Apparmor, firewall rules, etc. It is also quite helpful to use a security oriented operating system that has features like automatic full ASLR (OpenBSD has this, for example. Others have as well to various extents, in some cases the programs need to be compiled with it but I think OpenBSD always has it for everything.). B. The attacker is able to see your traffic enter Tor and arrive at its final destination In this case they are able to link you to your final destination with a timing attack. Tor is low latency, it doesn't significantly reorder or delay packets and there are statistical formulas that can say if two packets observed at different locations on the Tor network are part of the same stream. Tor banks on the attacker not being able to see the traffic at two different locations (most importantly entry and exit), failing this assumption the attacker trivially defeats Tor. Tor tries to make it hard for an attacker to watch traffic at entry and exit, but it doesn't protect at all from an attacker who watches traffic at entry and exit. This attack is just as applicable to traffic going to clearnet as it is to traffic going to hidden services, even though strictly speaking traffic arriving at a hidden service is not really exiting the Tor network. It may be slightly harder for an attacker to carry out this attack against clients connecting to hidden services than it is for them to carry it out against clients connecting to clearnet websites, but this is only because they first need to locate the hidden service and passively or actively put it under surveillance. the two previously mentioned scenarios / attack methods are by far the most likely way that Tor will fail (or be circumvented), but there are a handful of other exotic / theoretical attacks as well. And of course there are other attacks that completely avoid technical aspects all together, for example Tor will not keep you anonymous if you give out information over it that identifies you. Traditional police work tends to focus on this sort of datamining attack rather than highly technical attacks, it is their true specialty and they are still struggling to utilize sophisticated technical investigatory methods. There are also some attacks on Tor that are very specific to our threat model, membership concealment is much more important when you leak your rough geographic location by shipping packages. Normally the Tor threat model sort of assumes that the users do not leak their rough geographic location, so a user could be in USA or Canada or Japan for all anyone watching their exit traffic knows. In the case of SR vendors this is not the case, not only do they reveal their country but they often reveal their city as well. This can majorly reduce the anonymity set size they have to hide in, an attacker who can observe large amounts of traffic from arbitrary cities in a country can now say that the vendor is one of the Tor users in this city, rather than a Tor user somewhere in the world. If there are not many Tor users in your rough geographic area, this could reduce your anonymity set size by enough to get you under surveillance. Even if there are a lot of Tor users in your area, using a combination of datamining (hm, which of these Tor users has prior drug charges) and membership detection could narrow in on the likely suspect set significantly. The best protection from this sort of attack is to hide the fact that you use Tor, for example by using bridges (although this in itself creates its own intelligence weaknesses, how many people in a country that doesn't censor the internet are likely to use bridges? Not many. So if you use an attacker controlled bridge while you are in the USA, they may have a good idea why. On the other hand, if you use an attacker controlled entry guard in any case you are probably close to fucked, so it is certainly a better option than not using a bridge imo). Laws restricting police agencies from doing dragnet surveillance may help some as well, even if they can detect your IP address is one of the only ones using Tor in your city , they might have legal trouble using that as probable cause to get your customer registration data from the ISP. That said I wouldn't count on the law to protect you much.