3 ms·
These words "secure" and "insecure" when used as synonyms for "encrypted" and "plaintext" obscure more than they illuminate and have done a lot of damage to the
by rsj_hn 5y ago
These words "secure" and "insecure" when used as synonyms for "encrypted" and "plaintext" obscure more than they illuminate and have done a lot of damage to the world of software security. They stop thought. You would not believe how many times I've talked to a company with some complex webapp and asked for their security policy and they respond with some statement about using TLS. It's absurd. Then even in books or standards, you are starting to see chapters called "security/cryptography". As if encrypting something was a type of security pixie dust.
I am not trying to relitigate the battle of SSL's naming scheme, that battle was lost, and now people associate "security" with encryption. Who knows, maybe in the future they will associate "security" with bitcoin. But it's certainly not true that every plaintext connection is an insecure connection in the sense of actual security. Not everything needs to be or should be encrypted, and many things obtain no benefit whatsoever from being encrypted.
- rgj 5y agoIn TLS context, “secure” and “insecure” don’t just mean (un)encrypted, but also whether the connection is authenticated, i.e. whether you can be fairly sure you’re looking at the “real” website. This is a far more important property of a site using https. Especially in a world full of disinformation, authenticity and integrity of information are often a much greater good than confidentiality.
- rsj_hn 5y agoI understand what TLS does, but an argument that "we live in a world of disinformation" is not a substitute for having a well defined threat model and for many websites, particularly sites that broadcast information or download binaries which might already be signed or have hashes distributed via alternate means, there does not need to be a threat that requires TLS to address it. Like it or not, it is up to the information owner to determine their threat model and which mitigations are suitable for that threat model. If someone is broadcasting a message containing information that is public, they may not consider someone intercepting a response and altering it to be a threat that needs addressing, or they may consider alternate mitigations as sufficient -- e.g. the fact that many people can independently verify the information from different sources. For the vast majority of sites, this is a reasonable assumption. Just because you may be worried about this threat doesn't mean the information owner needs to be. Of course you as an information consumer have your own threat model, and if you are really worried about someone targeting you and altering http responses sent to your browser, then you may not want to visit unencrypted sites. That is also legitimate. The information owner can't force their threat model on you anymore than you can force yours on them. But words like "secure" and "insecure" make sense only with respect to a given threat model, they are not attributes of an http connection.
- enzanki_ars 5y agoLike others have said, I agree that stating that TLS does not garuntee security. But, plain unencrypted HTTP does mean insecure. For a good discussion into why _all_ websites should use HTTPS, and the many different ways that not having the connection secured is actively harmful and why should not be done in the modern era. https://www.troyhunt.com/heres-why-your-static-website-needs https://www.troyhunt.com/heres-why-your-static-website-needs... Not having your site as HTTPS puts all of your website visitors at risk. Even US ISPs like that of Comcast use these very same practices to inject warnings into insecure web traffic[0], some of which look more like advertisements than warnings. And like mentioned in the article, promises from ISPs not to use it for advertisements are just that, promises, and those can be broken in an instant. And when you have the power to inject anything without notice, you can do anything and everything with the website experience. You can attempt to force a download, present scam pages that look like antivirus warnings or software updates, one of the easiest ways to have users fall for malware. We should _never_ expect regular non-technical users to have all of their threat models in mind, nor should they be expected to understand all of these differences. Website owners should be expected to protect all of their visitors as best as possible and one of the easiest ways to start is by protecting their website with modern HTTPS encryption. Otherwise, it would be like a chef leaving the bones in a salmon before serving to a customer. You could do leave them in, but a customer might not know they are there and you have left a choking hazard. [0]: https://gizmodo.com/comcast-to-customer-who-noticed-it-secre https://gizmodo.com/comcast-to-customer-who-noticed-it-secre...
- rsj_hn 5y ago> I agree that stating that TLS does not garuntee security. But, plain unencrypted HTTP does mean insecure. No, it does not. These are bold statements made without evidence that your personal preference should override the threat model of information owners -- that they must worry about something they have looked at and chose not to view as a threat. I once had a website that had Hebrew drills, so you could look up the construct forms of various nouns and other grammatical information. I did not care if an attacker in a coffee shop or other public network was trying to intercept that site and give a victim incorrect Hebrew words. It was not a threat in my threat model. So I did not use https. My website, my information, and I know the threat model to use. My site would not have been more "secure" if everything was encrypted. There would be no meaningful benefit to anyone from me doing that, and being a security professional, I was not interested in security theater, but only actual security. > We should _never_ expect regular non-technical users to have all of their threat models in mind Correct. That is why the threat model of the information owner is what determines what a site serves. Information owners generally do have a threat model in mind. It is, after all, their information, their website, and their security policies that matter. They are the ones in a position to decide whether they care if their http responses are altered or not in targetted attacks on public networks. Obviously a site that accepts credentials or displays sensitive information is very different from a site that displays verbal patterns. The fact of the matter is that in many cases, there is no need to care and no real security benefit to encrypting the site.
- orf 5y agoIn the era of instant, free and stupidly easy to configure TLS certificates why not just serve it over HTTPS?
- rsj_hn 5y agoIt's definately easier nowadays to do it, but you still have the issue of services becoming unavailable because certs expired - something that routinely happens, so it adds some operational overhead that - in the examples I described -- provides no benefit. This operational complexity is there even if the certs themselves are free. More importantly, security theater is something that should be avoided as it creates bad habits and promotes irreality in a field already rife with the same. I'm not sure why cryptography struggles so much with this, but there are a lot of people who don't understand what benefits, if any, cryptography provides to their application but decide to add it in anyways. This should be considered a bad practice. Imagine if someone told you to add a function to a codebase just because other codebases had it, and what harm can it do, even if this function served no purpose and doesn't require too many CPU cycles. Most software developers would oppose the idea, they would want to add code only when it is needed, and would favor the removal of unneeded code as beneficial, given that this simplifies the codebase. The same is true for encryption, which requires a lot of CPU cycles, and adds non-trivial complexity. So the idea that it should be added everywhere even where it's not needed is something we should resist.
- orf 5y agoIn the time it took you to write this reply you could have set up an auto-renewing certificate for your site with let’s encrypt. Or you could have pressed a button and have it served behind cloudflare. The nuance of if encryption is really required in this specific case is pointless when it is so easy and readily available. The effective direction becomes “just blanket serve everything over HTTPS” because there isn’t much downside.
- mistrial9 5y ago>auto-renewing my super-smart and hardworking admins just lost a dozen services over the weekend because one of the hundred "easy" certs they manage expired, was not refreshed for whatever reasons, and the node happened to be an LDAP services node. at some point, "easy" and "instant" becomes "needs constant attention"
- yjftsjthsd-h 5y agoI'm happy to agree that TLS doesn't guarantee security, but plaintext HTTP does guarantee insecurity.
- deleted 5y ago[deleted]