1

I am not an expert in Wireshark but I was looking at some packets through Wireshark. I noticed that when using a relay that the connection to the directory authority the first few TCP packets such as the SYN, SYN-AKN and the AKN are occurring before the TLS hand shack

Q 1 So I am assuming that this is unencrypted data. Is this correct?

Q 2 Are the first three packets I see (SYN, SYN-ACK and the ACK) between the tor client and the tor relay and bridge and all packet there after encrypted when using a bridge and a relay?

Q 3 If the keys are public keys that are used to connect to the tor network would the keys be know by the attacker as well ?

Q 4 Does this mean the attacker can intercept the connection?

1

Q 1 So I am assuming that this is unencrypted data. Is this correct?

  • There is no "data", this is a TCP handshake, you cannot send data until the 3 way handshake is completed. This is simply establishing a TCP stream for the application data to be sent over.

Q 2 Are the first three packets I see (SYN, SYN-ACK and the ACK) between the tor client and the tor relay and bridge and all packet there after encrypted when using a bridge and a relay?

  • No, the process is the same. Any TCP connection must start with this handshake. There is nothing to encrypt at this stage of the connection.

Q 3 If the keys are public keys that are used to connect to the tor network would the keys be know by the attacker as well ?

  • Yes, the attacker would know the public keys however the attacker cannot decrypt data encrypted to the public keys without the corresponding private key and similarly they cannot sign data from the public key without the corresponding private key. The private key is only known by the relay you're communicating with, this acts as proof that you are talking to the relay you intended to talk to.

Q 4 Does this mean the attacker can intercept the connection?

  • No, the attacker has no knowledge of the private key, only the public key.

Further reading: TCP Handshake, Public Key Cryptography.

0
Q1 No
Q2 Yes
Q3 Keys are hardcoded into a tor's binary to prevent spoofing
Q4 see Q3

In tor source code there're IP's and keys hardcoded, so MitM here is technically impossible because there's no need in key exchange and negotiation. After connecting to the directories, a list of node descriptors is fetched - and the every node's key is a part of it's descriptor.

UPDATE after your question update:

  • Q3 yes, they are well-known, they're public keys. It does not mean anything bad for client and brings no profit to the attacker: Tor node list is easy to query and the datasets that is provided by directories are public and open. That's also why there's a mirroring mechanism in Tor network when nodes that are elected as a "directory mirrors" are caching signed replies from directories and making a load-ballancing and censorship-by-ip protection.
  • Q4 he can read it, but not modify/alter: it's like a HTTP GET query to a CDN for a digitally signed content when you have a key on your side. An attacker will read nothing new than querying the directories himself. Directories does not provide personally-related data in such a query-response cycles. All the sensitive communications are done via Tor protocol with a multi-layered onion encryption, so there's nothing to worry about.
0

This may help

Could Tor be hacked, revealing users' personal info?

"all software is subject to flaws, both in design and implementation. Tor has had them in the past, Tor also relies on OpenSSL which has had numerous vulernabilities. However, only your guard or a man-in-the-middle between your guard and you can attack a Tor clients OpenSSL.

The far larger problem, and the source of most of the large-scale hacks performed on Tor users is through the application that the user is using over Tor. For example, Tor Browser has regular updates that fix vulnerabilities."

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.