Slashdot Mirror


Google To Remove Public Key Pinning (PKP) Support In Chrome (bleepingcomputer.com)

An anonymous reader writes: Late yesterday afternoon, Google announced plans to deprecate and eventually remove PKP support from the Chromium open-source browser, which indirectly means from Chrome... According to Google engineer Chris Palmer, low adoption and technical difficulties are among the reasons why Google plans to remove the feature from Chrome.

"We would like to do this in Chrome 67, which is estimated to be released to Stable on 29 May 2018," Palmer says. The proposal is up in the air, and users can submit opinions against Google's intent to deprecate, but seeing how little PKP was adopted, it's most likely already out the door. A Neustar survey from March 2016 had PKP deployment at only 0.09% of all HTTPS sites. By August 2017, that needle had barely moved to 0.4% of all sites in the Alexa Top 1 Million.

51 comments

  1. 444% growth by eminencja · · Score: 4, Funny

    deployment at only 0.09% of all HTTPS sites. By August 2017, that needle had barely moved to 0.4%

    That's 444% growth. If PKP was a startup, its stock would surge.

    1. Re:444% growth by MangoCats · · Score: 1

      444% every 17 months, 286% per year, in 5 years at that growth rate they will be up to 77%... patience ;-)

    2. Re: 444% growth by Anonymous Coward · · Score: 0

      Pfft.

      In 6 years it will be supported on 297% of all web sites.

    3. Re: 444% growth by Anonymous Coward · · Score: 0

      Translation: continued use of this would reveal even more government spying and we can't have that.

    4. Re:444% growth by Anonymous Coward · · Score: 0

      Consider the only reason sites are moving to HTTPS in the first place is that Chrome/Firefox is twisting their arm and threatening them with scareware messages. Why anyone would bother doing more than the minimum if it would further reduce site capacity and kill more battery life on mobile devices?

    5. Re:444% growth by arglebargle_xiv · · Score: 1

      The problem with it was that it was off by default, not on by default. When Chrome throws up a warning that you haven't paid your CA for a license to put a web page online and people will be scared away from your site if you don't, its enabled by default. Pinning, the same thing that SSH has been successfully doing for twenty years, was turned off by default for web sites. So now they can say it didn't work, and we can all go back to waiting for PKI to start working, as we've been doing for close to thirty years. I mean, it's got to start working at some point if we wait long enough, doesn't it?

    6. Re:444% growth by JesseMcDonald · · Score: 1

      When Chrome throws up a warning that you haven't paid your CA for a license to put a web page online and people will be scared away from your site if you don't, its enabled by default.

      Apparently you've never heard of Let's Encrypt? No one is required to pay for a "license" to put a secure web page online these days; you can get CA domain-validation certificates for free. There is no excuse left for not using properly signed certificates.

      --
      "The state is that great fiction by which everyone tries to live at the expense of everyone else." - Bastiat
    7. Re:444% growth by arglebargle_xiv · · Score: 1

      Apparently you've never heard of Let's Encrypt? No one is required to pay for a "license" to put a secure web page online these days

      With Lets Encrypt you still pay, it's just in terms of time and effort, not money. No matter how you slice it, you still need to ask a CA for permission to put a secure web site online. You can't just stand up a server and get crypto, even though SSL/TLS allows for that. The browser vendors have made sure of that.

  2. I swear... by Anonymous Coward · · Score: 0

    There will be a time in the near future when you literally will have to provide a DNA sample (by perhaps touching a hardware surface) to identify yourself to do anything. The Internet is already unusable due to all the privacy-invasive bullshit to do anything.

  3. never heard of it... by Anonymous Coward · · Score: 0

    And after reading about it, it sounds fucking terrible anyways, so who cares?

  4. hpkp 'backup' certs - 'insurance' by sjwest · · Score: 1

    Why would a site buy tls certs from a ca and not use them? - eg an active and backup ca provider since better tls certs have 'insurance' quite how you claim it is another matter.

    Sure letencrypt made it easier to have a backup ca (random certs mean you need to apparently edit your but hpkp config often for hashes seems that hpkp is disaster.

    If you did not have a backup ca (caa record needs to reflect it also) then hpkp is deemed incomplete. I can see reasons.

    1. Re:hpkp 'backup' certs - 'insurance' by Anonymous Coward · · Score: 0

      This is not how this works.

      All you need is to pregenerate *keys*, not whole certificates.

      For an EC key all you need to do is

      openssl ecparam -genkey -name secp384r1 > ec.key
      openssl ec -in ec.key -pubout | openssl ec -pubin -outform der | openssl dgst -sha256 -binary | base64

      So basically you generate a few keys in advance on a network-disconnected machine. Get the sha256 hashes of the public part out to the HPKP header. When your current certificate expires then you use one of the generated keys to renew it.

    2. Re: hpkp 'backup' certs - 'insurance' by Anonymous Coward · · Score: 1

      Since I've implemented HPKP multiple times including for 3-month Let's Encrypt certificates with over a year worth of certificate rotation I know how it works and what you wrote is simply incorrect.

      The CA pinning is another, unrelated feature and is called DNS CAA in which you put in a list of approved CAs that can generate certificates for your domain in the DNS system as a CAA record.

    3. Re: hpkp 'backup' certs - 'insurance' by Anonymous Coward · · Score: 0

      HPKP lets you pin any key in the chain, including the private key that is yours that the CA never sees. You can do either what the GP suggested or what you said, both work. You can even list both keys if you want. All HPKP requires is that one of the keys in the chain matches one of the fingerprints in the list.

    4. Re: hpkp 'backup' certs - 'insurance' by sjwest · · Score: 1

      I am sure it is possible to do hpkp but since dnssec [tlsa] is easier imho and with csp's the need to have a backup ca means its a lot of work for something most do not give a stuff about.

      A backup ca infers that the real ca is untrustworthy. What should a ca be? My head hurts on that issue.

  5. DANE and TLSA by Todd+Knarr · · Score: 4, Insightful

    I'd prefer, rather than key pinning, DANE and TLSA were adopted widely. That'd allow not only attaching a specific certificate to a site but running a site without needing to go to a third party for certificates. Combined with DNSSEC to prevent forgery of the DNS records involved it's more secure than the CA chain-of-trust because the site owner/operator's unlikely to issue his own certificates to malicious parties through error or negligence.

    1. Re:DANE and TLSA by Anonymous Coward · · Score: 0, Interesting

      It's not meaningful to distinguish between registrar and CA. These days, for many people, they're the same company, about $12/yr for each function.

      The difference of DANE is trusting only one Registrar/CA instead of trusting all the CAs not to issue fake certs. Certificate transparency accomplishes the same thing.

      It's not a real solution because registrars aren't trustworthy, either. The real solution is Sovereign Keys.

      DANE has an appealing orderliness to it that satisfies people with OCD, but if you apply the attack model correctly it's a half-measure, and strictly inferior to Sovereign Keys.

    2. Re:DANE and TLSA by modmans2ndcoming · · Score: 1

      erm....Sovereign Keys is a Band-Aid over the current system....DANE replaces the current system with one that is built from the ground up with security in mind. It means the sites you navigate to are verifiably who they say they are and not someone else allowing for self signing certs, self control of revocation, and a built in system for propagating that information.

    3. Re:DANE and TLSA by Todd+Knarr · · Score: 1

      Why mention the registrar at all? DANE is built on DNS, so other than delegation of nameservers your registrar is out of the picture (unless they're also your DNS provider). The only trust relationship needed is between you and your DNS provider, and you can change your DNS provider if you don't trust your current one. Or if you're truly paranoid you can run your own nameservers.

      CAs are also out of the picture if you want them to be, using DANE you can use either self-signed certificates for your server or create your own local issuing authority for your certificates. End of problem with not trusting CAs, you only have to trust yourself.

    4. Re: DANE and TLSA by Anonymous Coward · · Score: 0

      The problem is DNSSEC is not universal adopted yet. My ISP had no idea what it was when I asked them to implement it. The largest mobile networks in my country have no dnssec capable resolver either.

    5. Re: DANE and TLSA by Anonymous Coward · · Score: 0

      First step in distributing the sovereign key structure is using a CA or a DNS record with DNSSEC to pass a key.

      When you have to trust DNSSEC any way I don't see the point with the rest of the complexity of sovereign keys. Browser key pinning with DANE can avoid registrars hijacking the domain, and the automatic TOR routing could be done regardless.

    6. Re: DANE and TLSA by Anonymous Coward · · Score: 0

      Damn. It's too bad you can't use other DNS servers, or set up your own DNSSEC capable resolving server.

    7. Re: DANE and TLSA by sydbarrett74 · · Score: 1

      Not as easy as you think when ISP's don't exactly give out static IP's like candy.

      --
      'He who has to break a thing to find out what it is, has left the path of wisdom.' -- Gandalf to Saruman
  6. Crazy Order of Magnitude increase for PKP adoption by CrashNBrn · · Score: 2, Informative

    "that needle had barely moved" in the last year, it only increased by an order of magnitude and we will be deprecating in 6 months.

    Feel free to comment, but as usual when we decide to drop features, nothing you say can nor will make a difference. Have a Nice Day.

  7. Specious nonsense by WaffleMonster · · Score: 1, Informative

    My default operating position is to expect browser vendors to protect CA/Government interests at all costs. The current system gives every competent government in the world a back door. Anything that jeopardizes this by effectively deterring or enabling detection of Government and criminal enterprise subversion attempts is bad for business.

    It is hard to build a pin-set that is guaranteed to work, due to the variance in both user-agent trust stores and CA operations.

    Hard to install and manage TLS certificates especially if you don't know what your doing so lets not use them. I'm tired of helping people setup TLS who don't even know what a CSR is... so lets not do it.....?

    What I want to see in an argument is technical and statistical evidence that useful in making an informed decision regarding tradeoffs. Just saying something is "hard" or not "guaranteed" isn't communicating objectively useful information.

    There is a risk of rendering a site unusable.

    HSTS offers that same risk. Case in point on one of my machines Wikipedia would not work without not even allowing me to accept risk the site my be compromised without switching to firefox because for some reason one of the globalsign root certs were missing from my operating systems root database. In other cases accidentally allowing certs to expire completely cuts off access to sites. Those who enable these features know (or should know) the risks and tradeoffs. There are other issues with HSTS such as unrelated services that happen to be on the same domain listening on other ports being adversely affected by HSTS.

    There is a risk of hostile pinning, should an attacker obtain a misissued certificate. While there are no confirmed or rumored cases of this having happened, the risk is present even for sites that donâ(TM)t use PKP.

    The circular logic embodied by this statement is hilarious. Raison d'etre for PKP is protection against mississued certificates. Naturally most security latches necessarily increase lockout risk. The question of import is what affect does this have in the real world?

    Use of every single bit of security technology involves tradeoffs that must be carefully considered. Just listing some with no context and no statistical evidence to inform any useful evaluation of tradeoffs is not really make a serious argument.

    None of the excuses listed in Chris's post are new. They were all well known when the feature was implemented. The fact usage on a relative basis was always likely to be low for a feature like this must have also been well understood going in.

    1. Re:Specious nonsense by modmans2ndcoming · · Score: 1

      My default operating position is to hold people who have conspiratorial views in contempt.

  8. Re: Crazy Order of Magnitude increase for PKP adop by Anonymous Coward · · Score: 0

    This article is the first Iâ(TM)ve heard of chrome even having this featureâ¦

  9. Specific support is stupid... by BlueCoder · · Score: 1

    All security should be implementable through plugins and addons. Every imaginable scheme should be implementable even if it's insecure or stupid. Then have an audit advisory of security schemes for implementations and interactions. There should be no security reason for you to have to use a newer version of software. Security should be separate.

  10. Re: Crazy Order of Magnitude increase for PKP adop by MangoCats · · Score: 1

    Surely Google, master of advertising, has promoted this to all the people that matter.... OTOH, I've been running my own website for 20 years, and this is the first I've heard of it, too. But, then, Alexa hasn't been ranking me for a few years now - not that I care, just how the world has been turning.

    I suspect it's the technical problems that they don't feel like solving and the low uptake is just an excuse to ignore the hard problems.

  11. Interesting concept, but in practice plugins get h by raymorris · · Score: 1

    That's an interesting idea, and I see why you say that. IPSec (mostly used for vpns) is an example of this done fairly well. IPSec and ISAKMP don't specify any specific ciphers, different types of authentication can be dropped in, etc.

    On the other hand, plugins are very frequently the source of security problems. Third-party plugins have a MUCH worse security record than major software such as Chrome. As a career security professional, I'd prefer that essential security functions be designed in, and baked in.

  12. Replacement: Sovereign Keys by Anonymous Coward · · Score: 0

    The replacement should be Sovereign Keys which solve not only rogue CA problems, but also rogue registrar problems which have been on the rise, particularly at Google's own registrar.

  13. .. for a company that claims by nightfire-unique · · Score: 3, Insightful

    .. to care deeply about security, the biggest derp I personally struggle with is the fact Chrome, in 2017, still isn't able to remember user-signed certificate fingerprints. It's bizarre.

    I generally prefer Chrome to Firefox, but have to use the latter for most of my internal applications if I want any reasonable assurance that my SSL session is actually secure.

    --
    A government is a body of people notably ungoverned - AC
    1. Re:.. for a company that claims by Anonymous Coward · · Score: 0

      .. to care deeply about security, the biggest derp I personally struggle with is the fact Chrome, in 2017, still isn't able to remember user-signed certificate fingerprints. It's bizarre.

      I generally prefer Chrome to Firefox, but have to use the latter for most of my internal applications if I want any reasonable assurance that my SSL session is actually secure.

      It is able to remember them alright. Just only in Google's profile of you.

      Don't use spyware.

  14. If available, better use it by manu0601 · · Score: 1

    HPKP is a dangerous protocol since a mistake can lock your users out of your web site for a while.

    But ignoring it comes with a threat: if an attacker manages to impersonate your server, he can send bad HPKP headers that will lock users out. The only defense against that is to actually use HPKP.

    HPKP seems to go the way of the Dodo for Chrome, but it is still available on other browsers

    1. Re:If available, better use it by Anonymous Coward · · Score: 0

      HPKP is a dangerous protocol since a mistake can lock your users out of your web site for a while.

      But ignoring it comes with a threat: if an attacker manages to impersonate your server, he can send bad HPKP headers that will lock users out. The only defense against that is to actually use HPKP.

      HPKP seems to go the way of the Dodo for Chrome, but it is still available on other browsers

      Well. I never understood what the fuck it was trying to do or how it wouldn't just make a bigger mess of it. Now I understand why. And the whole dumb thing would also only provide any security if there were extra 3rd-party services monitoring the sites were obeying the protocol. It was just super broken by design.

    2. Re: If available, better use it by Anonymous Coward · · Score: 0

      The ca system is broken, pinning just tries to make it a broken in a lesser way.

  15. Phishing is the problem, not CAs, use SRP by aberglas · · Score: 1

    The CA is irrelevant. Nobody looks at the URL in practice (other than pedantic slash dot readers), as long as it has some padlock it is thought to be secure.

    The problem is that passwords should never be sent to the server in the first place. Just proof of possession. Then there would be minimal danger.

    The old web had a solution to this of sorts, hash the password with a nonce and send the result back. That approach needs to be brought back. Users need to learn to only type passwords in a place that is inaccessible to JavaScript (like the URL bar) in which case the browser hashes it.

    Secure Remote Password is a new (20 years old?) algorithm that makes the hashing secure from John the Ripper. With SRP there is no need for any reliance on CAs for most important transactions.

    All that said, browsers should warn if the public key changes unexpectedly, much like SSH.

    1. Re:Phishing is the problem, not CAs, use SRP by Anonymous Coward · · Score: 0

      All any of this stuff does anyway is make the connection secure. The file system itself can still be wide open and unencrypted.

    2. Re:Phishing is the problem, not CAs, use SRP by Anonymous Coward · · Score: 0

      The CA is irrelevant. Nobody looks at the URL in practice (other than pedantic slash dot readers), as long as it has some padlock it is thought to be secure.

      The problem is that passwords should never be sent to the server in the first place. Just proof of possession. Then there would be minimal danger.

      The old web had a solution to this of sorts, hash the password with a nonce and send the result back. That approach needs to be brought back. Users need to learn to only type passwords in a place that is inaccessible to JavaScript (like the URL bar) in which case the browser hashes it.

      Secure Remote Password is a new (20 years old?) algorithm that makes the hashing secure from John the Ripper. With SRP there is no need for any reliance on CAs for most important transactions.

      All that said, browsers should warn if the public key changes unexpectedly, much like SSH.

      But how would Chrome get your passwords then? No way Google would promote something that means they are no longer able to get the password in clear-text of all Chrome users.

    3. Re:Phishing is the problem, not CAs, use SRP by Carewolf · · Score: 1

      All any of this stuff does anyway is make the connection secure. The file system itself can still be wide open and unencrypted.

      Encryption or no-encryption makes no difference to a filesystem while the system is still on. Especially if you are running spyware software.

      Disk encryption ONLY kicks in if you fully powrer of your device, and only then. The rest of the time it is essentially unencrypted and just wasting more CPU power reading.

  16. More shitty subediting by Slashdot by Anonymous Coward · · Score: 0

    This story only makes sense if you've been following it already. For God's sake slashdot: Give some background in your summaries. Too many stories are posted like this: A nonsensical summary or a long-as-the-Mississippi copy-pasta.

  17. Re:Interesting concept, but in practice plugins ge by phantomfive · · Score: 1

    . As a career security professional,

    As a career security professional, what is the one thing you wish programmers understood (or did differently) about security?

    --
    "First they came for the slanderers and i said nothing."
  18. Plugins by another name ? by Anonymous Coward · · Score: 0

    I'd prefer that essential security functions be designed in, and baked in.

    And neither IE nor FF offer that "baked in". Both use "plug-ins" in the form of DLLs for that.

    ... having said that, I've never encountered a(ny) description to how I can replace some of those security-related DLLs (for either of the above) with a later version which than can handle larger keys.

    Heck, its even hard to find information on those DLLs and/or code examples to use them. :-\

  19. A) How can it break? B) Seek my suggestions by raymorris · · Score: 1

    I have two top things. When developing software for a disk-based operating system where everything happens on the local computer, it made sense to think in terms of "how can I make this work?" Programmers thought in terms of starting with (valid) input and ending up with usable output.

      When your software is exposed to the internet, it will be attacked hundreds or thousands of times a day, so the question isn't so much "how can it work?" but "how can someone break it?". Your web page has a "name" field in a form. What happens if the enter several megabytes in that field? What if they enter SQL code there? How can things break? Perhaps your software retrieves something over the internet. What happens if that retrieval stops half way through? What if the short text you meant to retrieve is instead several megabytes? What if it's JavaScript? How can things break?

    The other thing is please have a ten minute conversation with me about your design, and a ten minute conversation about the implementation. After 20 years, I know the common problems, so I pretty much know where your main vulnerabilities will probably be as soon as you mention certain keywords. When you say "user downloads the file", or "download.php" or other similar words, there are three vulnerabilities that immediately spring to mind. You'll probably have two of the three in your application, unless you consult with a security person.

    I can do a lot of good in making your application more secure not only in terms of confidentiality but also in terms of reliability if we have three short discussions:

    Review your overall design / architecture up front
    About 25% into the project, review more detailed implementation decisions (such as which hash is being used)
    Near the end of the project, let me browse your source code and run a static analysis that looks for constructs such as "exec" and "system", and other red flags.

    1. Re:A) How can it break? B) Seek my suggestions by phantomfive · · Score: 1

      When you say "user downloads the file", or "download.php" or other similar words, there are three vulnerabilities that immediately spring to mind.

      What security problems does that give you? Unless you're thinking of some kind of XSS (or similar).

      --
      "First they came for the slanderers and i said nothing."
  20. More changes to web security by hattable · · Score: 1

    We should be focusing on fixing the existing technical barriers to entry around securing server and browser interaction. This is a cool solution but it is definitely an overengineered one.

    --
    OMG facts!
  21. ob_end_flush, X-Send-File, basename() by raymorris · · Score: 1

    Following my own advice, I'll give you solutions instead of problems.

    Use basename() rather than writing your own code to avoid filesystem transversal.

    Call ob_end_flush() before sending the file.

    Use X-Send-File on Apache or lighttpd. Of X-Send-File isn't available on your server, use readfile() rather than reading the file but by agonizing bye.

    1. Re:ob_end_flush, X-Send-File, basename() by phantomfive · · Score: 1

      Oh, they're giving actual access to the filesystem.

      --
      "First they came for the slanderers and i said nothing."
  22. Exactly - DANE and TLSA by johnjones · · Score: 1

    "CAs are also out of the picture if you want them to be, using DANE you can use either self-signed certificates for your server or create your own local issuing authority for your certificates. End of problem with not trusting CAs, you only have to trust yourself."

    trusting the CA's should be a user/admin choice not a manufacturer of the OS/Device
    basically a one size fits all approach to a Certificate Authorities is rather silly

  23. Summary fails to mention... by Anonymous Coward · · Score: 0

    What is PKP?