Take the 2-minute tour ×
Information Security Stack Exchange is a question and answer site for Information security professionals. It's 100% free, no registration required.

DuckDuckGo is a search engine that has a Tor Exit Enclave and hidden service. This site is focused on the safe, secure searching of its users.

  • Since DNS is not used in Tor, it appears that HTTPS is less secure due to its reliance on DNS

  • Considering that the Tor Hidden Service protocol encrypts traffic end-to-end, does that remove any threats that exist when compared to a HTTPS session?

  • Is MITM risk reduced?

  • Is name resolution more secure than DNS? (protection from spoofers)

  • Are there additional risks?

Please provide additional details and information. For example, how does Tor HSP compare to HTTPS + IPSEC + DNSSec (or the lack of the latter two)?

share|improve this question
    
"threat protection". what or who is your threat? from whom do you seek protection? –  ordag Mar 7 '12 at 17:36
    
@ordag - I want to list the knowns and unknowns threats between each (TOR vs HTTPS) and see where they overlap and where they are different. So far, the utilization of DNS seems to be a key differentiator. –  makerofthings7 Mar 7 '12 at 17:45
add comment

4 Answers

up vote 5 down vote accepted

makerofthings7 wrote:

it seems TOR is better/more secure since it doesn't use DNS, and it doesn't rely on CAs

Just as it's ultimately the user's responsibility to verify a TLS certificate before accepting it, it's the user's responsibility to verify that an onion address is the intended address. By starting with

  • (a) I know an onion address
  • (b) I know a regular domain name (f.ex. "google.com")

you are stating, by hypothesis:

  • (a) I have solved a tricky problem
  • (b) I have yet to solve a tricky problem

and (a) directly implies more security than (b) because of the stronger hypothesis.

But stating (a) actually means "I know how to solve tricky problems" so you should be able to also solve (b). IOW, if you can reliably obtain an onion address (f.ex. over the phone from someone whose voice you know), you should be able to reliably obtain a TLS certificate fingerprint of the website by the same provider.

But you are probably relying on some Internet resource (website, Usenet message, email...) to learn the onion address:

  • (1) do you trust the claimed author of the message?
  • (2) do you trust that the message was really written by this author?

Maybe the message was found on an HTTPS website, and you are back with:

  • (a) verifying that the owner of the website is the person you trust
  • (b) the website you see is the real website, IOW that the TLS certificate is valid.

Maybe the message was found in an email, and you have to check the PGP/GPG (or S/MIME) signature. Then you are back with: who owns this PGP/GPG/S/MIME signature? In any case, you need a trust anchor.

No cryptographic protocol or tool alone solves this problem, because it isn't an algorithmic matter, it's a matter of fact checking, facts like "this key really belongs to this person", and in most cases trusting others to do the fact checking, unless you can meet the guy in person and ask him his key fingerprint, which honestly is rarely the case (I tried with my bank and they had no idea what the fingerprint of the key was).

share|improve this answer
    
Bank's IT prefer to delegate security responsabilities to experimented pro (like CISCO)... This means: There are very few IT admin in banks, that know how SSL do work... Unfortunately. –  F. Hauri Mar 22 at 7:44
add comment

One problem with HTTPS is that you need to trust the root CA. And most browsers have many of those by default.

With TOR hidden services, the .onion address itself contains a hash of the server public key, so you don't need any CAs.

But the main issue is that .onion addresses aren't very user friendly. So the problem shifts to getting/verifying that you're using the correct .onion address. I see at a glance that stackexchange.com is the site I want, since it's easy to remember. Remembering a .onion address on the other hand is hard.

Some projects such as namecoin aim to create a secure association of user friendly name and a public key. But no such project is integrated into TOR yet.

share|improve this answer
    
Is there any additional information on how the connection is set up and protected from MITM attacks? –  makerofthings7 Mar 1 '12 at 22:14
    
@makerofthings7 - isn't the fact that the path to the server is via different (unknown) relays give you at least some protection against MITM? You can set up a rogue relay, but it will only be able to see parts of the communication, so a targetted MITM should be rather difficult. –  Yoav Aner Mar 6 '12 at 8:49
    
So it seems TOR is better/more secure since it doesn't use DNS, and it doesn't rely on CAs. Add to that complete anonymity and it's quite safe for certain applications –  makerofthings7 Mar 7 '12 at 17:16
    
@makerofthings7 "it seems TOR is better/more secure since it doesn't use DNS, and it doesn't rely on CAs" Just as it's ultimately the user's responsibility to verify a TLS certificate before accepting it, it's the user's responsibility to verify that an onion address is the intended address. By starting with "(a) I know an onion address" and "(b) I know a regular domain name" (f.ex. "google.com"), you are stating, by hypothesis, "(a) I have solved a tricky problem" and "(b) I have yet to solve a tricky problem" and (a) directly implies more security that (b). –  curiousguy Jun 17 '12 at 19:30
    
(...) But stating (a) actually means "I know I can solve tricky problems" so you should be able to solve (b). IOW, if you can reliably obtain an onion address (f.ex. over the phone from someone whose voice you know), you should be able to reliably obtain a TLS certificate fingerprint. But you are probably relying on some Internet resource (website, Usenet message, email...) to learn the onion address: (1) do you trust the claimed author of the message? (2) do you trust that the message was really written by this author? –  curiousguy Jun 17 '12 at 19:34
show 4 more comments

"more", yes. But that's not meaningful if the threat you're trying to counter is not the vulnerability being used against you.

MITM attacks are a strange thing to ask about in Tor hidden services. If you trust the hidden service (maybe you met somebody who handed you a .onion url?), and you trust your Tor client (i.e, the MITM is not feeding you tainted binaries), then, because you're not outsourcing your trust to a Certificate Authority, it provides protection against "more" threats... but so would a self-signed certificate and a pre-shared secret or PGP.

Specific answers to your questions would be:

  • HTTPS also encrypts traffic end-to-end
  • MITM is reduced compared to trusting a CA if and only if you have a shared certificate or .onion or something, otherwise, you're connecting to an anonymous server.
  • There is no name resolution equivalent in TOR (.onions are analogous to network addresses)
  • HTTPS has the additional risk of traditionally trusting every CA in your browser's certificate store (unless you self-sign)

How does TOR HSP compare to HTTPS + IPSEC + DNSSec? A. Apples and oranges. One provides encrypted anonymized communication with anonymous services, the other provides secure communications with services where trust was bought from authorities and registrars (along with the implications of involving money in the trust relationship).

Are you new to Tor? it sounds like you might mistake what it's intended for.

share|improve this answer
1  
Yes, I'm new to TOR, and I'm trying to figure out what type of server application is best suited for hosting a .onion address. It seems that any time a user needs to hide the source IP address, then this may be of benefit. –  makerofthings7 Mar 2 '12 at 22:07
2  
that's correct. One good example of why to use a Tor hidden service would be to blow the whistle on government abuse of power, or to deliver a story to a media organization. Tor exit nodes are outrageously dangerous to run, but Tor hidden services are reasonably safe. Duckduckgo's Tor hidden service 3g2upl4pq6kufc4m.onion , lets you search for things you'd be afraid to search for normally. E.g., if you're single in Iran and looking for information about contraception. Keeping the search off the Tor exit nodes shrinks the number of people who know what you're looking for. –  mgjk Mar 3 '12 at 20:36
    
Thank you mgjk - So now we are in the same frame of mind... given that a HTTPS connection has so many security issues (documented on this site), how does a TOR based connection compare? –  makerofthings7 Mar 3 '12 at 21:03
1  
HTTPS uses SSL, Tor uses TLS. TLS and SSL are almost identical. HTTPS is usually for web browsers. Tor is usually for web browsers. The weaknesses in HTTPS are in the CAs or in browser info leaks. Tor doesn't use the browser's CA trust list for TLS, and when you load a stack for Tor, you turn off all the known leaks for info (e.g., scripting, plugins, cookies, etc.). So Tor is stronger... but if you used tools to protect from information leaks in HTTPS and you used self-signed certificates with shared secrets, you'd be just as well protected as Tor... but you would not be anonymous. –  mgjk Mar 3 '12 at 21:48
1  
It depends on the scenario. You can disable all that stuff in https, using self-signed certs, ip addresses and disable all scripting and plugins. It would give you more control but no anonymity, and in your certificate, you could specify the strength of your encryption with your clients. Without knowing the scenario, it's highly theoretical. Security can't be quantified in this way. (btw, you have to have a bad CA and a DNS hijack to break https). –  mgjk Mar 7 '12 at 18:35
show 9 more comments

Just use Tor and tunnel through an Internet SSL/TLS proxy. Just make sure the tunnels and DNS resolvers are configured properly on both sides. There's a lot to know about this stuff, and it's best if you can troubleshoot, verify, and understand every little detail.

Some tools such as Qualys SSL Labs and sslstrip/ssldump are very helpful.

Another, potentially better option is to utilize something like OpenVPN to your own hidden Tor node.

In other words, don't compare these technologies; combine them.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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