We have robust cryptosystems that are pretty good at ensuring privacy and integrity of messages, and we have widespread communications protocols to implement them. Nowadays, virtually any serious website uses HTTPS, at least for authentication or sensitive parts. Google, Facebook, Amazon, Apple, Microsoft and so on all use HTTPS. For most people, that will be 95%+ of the websites they commonly use.

Therefore I don’t really get the point of all the public awareness campaigns about ’unsecure networks’. In fact, I don’t understand why there are unsecure networks in 2017 at all. Wasn't HTTPS specifically designed for this reason? Who cares about MitM attacks, if the man in the middle only reads a bunch of random ciphertext? Why should I worry about accessing my Gmail account from an airport or a fastfood? Isn’t every single bit RSA-encrypted from my computer to the datacenter anyway?

Sure, everyone may know that someone used Gmail, but as long as they don’t get any more information I’m fine with that. I know you can find extreme exemples where you need to encrypt the whole stuff and to hide even the very fact that you went to this website, to hide the very fact that you used this network, etc... But in this case you will be at home with a VPN and strong stuff, not in the nearest KFC with your smartphone connected to their free WiFi network. When we say free wifi we think of messaging apps, e-mail, checking facts with Google searches, Facebook, YouTube, etc. And this is pretty safe most of the time.

Some websites still use HTTP, but if you’re sending credit card details or top-secret communications over HTTP you have a problem anyway, even if you do it at home. And most HTTP websites are just a static webpages presenting a restaurant menu, an event, etc. so hardly sensitive stuff.

Therefore, why are we warned so severely about the security of the networks we use? Why is it still a bad practice to use public WiFi, for instance?

  • I think you are confusing TLS with VPN. Your question is: "why do I need a VPN when I use HTTPS?" You are also assuming that TLS cannot be trivially broken and that all sensitive data traverses a TLS connection. You also assume that the network is playing fair. Your threat model seems to assume that the threat is the other users of the network and not the network itself. – schroeder Aug 1 '17 at 12:39
  • You also dismiss a lot with the line: "And this is pretty safe most of the time." – schroeder Aug 1 '17 at 12:41
  • Sometimes the information that some device is accessing a specific service is enough, The metadata of your connections will be available, even if you are using HTTPS/TLS to connect to the service. Imagine a website that is illegal to visit. Even with HTTPS an eavesdropper can easily tell which device (MAC-Address) accessed the site. – Jonas Köritz Aug 2 '17 at 11:28
  • Information classified "top secret" does not travel over the Internet, period. If it does, you are in a bind whether or not you happen to be using TLS or a VPN. – a CVn Aug 14 '17 at 11:06

You are confusing HTTPS with network security. And, in the more general sense, encryption with security. Encryption only deals with confidentiality and integrity. Availability is usually recognised as part of the Security domain(1).

Not all network traffic is HTTP or HTTPS. Even HTTPS (usually) depends on:

  • DNS - which has no inbuilt protection (2)
  • Wetware compliance

There are still a lot of other protocols in common usage where use of encryption is not available / optional / hidden.

You also only consider your TOE as the client. Even if the TOE is only a browser, the days when this exclusively acted as a client are numbered. Certainly the client host will already be running many services which may be accessible from the network - and the "trusted" network should be one which provides some control over the access to these services. It is worth noting that where more resource is devoted to securing the network, this is often coincident with exposing more of the internals of the potential target devices by management and security services.

but as long as they don’t get any more information I’m fine with that

A lot of AshleyMadison's customers were not fine with their use of the site being made public; we cannot tell you what level of security you require.

And most HTTP websites...so hardly sensitive stuff.

An SSL stripping attack needs to start on a non-SSL page

The internet, and computer security is not bounded by your personal experience / knowledge.

1) Really "security" is a rather abstract collection of a lot of the elements of providing a service. ITIL, for example, at the highest level separates the utility of a service into Performance, Capacity, Functionality, Security and Availability (i.e. treating availability as a separate entity).

2) There is an alternative protocol - secureDNS - which has some protection

|improve this answer|||||
  • 1
    Ashley Madison, porn websites, etc. are the ‘extreme exemples’ I mentioned. It’s pretty extreme IMHO to use the Ashley Madison story to justify not using public WiFi. Most people will just upload a photo to Facebook through a TLS connexion, they won’t cheat on their partner on a rogue website – user135452 Jul 28 '17 at 12:03
  • 4
    You've missed the point - what you consider "extreme" or benign is not what someone else might think. – symcbean Jul 28 '17 at 12:07

It's because computers we own do many things at the same time.

If you just connect to your bank website in incognito mode, verify that your are using HTTPS connection and the certificate the website is using was issued by trusted party to the bank you are safe.

However regular user could fail at any of these steps. He for sure does not understand the meaning of https, so could be tricked into using http to connect to some MiTM website that looks like his bank. He could have outdated browser with some old certificate that was stolen. His system could be already compromised and contain false certificates.

There are many other things that could go wrong. You have many application installed on your device, you don't know how do they exchange information with remote servers. You don't know what information are actively being sent. You can probably trust you bank is up to date with security trends, but what about other websites? Security may not be their top concern, how many passwords were stored somewhere in a plain text and leaked? Maybe some application performs update in a background. How can you know if it is doing that in a secure way and the update is signed? Maybe their certificate leaked. You don't know.

A regular user could also download some application from the internet over http, which instead could be an injected malware. He then opens the file prompted to give admin rights and whole system is compromised.

There could be some 0-day vulnerability in your browser, of course you think you are visiting only trusted websites so you are safe, but you can be redirected to a website with exploit.

What about if the time of your trip will leak over http? Some people maybe interested into knowing when your house is empty. Is this extreme case?

|improve this answer|||||

There are many things to considere here. One is the security of the exchanges, another one is the exposition of the machine.

For the exchange, there can be many attacks against HTTPS and TLS. There are indeed limitations to HTTPS, for example the well known SSL-strip consists in replacing links to HTTPS page with links to HTTP pages. Unless you bookmarked URL containing HTTPS, or control that the page is indeed served through HTTPS, you will end with a HTTP exchange while you expected an HTTPS one. And TLS itself can be subject to a range of attacks, many of them can be mitigated by only allowing the most secure TLS1.2 with an up to date encryption algorithm, but many browsers will accept to downgrade to less secure protocols leaving the exchange vulnerable to older attacks. Finally, even if the algorithms are safe, implementation problems can make the system vulnerable. The best known implementation problems are Heartbleed and Cloudbleed that allowed the attacker to access the server memory to read protected data.

But we should also considere the exposition of the client machine. Operating Systems are large and complex pieces of code and are subject to bugs or to configuration errors. A common demonstration is security related events is to use a rogue hotspot to attack smartphones that will try to connect to it. While first speakers presents the beginning, a second one extracts some data from the participants smartphones, select some non sensitives ones and then shows them just to prove that security requires constant care.

So no, HTTPS is not a magic word that will protect you against all possible attacks. It is important for security, but security cannot be reduced to the simple use of TLS, and avoiding unsecure network is still good practice. That being said public hotspots provided by well known companies are generally not rogue and can be trusted to a certain level.

|improve this answer|||||
  • RC4 is not 'most secure'; although not totally broken (like 'export' and single-DES) it has been badly weakened by a series of attacks, prohibited by rfc7465 over two years ago, and rejected by most up-to-date implementations. (And technically it is an encryption or cipher algorithm, not an encoding.) – dave_thompson_085 Aug 2 '17 at 3:36

Isn’t every single bit RSA-encrypted

No. You don't seem to know much about TLS. And just "HTTPS" doesn't mean anything. It can be incorrectly configured by the server admin, it can use weak crypto, you could communicate with the wrong server altogether (HTTPS to the malicious person can be very secure, but still a problem), there are counterfeit certificates that are accepted by browsers, ...

but that's not really related to plain HTTP sites and/or public Wifi.
Some reasons against that include:

  • Non-credit-card data is still a big problem. Properly connected, the most useless data becomes a gold mine. How about telling your the exact amount of your current loan, just from a photo taken 20 years ago, that you send someone per mail? Large-scale data sniffing, and properly processing the results, can do that and much more.

  • On HTTP connections (including HTTP ads), injecting pretty much any malware in the server response is easy.

  • On public Wifi networks, a malicious person can do even more than just sending you prepackaged malware. Not only there are more possibilites to hack other computers, some of Windows default settings help with this behaviour too. And/or missing updates, and...

|improve this answer|||||
  • Uuuuh How about telling your the exact amount of your current loan, just from a photo taken 20 years ago, that you send someone per mail? Large-scale data sniffing, and properly processing the results, can do that and much more. I think this example might be a tad extreme. – Tom K. Jul 28 '17 at 10:16
  • Well yes, but it's real. – user155462 Jul 28 '17 at 10:47

There is one example that defines why a secure network is important: DNS. If I run my own free wifi access point, and have control over the packets, then TLS is dead. You can go to Gmail, and TLS will still 'work' but you are going to my domain first, which means I see everything you send and receive.

In many corporate environments, you need to install a company certificate that allows the company to inspect all encrypted traffic (even TLS) before it leaves the company network. So, even though you are using TLS, everything you send is exposed.

The threat model that says that having a secure network is important is about the network itself and not about the other users on the network.

|improve this answer|||||