It seems very easy for my ISP to firewall all tor nodes and redirect all connection to a fake tor node or network of fake tor nodes.
How can I make sure it is not the case?
Tor Stack Exchange is a question and answer site for researchers, developers, and users of Tor. It only takes a minute to sign up.Sign up to join this community
The Tor binary contains fingerprints of keys for the directory authorities. These are used to then load the consensus, which contains key material for all other relays.
Unless your ISP has some new attacks on cryptography that are unprecedented in literature or known real world application, they cannot do this.
The easiest way for them to do this is to subvert the copy of
tor that you receive. Ensure that you verify the signature of the
tor package, the Tor Project website lists their signing keys. Again, to break both the HTTPS (which is pinned in most modern browsers, which makes it harder to perform a TLS MITM even if you own a rogue CA) and the hash function used to break the fingerprint or the cryptography protecting the private key from being derived from the public would require some extra-ordinary breakthrough in mathematics or computing power.
If you follow steps of the fetching the signing key, verifying the fingerprint over HTTPS (or through a pre-existing web-of-trust), downloading both the tor package and signature for the package over HTTPS then verifying the signature and ensuring it is signed with the correct key.
However, these steps assume that the layer above it is trustworthy (e.g. that your operating system and hardware are serving you and not some malicious third party). Ultimately trust must be anchored somewhere, if you do not trust your hardware or operating system, you cannot trust anything that you run under them.