Slashdot Mirror


Ask Slashdot: Has Gmail's SSL Certificate Changed, How Would We Know?

An anonymous reader writes "Recent reports from around the net suggest that SSL certificate chain for gmail has either changed this week, or has been widely compromised. Even less-than-obvious places to look for information, such as Google's Online Security Blog, are silent. The problem isn't specific to gmail, of course, which leads me to ask: What is the canonically-accepted out-of-band means by which a new SSL certificate's fingerprint may be communicated and/or verified by end users?"

52 of 233 comments (clear)

  1. Revocation by Anonymous Coward · · Score: 4, Insightful

    Google can easily revoke certificates. They can even install what ever they want on my computer as a replacement for google chome with their automatic background updates. Don't worry about it, they own your computer and will take care of it for you.

    1. Re:Revocation by houghi · · Score: 4, Funny

      google chome with their automatic background updates.

      That is why I use Firefox. I installed it when it was version 7 and it still is version ... (Checks version) ... How did it get to this version 23?

      --
      Don't fight for your country, if your country does not fight for you.
    2. Re:Revocation by bsane · · Score: 2

      Firefox checks and updates when you run it. On OSX Chrome creates a launch service that keeps a daemon running that constantly communicates back with goog- even if you never open chrome again. Delete chrome? Background daemon continues to talk to goog- it doesn't go away until you use the CLI to remove it.

    3. Re:Revocation by Mr.+Slippery · · Score: 3, Informative

      I installed it when it was version 7 and it still is version ... (Checks version) ... How did it get to this version 23?

      In case anyone doesn't know, you can turn that off. Also, I advise getting on the "extended service release" (ESR) track.

      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
    4. Re:Revocation by Mr.+Slippery · · Score: 2

      They use the Bing engine

      Bing is just one sourse they use of many. "DuckDuckGo gets its results from over one hundred sources, including DuckDuckBot (our own crawler), crowd-sourced sites (like Wikipedia, which are stored in our own index), Yahoo! (through BOSS), Yandex, WolframAlpha, and Bing."

      I find I still have to fall back to Google search occasionally.

      Use StartPage instead, it proxies Google results.

      --
      Tom Swiss | the infamous tms | my blog
      You cannot wash away blood with blood
    5. Re:Revocation by fast+turtle · · Score: 2

      What do you mean? The NSA already signs every god damn cert issued on the net as they own the Root CA's Private key and have for some time. How in hell do you think they've managed to record the meta-data from every fscking net conversation?

      --
      Mod me up/Mod me down: I wont frown as I've no crown
  2. Google announced this by supersat · · Score: 5, Informative

    Back in May, Google announced that they would be making changes to their SSL/TLS certificates in the coming months: http://googleonlinesecurity.blogspot.com/2013/05/changes-to-our-ssl-certificates.html

    If you use Chrome, Google's SSL certificates are pinned, so that gives you some additional assurance.

    1. Re:Google announced this by Trax3001BBS · · Score: 5, Informative

      Back in May, Google announced that they would be making changes to their SSL/TLS certificates in the coming months: http://googleonlinesecurity.blogspot.com/2013/05/changes-to-our-ssl-certificates.html

      Oh No's!
      "Even in less-than-obvious places to look for information, such as Google's Online Security Blog, are silent."

      To a non-story
      "Back in May, Google announced..."

      Thanks for that.

    2. Re:Google announced this by spottedkangaroo · · Score: 4, Informative

      ECC keys are shorter than RSA keys. 256 ecc is like 3072 rsa bits.

      --
      Imagine if you weren't allowed to use roads because a bus company complained about your driving 3 times. --skunkpussy
    3. Re:Google announced this by CaptSlaq · · Score: 2

      ECC keys are shorter than RSA keys. 256 ecc is like 3072 rsa bits.

      It's not the length but how you use it?

  3. Expiry by jamesh · · Score: 2, Informative

    Was the old cert due to expire? I have thought before that it would be nice if my browser etc gave me a warning like "Certificate has changed but wasn't due to expire for another 3 months". This still gives the bad guys a window where a subverted certificate could be slipped in without notice, but it closes the window a bit.

    Also is it common to revoke the old certificate when replacing it, even if there is no reason to suspect the old certificate was compromised? If so that would be another warning that could be presented

    1. Re:Expiry by Anonymous Coward · · Score: 4, Informative

      I use with Firefox the Certificate Patrol add-on for detecting, when the certificates are changed. At least then you know, when the certificate has been changed.

    2. Re:Expiry by pe1chl · · Score: 2

      Unfortunately it issues warnings all the time, especially for google and twitter.
      They occur so often that you (or at least me) get the habit of accepting them without further checking, to be able to continue working.
      This largely defeats the usefulness of this add-on.

      It appears that google twitter use different certificates on different servers around the world, and you get those warnings when
      the loadbalancing mechanisms direct you to another server you were using last time (for the same domain name).
      Either that, or their communications are intercepted by the local security agency who acts as a man-in-the-middle.

      How would you know?

  4. Why do we trust SSL? by JWSmythe · · Score: 5, Insightful

        That made me wonder about something at work recently. All the machines at work are owned by the organization. It would be trivial for them to add their own trusted signing authority, so they could MITM every SSL web site. It wouldn't be terribly hard to auto-generate "valid" SSL certs, and have it tagged as whoever you want the signing authority to be. All they'd have to do is add their own cert, in this case named "GeoTrust Global CA", and they'd have perfect control. To do it perfectly, they'd just need to query the site you're going to, and match up the signer's CN and sign the new fake cert, and you wouldn't know the difference. Who tracks the fingerprint of every cert for every site they go to? Well, I'm sure in this crowd, a few do.

        It's good for network security, as they can pump everything out through a common proxy (or cluster of proxies) and inspect all the traffic for malicious intent (malware inbound, or organization secrets outbound). It's not good for privacy, if you were to visit your bank, gmail, etc.

        As far as that goes, there are an awful lot of "trusted" signing authorities that come with any browser. I know we should probably trust them, because the authors of the browsers trust them. There's no really good reason to do so, other than if you don't, all SSL sites will warn that they may not be trustworthy.

        I was considering a while back, how would *I* become my own signing authority, to be trusted by all browsers. I didn't find a good answer. An intermediary cert would solve it, but I didn't find how to accomplish that. Like, who do I throw money at to get one. Getting added to all browsers would be another even larger headache.

        My thought on it was, technically it isn't hard to do. I could spend a day writing a very nice site, that would verify ownership and make whatever cert for the domain. Why can't I (or whoever) offer $5/yr, or $50/10yr single domain or wildcard cert? The code and infrastructure isn't very heavy.

        Needless to say, since you haven't seen JWSmythe's Cheap Certs available, it never happened.

    --
    Serious? Seriousness is well above my pay grade.
    1. Re:Why do we trust SSL? by forkazoo · · Score: 5, Insightful

      That made me wonder about something at work recently. All the machines at work are owned by the organization. It would be trivial for them to add their own trusted signing authority, so they could MITM every SSL web site. It wouldn't be terribly hard to auto-generate "valid" SSL certs, and have it tagged as whoever you want the signing authority to be. All they'd have to do is add their own cert, in this case named "GeoTrust Global CA", and they'd have perfect control. To do it perfectly, they'd just need to query the site you're going to, and match up the signer's CN and sign the new fake cert, and you wouldn't know the difference. Who tracks the fingerprint of every cert for every site they go to? Well, I'm sure in this crowd, a few do.

      It's not merely possible. It's deployed, off the shelf technology. Not necessarily common, but many companies that do it see it as a cost reduction of more effective proxy usage, rather than anything nefarious.

      That said, the way SSL is handled by the browsers is absurd. Not notifying on changes compared to a cached fingerprint, and giving huge warnings on self certification are blatantly obvious errors in judgement. Conflating encryption and identity in one awkward mess has probably done more harm than good. IMHO, it should work a bit like SSH, where the first time you go to a website, you see a little unobtrusive popup saying, "This connection is encrypted. The site claims to be "Foo corp." The identity is (not verified || vouched for by the following : CA Bar, CA Baz). " Adding certs for CA's should be really obvious, not obscure black magic. So, if you attend University of Foo, you can add their self signed cert and all the servers on campus that you access over https will show up as signed by U of Foo. Untrusting certs should also be obvious in the UI. Some web of trust model should be available. If you ever get something other than what was cached, you should see the details side by side.

      As is, the system is mostly useless. It fails utterly at identification. And, it scares people away from using encryption on self signed certs. (As if that were somehow worse than operating entirely in plain text...)

    2. Re:Why do we trust SSL? by steelfood · · Score: 4, Insightful

      The current implementation in web browsers was designed by people who couldn't tell the difference between authentication and authorization.

      The reason why this paradigm has persisted is unknown, but the answer for you may vary depending on which end of the paranoia spectrum you're on. If you're on the Hanlon side, you'd say that the code is too old, and trying to change it would require too much work, so nobody really bothered. If you're on the conspiracy nut side, you'd say that the NSA and their agents are actively trying to keep these types of changes from going in.

      This problem with SSL certs has been known for the better part of 10 years now, and has been in focus for at least the past 5-7 years. Why Firefox could go through 30 revisions in that time and keep this behavior while changing practically everything else is quite the mystery. I'd say the same about Opera or IE, but they're closed-source and hence could not be subjected to the same standards of scrutiny. In fact, if there ever was a failure to the OSS model security-wise, Firefox's 1990's method of handling certs would be a prime example.

      --
      "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
    3. Re:Why do we trust SSL? by citizenr · · Score: 4, Insightful

          That made me wonder about something at work recently. All the machines at work are owned by the organization. It would be trivial for them to add their own trusted signing authority, so they could MITM every SSL web site.

      You just described for every enterprise firewall/scanner solution works

      --
      Who logs in to gdm? Not I, said the duck.
    4. Re:Why do we trust SSL? by Nkwe · · Score: 3, Insightful

      All the machines at work are owned by the organization.

      You can stop right there. If the organization owns the machine, you have no expectation of privacy, legally or otherwise. From a technical perspective, if anyone other then you has administrative access to the machine, you should have no expectation of privacy. If you let malware gain administrative access, same story.

    5. Re:Why do we trust SSL? by wvmarle · · Score: 3, Insightful

      As far as that goes, there are an awful lot of "trusted" signing authorities that come with any browser. I know we should probably trust them, because the authors of the browsers trust them. There's no really good reason to do so, other than if you don't, all SSL sites will warn that they may not be trustworthy.

      The one and only reason you can trust them, is because if their trust is broken, the company is out of business really soon. Prime example of course is DigiNotar which was declared bankrupt a month after a breach of its certificates came to light.

      As soon as such a breach happens, browser vendors very quickly remove the offending certificate and push out a new update. Anyone using certificates from that vendor is forced to change almost instantly or people have issues accessing their web sites.

      And that's the one and only reason you can trust them - and why that trust is fairly worthwhile.

    6. Re:Why do we trust SSL? by VortexCortex · · Score: 5, Insightful

      That said, the way SSL is handled by the browsers is absurd. Not notifying on changes compared to a cached fingerprint, and giving huge warnings on self certification are blatantly obvious errors in judgement. Conflating encryption and identity in one awkward mess has probably done more harm than good. IMHO, it should work a bit like SSH, where the first time you go to a website, you see a little unobtrusive popup saying, "This connection is encrypted.

      Yep, completely absurd. Go into your browser security certs and notice that the Chinese root cert "CNNIC" is installed. That means any of those trusted roots can simply create an SSL cert for Google.com and unless you're manually verifying the cert chain every time you connect, you won't know you've been MITM'd -- Big green bar and everything... I like your idea about making things more like SSH, but I'm afraid users will just click through it without reading any warnings anyway. Oh, if only PKI hadn't been invented! Why, then we could just use some session salt nonce HMAC'd with our pre-shared key (password) to set up a connection that no man in the middle can intercept (since they don't have our password, or password hash, etc pre-shared secret). I can do this in JavaScript, (or more favorably with a plugin), but we really need the browsers to just prompt us for the credential to our bank or email BEFORE it ever makes the request or displays the password entry form -- The request comes in, says : "I'm user X, here's my nonce, gimme your nonce server, and we can start encrypting data with HMAC( PW, N1 ) as the key". Public key crypto should have only ever been used at account creation (the only time you need to send the pre-shared secret). I've always known the entire security community was full of morons since they didn't bitch about the foolishness of SSL PKI loudly enough -- Oh, and for the "but muh passwerds!" folks: Built in password manager. Different random password for every site, master password to unlock the keystore. This is 2013 and since it's not standard addition to browsers, I'm not sure folks like you or me CAN do anything about it if we haven't already.

      Additionally: People who searched for "Tinfoil Origami" also clicked on Convergence.

    7. Re: Why do we trust SSL? by philip.paradis · · Score: 2

      No, a self-signed certificate is not sufficient for what you're describing, or anything requiring actual security, unless you've set up your own CA in advance and added the corresponding root CA cert to your local PKI store (in the case that you're the operator of the forum), or added the root CA cert the forum is using (if any formalized CA infrastructure is being used at all on their end, given it's a self-signed cert) via an out-of-band source that you have reason to trust, or have a trustworthy out-of-band means of verifying the digital fingerprint of the certificate you're being presented with in the first place. The fundamental issue is simply that otherwise, the first time you visit the hypothetical forum site to register an account, you have no means of determining whether you're speaking directly to the forum server or a man in the middle. Men in the middle can be your ISP, the feds, whoever, and can have shall we say rather persistent presences in Internet architecture.

      Please, please, please stop spreading misinformation like this. Please educate yourself, starting with Applied Cryptography. If you're not willing to speak intelligently on this topic, kindly stop misleading others and make your own mistakes in silence.

      --
      Write failed: Broken pipe
    8. Re: Why do we trust SSL? by philip.paradis · · Score: 2

      You stated, and missed the point of, the entire problem here, namely initial connection verification. OpenSSH should be treated in exactly the same manner, as it relies upon PKI in the same manner. Out of band fingerprint verification is essential to ensuring the integrity of such communications, which I'll reiterate you utterly failed to mention in your post while you were busy espousing the virtues of self-signed certs without any further guidance on the concerns associated with them. I verify every single key I accept via highly trusted out of band means. I'm fairly certain if I asked you how you'd manage to perform such verification, you'd spend fifteen minutes madly Googling answers and likely winding up parroting various one-liners you found on half-baked newbie forums (with self-signed certs, natually) to attempt to prove your expertise.

      To address your second point, I'm not saying the feds haven't compromised large scale commercial CAs through friendly visits, but that's really not at all the most efficient means of intercepting and decrypting comms at wire speed. I say this as someone who could build you the infrastructure required to do that.

      In short, stop talking and start learning. Shut your mouth for a few years to avoid dispensing horribly misleading "advice" to others in the general community, and have a nice day.

      --
      Write failed: Broken pipe
    9. Re:Why do we trust SSL? by AmiMoJo · · Score: 2

      Actually it is illegal for companies to read personal email received at work in much of the EU. If you open gmail.com in a browser and check your mail at lunch time they are not supposed to spy on it. People have gone to jail for doing so.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    10. Re:Why do we trust SSL? by BitZtream · · Score: 3, Interesting

      Forge the CA so you can forge the certificates to do a man in the middle, its trivial. I've done it on multiple occasions at work in order to facilitate sniffing passwords to migrate users to different a new service (say from office365 to gmail without getting everyones passwords by asking).

      You only know the thumbprint doesn't match if you check it and manually record it. Your browser's checks are being processed correctly via the forged certs.

      I sign our MITM certs with our domain CA, its clear that we're doing it ... if you bother to look. I'm not trying to hide it, just accomplish part of my job. Being that we're on an ActiveDirectory domain with a certificate authority, the domain cert is automatically deployed to all the windows domain PCs, all I have to do is have the domain CA sign certs for my use, and all the PCs trust it.

      It requires nothing special to accomplish and is working as designed. When you're using someone else's computer, you should assume they can see and hear everything you are doing at a minimum.

      And no, you have no right to privacy on your companies computers or network at work, thats what you have your own home computer and network for.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    11. Re:Why do we trust SSL? by BitZtream · · Score: 3, Interesting

      SSL has absolutely nothing at all to do with authorization. It carries no authorization information.

      You are confused and clearly don't understand how SSL works and what it does.

      SSL works by generating a new password for a symmetrical encryption algorithm on each session. Neither end knows the password before that point, they actually generate it together based on a communication method that ensures only the end points know the password.

      Because both sides generate a password for each session, if you did not do authentication, anyone could jump in the middle and generate a password with you, and then create a new session to the destination you thought you were connecting to.

      Authentication uses asymmetric encryption and public key infrastructure to verify that the system you are connecting to is who you think they are and not someone else, thus preventing a man in the middle attack. No authentication, your encryption is as good as useless as it can easily be intercepted and broken over the wire without you noticing.

      There is no other way to work on 'web scale' authentication of connections other than PKI. Its simply a distributed automated OFFLINE CAPABLE way of verifying authentication information. If the CA cache in your browser hasn't been compromised, the CRL url can actually disable invalid signatures as well if they've been leaked or compromised in some way.

      The only 'flaw' is that you trust 3rd parties. Because you trust 3rd parties to do the verification for you, it is possible they might validate the authentication information of someone who is not who they claim (for any number of reasons ranging from hacked servers, malicious intent to court order for the NSA).

      Show me a method of distributing authentication information to the entire world that works better. And no, you're silly manually verified web of trust is a stupid fucking idea, which is why no one, including firefox has implemented such a feature. Just because you're idea is stupid, doesn't mean Firefox is stupid for not implementing it.

      Everytime someone says something like you, they talk about some retarded way of doing exactly what we're already doing, but requiring individual users to do 1000's of times more work.

      Hell, I have at least 6 SSL certificates IN MY HOUSE accessed by probably 20 different devices. Fuck you if you think I'm going to manually input 20 digit (or longer) finger prints for all those certs on all those devices, then twice as many at work, and I haven't even started talking to Amazon and iTunes to buy shit yet.

      The reason we're still using 1990s 'tech' (which it was old in the 90s btw) is because theres nothing better, contrary to what you think. Please to be shutting up until you actually understand what you're talking about. You really made it clear that you have no idea whats going on.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
  5. Convergence and Perspectives by magic+maverick+ · · Score: 4, Informative

    From https://en.wikipedia.org/wiki/Convergence_%28SSL%29:

    With Convergence, however, there is a level of redundancy, and no single point of failure. Several notaries can vouch for a single site. A user can choose to trust several notaries, most of which will vouch for the same sites. If the notaries disagree on whether a site's identity is correct, the user can choose to go with the majority vote, or err on the side of caution and demand that all notaries agree, or be content with a single notary (the voting method is controlled with a setting in the browser addon). If a user chooses to distrust a certain notary, a non-malicious site can still be trusted as long as the remaining trusted notaries trust it; thus there is no longer a single point of failure.

    The Monkeysphere Project tries to solve the same problem by using the PGP web of trust model to assess the authenticity of https certificates.[8]

    Now, everyone, let's use the tools available!

    --
    HELP MY ACCOUNT HAS BEEN HACKED BY AN ILLIBERAL ART STUDENT SET TO DESTROY THE INTERWEBZ!
    1. Re:Convergence and Perspectives by BitZtream · · Score: 2

      The Monkeysphere Project tries to solve the same problem by using the PGP web of trust model

      No, lets not.

      This is a horrible model to try and use on a global scale. Crowdsourcing is not an authentication solution, its a stupid idea. Theres a reason PGP has never taken off outside geeks validating their linux binaries ... because someone cares about the linux machine running in your basement.

      When will you guys get it through your heads that 'distributed everything' doesn't work. Central authorities are needed to mediate and ensure everyone is on the same page. Central authorities also come with the risk that they can be compromised, but its far easier to deal with one compromised CA than several billion.

      PGP has all the disadvantages of using CAs, none of the advantages, and additional disadvantages, mostly in that it requires users to make decisions they aren't qualified to make, which they could do currently IF THEY WANTED TO. They don't.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    2. Re:Convergence and Perspectives by Sloppy · · Score: 3, Interesting

      When will you guys get it through your heads that 'distributed everything' doesn't work. Central authorities are needed to mediate and ensure everyone is on the same page.

      Those central authorities are welcome to join in, and become highly valued nodes in the WoT.

      Central authorities also come with the risk that they can be compromised, but its far easier to deal with one compromised CA than several billion.

      Aha, now I get it... could it really be this simple? Are X.509 advocates merely bad at math? The terms in your risk assessment formula are wrong.

      If a signer has a probability p of being accurate/trustworthy, then the chance of its attestation being correct, is p. That's how X.509 certs work and of course you understand that very well. Cool. With PGP, if signer1's probability of being accurate is p1, and signer2's probability of being accurate is p2, then the chances their joint attestation of an identity is accurate, is 1-((1-p1)*(1-p2)). Dude, that's a number which is greater than either p1 or p2.

      For example, say you think it's 90% likely that Verisign is telling you the truth about a key belonging to a certain website. They're the one and only signer for some website (because one signature is all this shitty tech can handle), so you think it's about 90% likely you're talking to that site, and 10% likely you're talking to the NSA. If that's your estimate of Verisign's reliability/trustworthiness, then 90% is the best you can do with that tech.

      Now let's say we upgrade from that garbage to 1991 technology: the PGP WoT. Suppose Verisign and CNNIC have both signed something, and you think Verisign is 90% reliable and CNNIC is 60% reliable. (Those sneaky Chinese bastards!)

      You're 1-( (1-0.9)*(1-0.6) ) = 0.96 , that is, 96% confident that you're talking to the website you wanted to, and 4% worried that you're talking to someone who is involved in a join US-China conspiracy (which, now that you think of it, is less than 4% likely to really occur). You have just wiped the floor with X.509's security performance.

      Suppose I signed it too. You don't know me. While it seems absurd at first that I'm less trustworthy than the Chinese government (they're known badguys; I'm merely some internet asshole) at least you know something of their loyalties or lack thereof, and very little of my competence and motivations. It's reasonable to assume I am probably more likely to conspire with your adversaries than they are. Some guy with US government might be holding a gun to my head, right now! So you decide to only trust me 1%. Ok. Guess what? You can work with that!

      Now my super-weak signature is on there. You trust the identity 1-( (1-0.9)*(1-0.6)*(1-0.01) ) = 96.04%. My super-weak nearly-completely-untrusted attestation made it stronger.

      This is why were totally wrong when you said one compromised CA is easier to deal with than a billion. A billion compromised CAs are easier to deal with than one. Distributed authentication is more fault-tolerant, and we're now in a situation where the mainstream finally "gets it" that the faults really do occur, rather than it simply being a tinfoil hat thing that cypherpunk SciFi authors pretend to worry about. X.509 is based on the idea that Verisign is telling you the truth 100% of the time, and cannot model the idea that you think they sometimes fail. PGP, on the other hand, is based on reality: that grey world where sometimes things work and sometimes they don't, where you sort of trust some people some of the time, etc. You know, that world that you actually live in.

      --
      As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
  6. Detecting Certificate Change by seawall · · Score: 5, Informative

    Addons for web browsers (e,g. Certificate Patrol in Firefox, there are others) can clue you into certificate changes. Rather like Ghostery (which shows where stuff is loading from in a web page): it is an eye opener.

    1. Re:Detecting Certificate Change by Foresto · · Score: 2

      Sadly, warning about certificate changes is practically useless today, since so many of the major sites have a bazillion different certificates, any of which might be the one you get at any given time. I stopped using Certificate Patrol for google sites because it was raising alarms almost every time I visited one.

  7. Certificate Transparency by goddidit · · Score: 5, Informative

    Certificate transparency is a new project initiated at least partly by Google's engineers, which intends to solve this problem with SSL trust model: http://www.certificate-transparency.org/
    It uses an append only public log, similar to Bitcoin transaction log to make certificate information public.

    --
    This .sig is exactly 120 characters long.
  8. SSH warns of changes, why not HTTPS (and others) by FlameWise · · Score: 2

    I always wondered why SSH made just a fuzz about storing a site's certificate and warn of changes, but didn't put such a great emphasis on verifying host names or certification chains, but almost every other channel will just happily and silently accept a modified certificate.

    Replacing that "This certificate is self-signed!" pop-up with a "This certificate is new or changed, please verify this MD5 hash on a trusted website: XX-YY-ZZ!" would probably increase security by an order of magnitude.

    Also do this for background operations, like operating system fixes, virus scanner updates and may even MD5 downloads.

  9. What happened to certificate stapling? by diamondmagic · · Score: 4, Interesting

    A few months ago, Google removed the ability in Chrome to staple a TLS/SSL certificate to your DNSSEC-signed DNS records: https://www.imperialviolet.org/2011/06/16/dnssecchrome.html

    It was finally a way to get an HTTPS secured website without needing to go to a CA. And they removed it.

    I just thought they were being incompetent as they usually were, but now I can't help but wonder if the NSA got on their backs about not being able to sign their own replacement certificate...

  10. Revocation --- or Redundancy? by ron_ivi · · Score: 5, Interesting
    I wonder why HTTPS stuff can't require *two* certificates that validate. That way unless both CAs are compromised, the traffic's safe.

    It's just like any other single-point-of-failure in your network. You probably work with two telcom companies to make sure your website and/or company has network access. Why shouldn't you do the same for certificates. Buy one from a US CA, one from a Russian one, and one from a Chinese one, and if browsers could check to make sure *all* (or two out of the three, whatever) validate, unless they collude you should be pretty safe.

    Even better if one of those can be a self-signed one. You can even exchange those keys over normal boring https, and then unless your commercial CA was already hacked at the time you distribute your self-signed one, your self-signed one will protect against your commercial CA being hacked in the future.

    1. Re:Revocation --- or Redundancy? by petermgreen · · Score: 5, Informative

      Do you even know how PKI works?

      Currently PKI works by having a large number of certification authorities (both roots installed in the browser and intermediates with delegated authority from those roots) any one of which can issue a certificate that will be trusted by the browser to identify a site. So if any one of those certification authorities is compromised by an attacker then the attacker can obtain a certificate with which they can MITM traffic to your site without generating any warnings.

      AIUI What the GP is proposing is that multiple independent authorities would need to vouch for a "high security" site so that one compromised certification authority would not be sufficiant to perform a man in the middle attack. It's a nice idea in principle but there are several practical issues to deal with.

      1: How do you define independent authority. I'm sure there are cases where multiple root certificates are controlled by the same entity.
      2: How do you decide what sites it should apply to. One possibility would be to never allow the number of authorities for a site to go down so once a site had been seen with more than 1
      3: How do we modify the protocols to support this.
      4: How do we convince site operators to adopt this.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    2. Re:Revocation --- or Redundancy? by Anonymous Coward · · Score: 3, Funny

      And for more security, we can do *THREE* certificates. Count them! *THREE* for additional security.

      Super secure sites like banks can do *FOUR* certificates. If any one of the *FOUR* certificates break, then we know we're attacked! Even more secure if those *FOUR* certificates come through 4 different ways...

      Are you really suggesting that?! Do you even know how PKI works?

      Fuck it...we're doing *FIVE*.

    3. Re:Revocation --- or Redundancy? by Prehensile+Interacti · · Score: 4, Interesting

      These are similar thoughts to my own. It needs to be about a web of trust, and it might just work.

      If more parties are able to come along and say "I trust all these authorities" when it comes to doing business with me, this is the paradigm shift. I don't believe that there is *an* independent authority, I believe we should elect to allow *multiple* authorities to rate the trustworthiness of a certificate.

      At the moment, outside of high-end corporate who roll their own, it is the operating system provider making that trust decision for all of us in their selection of root authorities. Now Microsoft, Google and Apple are all on the PRISM slides, and Linux is probably compromised in its own way - not one of them do I want to be the sole gatekeeper of my trust.

      So, I believe that the 1st group that should be brought into this system are the banks. This is the group that has the most to lose financially, if you're the victim of fraud. Specifically *your* SSL, should be vouched for by *your* bank - with the condition that the online fraud protection on your bank account is only effective, if you were entering your card details in an SSL session they vouched for.

      Now I see a future where we all allow multiple people to vouch for the goodness of certificates and authorities (I think this extends to public keys too) - particularly our social network. Anyone we trust to vouch may approve or *disapprove* any cert. Any time we do anything requiring crypto trust, we should be able to see how all the people we trust feel about it. I have a number of friends I'd really trust to always do a secure key-exchange; I'd boost their scores. Beyond that, the wisdom of crowds is a not a bad fallback.

      We have to understand that trust is on an analogue scale. For many things it's fine that we don't have close to 5x 9s of trust. But when we do need to be really certain of who's on the other end, we should be able to push into our social network and see who will vouch for the other parties public key / certificate.

    4. Re:Revocation --- or Redundancy? by Jesus_666 · · Score: 3, Funny

      Ah, the Gillette Encryption Standard. I'm just waiting for browsers to start supporting SSL Fusion Power Stealth.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    5. Re:Revocation --- or Redundancy? by Sloppy · · Score: 3, Insightful

      Are you really suggesting that?! Do you even know how PKI works?

      It sounds like he does indeed know how it works very well. It's actually a great idea, which is why PGP defaults (I think) to requiring about three "moderately trusted" CAs to agree, in order to confirm an identity. Upgrading from our current luddite stuff to gleaming new 1991 tech would be fantastic, and is pretty warranted, when you think about how silly our current situation is. Treating something like Verisign as a fully trusted introducer? ha! They're not that trustworthy, but they're not useless, either. PGP's concept of differing degrees of trust, gets it about right and would be a huge step forward.

      --
      As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
    6. Re:Revocation --- or Redundancy? by sonamchauhan · · Score: 2

      Don't let the fool trolls get to you - you have a good post.

      For instance, a trivial browser-side implementation could simply check if bytes flowing in on an SSL connection (say, to https://abc.com443/ matched bytes coming in through a secondary persistent HTTPS connection (say, https://verify.abc.com443/ and that both HTTPS connections use different CA authorities.

      Sure, this could be defeated if abc.com is compromised. However, an MITM attack would require two separate CA authorities to be fooled or compromised. And adding verification hosts (verify1, verify2, ...) would provide additional 'witnesses' against a MITM.

    7. Re:Revocation --- or Redundancy? by mlts · · Score: 2

      What can be done is to add a trust factor to CAs. Say someone doesn't like a CA out of Elbonia, they can completely nullify it by adding a trust factor of 0. A CA that someone personally runs and can vouch for would get a factor of 1.0. A CA that one is unsure about, might end up with a 0.5 for a factor. Then, there is a threshold set that if it goes above it, the site is trusted.

      An example: Three CAs, trusted at 0.5, have signed a site's key. The threshold of trusting the site is set by the user at 1.2, so this causes the site to be considered trustworthy. Another way this can happen is two sites trusted at a 1.0 factor could go over.

      Then, one can add distrust, where if one CA is distrusted at a -1 factor, it would take three 1.0 trusted CAs to bring a site over the 1.2 threshold.

      If one wanted to get fancy, reputations can propagate between individuals which might add more weight to trust/distrust a site's certificate. A site's trust can increase over time if its certificate has not changed in a while as well.

    8. Re:Revocation --- or Redundancy? by Prehensile+Interacti · · Score: 2

      A good question, how can you trust the other end? This still comes down to reputation, doesn't it?

      The most extraordinary thing we're seeing with the spying revelations, is the complicity of all three branches of government and the vast majority of the fourth estate in trampling all over our civil liberties. When the system of checks and balances has failed so badly, it makes it nigh on impossible to know who to trust any more except our close friends.

      Now that some of the practices have got out, I'm sure the US internet providers are going to see some blow back - their reputation is surely damaged.

      While previously globalisation has meant that worldwide trade had been busy merging into just a handful of players in each domain, I hope that scares like the current one, remind us of the need for bio-diversity in our corporate culture. How to enforce that happening is beyond me.

    9. Re:Revocation --- or Redundancy? by Shatrat · · Score: 2

      You probably work with two telcom companies to make sure your website and/or company has network access

      As someone who works in telecom, this is not as good an idea as you think it is. You're almost always better off buying diverse/protected service from one company than trying to use 'carrier diversity' to save your butt. Very often both telecom companies will be using the same fiber, or leasing transport capacity from one another. Example: You buy an unprotected Ethernet Private Line from Level 3, and then turn around and buy another unprotected EPL from XO. They're both unprotected linear transport, but what are the odds both carriers will have an outage at once? The answer, 100%. XO uses Level3 fiber everywhere.

      --
      09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
    10. Re:Revocation --- or Redundancy? by Sloppy · · Score: 4, Insightful

      Now think it through. If Verisign is owned by the NSA, and a Russian CA is owned by FSB, and a Chinese CA is owned by that government, and all three of these compromised CAs agree on a cert, what does it mean?

      It means the cert is probably accurate, or about as accurate as you can possibly get, without going over to the server certing it yourself. If those three parties are conspiring to disrupt your Amazon order, then I'm afraid you're not going to get your package, no matter what crypto you use. :-)

      --
      As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
    11. Re:Revocation --- or Redundancy? by mellon · · Score: 3, Interesting

      In fact something like this exists and may even be supported by your browser, but isn't in wide deployment at the moment. The way it works is that example.com goes out and gets an SSL cert for example.com, signed by some reasonable CA. example.com also configures dnssec for their domain. When you go to https://example.com/ your web browser does a DNS query against _443._tcp.example.com for TLSA records. If it finds any, it validates the cert it gets via TLS against the TLSA record; the TLSA record can specify what certs are valid, or it can specify what certificate authority key (trust anchor) is valid, and there are a few other modes. The basic principle is that you now have two paths for validating the TLS cert: the CA _and_ DNSSEC. If both validate, use the cert. If either fails, don't use it. You can read all about it here.

      In addition, TLS provides for certificate revocation, so if someone generates a bogus cert and it is _detected_, the cert can be revoked, or if a key is compromised, the cert for that key can be revoked.

      These mechanisms seem more likely to be useful than just requiring certs from two different CAs.

    12. Re:Revocation --- or Redundancy? by mellon · · Score: 2

      Trust is not binary. It costs some effort to get a key certified for a domain that isn't yours. So a CA cert says "either this key is good, or someone spent a lot of money to compromise it." Of course, you'd much rather that it said "this key is good," but that's not what it says, and the fact that it doesn't say that doesn't mean the cert is valueless—it just means that it has limited value.

      We definitely need a stronger system, but the current system is better than no system.

    13. Re:Revocation --- or Redundancy? by Shagg · · Score: 3, Insightful

      There are situations where thinking you're secure when you're not is worse than knowing you're not secure.

      --
      Unix is user friendly, it's just selective about who its friends are.
  11. Twitter, too by Lincolnshire+Poacher · · Score: 4, Interesting

    Another one that Certificate Patrol has flagged inthe past week is *.twimg.com, which appears to be a mess of certs from different CAs.

    One subdomain ( s0 ) has switched from a DigiCert EV wildcard cert to a Verisign per-subdomain cert.

    Another has gone from Verisign to Comodo.

    Annoyingly twimg.com seems to be embedded across the Web...

    I've been rejecting them all, given that Twitter provide no information on their site as to whether this was a planned change.

  12. Detecting Certificate Inconsistency by thegarbz · · Score: 2

    While we're at it some other addons like Perspectives or Convergence allow you to compare the cert you're receiving to the certs for the same site seen from multiple 3rd party servers across the world. This would allow you to confirm that not only that the certificate hasn't changed, but that the certificate you're seeing is the same one as *insert 3rd party unlikely to be MITMed the same time as you* is seeing.

  13. I can still read... by candlebar · · Score: 3, Funny

    I can still read your email. It hasn't changed.

  14. Getting the fingerprint in JS by Richard_J_N · · Score: 2

    I operate a webserver, and I'd like to protect my users against SSL proxying. At the moment, all I can do is tell them to check my key's fingerprint against what the browser shows. But I'd really like to do this in JS. Is there any way to use JS to get the fingerprint string (that I can see by clicking on the padlock icon)? Then I could send that back to the server (from JS), and check if it's been tampered.

    (A really effective evil proxy would be able to defeat this, but most corporate proxys aren't going to be able to parse my own JS and work out precisely how to transparently defeat it).

    1. Re:Getting the fingerprint in JS by Richard_J_N · · Score: 2

      If we're talking about the great firewall of china, you're right. BUT most corporate proxies run fairly standard software, and only update it every few months (if that). So, there's a pretty good chance of my getting the JS through the first time, and of the vendor taking a long time to work around it (if they ever do). Yes it's cat and mouse, but there are a lot of mice with different strategies, the cat isn't very quick, and as long as the mouse gets through once, it's enough to let the user know he's being snooped on.