▲ 344 ▼ Letsencrypt is under US jurisdiction. Is there a free-er alternative? (sopuli.xyz) submitted 1 week ago by Sibbo@sopuli.xyz to c/selfhosted@lemmy.world 155 comments fedilink hide all child comments I know that I can simply make my own private certificate authority that only I and my family trust. But is there some public provider like letsencrypt that is in a free-er part of the world than the US?
[–] IpsumLauren@lemmy.world 1 point 1 week ago (9 children) It opens the possibility of a man-in-the-middle attack. permalink fedilink source parent hideshow 9 child comments replies: [–] WhyJiffie@sh.itjust.works 26 points 1 week ago (6 children) which is still there if you are not using lets encrypt, because they can strongarm them to make a fake cert for your domain, and install a proxy repackaging HTTPS traffic with the fake certificate. all browsers trust the lets encrypt root certificate, so they won't see anything suspicious. the only thing there today to detect this (but not avoid) is certificate transparency logs. all modern certificates are required to be added to this log, for the CA to remain compliant. but browsers are not checking the logs, that would be a lot of additional traffic and how do they decide if a certificate was created maliciously? also, lets encrypt could afford being noncompliant, browser vendors can't realistically just distrust their root certificate, many sites would become inaccessible. permalink fedilink source parent hideshow 6 child comments replies: [–] IpsumLauren@lemmy.world 6 points 1 week ago (2 children) Oh snap! That definitely sounds possible. Found more info about it. tl;dr: Either the attack is ineffective against some browsers that check the certificate transparency logs (like Chrome), or the attack is visible and the CA will lose all its credibility (hopefully being removed from the browsers). permalink fedilink source parent hideshow 2 child comments replies: [–] WhyJiffie@sh.itjust.works 4 points 1 week ago it seems Firefox started doing the CT validation too, without needing to contact the CT log service: https://developer.mozilla.org/en-US/docs/Web/Security/Defenses/Certificate_Transparency#browser_requirements permalink fedilink source parent [–] WhyJiffie@sh.itjust.works 3 points 1 week ago and details: https://wiki.mozilla.org/SecurityEngineering/Certificate_Transparency this sounds important: This information has a 10 week expiration time. That is, if 10 weeks have passed since the information has been updated (typically by updating Firefox itself), the implementation will no longer enforce certificate transparency. this also means, it can't truly verify SCT's that were issued since the last browser update? permalink fedilink source parent [–] possiblylinux127@lemmy.zip 0 points 1 week ago (2 children) Maybe I'm mistaken but aren't the logs cryptography verifiable? (As in you can't create a rouge cert without it creating a trace) permalink fedilink source parent hideshow 2 child comments replies: [–] WhyJiffie@sh.itjust.works 4 points 1 week ago (1 child) apparently certs can have a cryptographic proof of having been included in the CT logs. but what do browsers do if the letsencrypt cert has no such proof? permalink fedilink source parent hideshow 1 child comment replies: [–] needanke@feddit.org 4 points 1 week ago You can test that on this site: https://no-sct.badssl.com/ permalink fedilink source parent [–] moonpiedumplings@programming.dev 5 points 1 week ago* Edit: no, it doesn't. Looking at the comments below, it's public key crypto. Original comment: The problem is that if that is your threat model, then the VPS provider, ISP, and literally everything between you and letsencrypt can pull a conpromised key fro letsencrypt. This actually happened btw, an xmpp server was attacked this way, they compromised not the server itself, but the VPS provider MITMed their traffic: https://www.devever.net/~hl/xmpp-incident If your threat model involves this, then the only solution is Tor, which eliminates these requirements of trust. permalink fedilink source parent [–] talkingpumpkin@lemmy.world 2 points 1 week ago Yep, that's what I described and any CA accepted by the client can do it permalink fedilink source parent
[–] WhyJiffie@sh.itjust.works 26 points 1 week ago (6 children) which is still there if you are not using lets encrypt, because they can strongarm them to make a fake cert for your domain, and install a proxy repackaging HTTPS traffic with the fake certificate. all browsers trust the lets encrypt root certificate, so they won't see anything suspicious. the only thing there today to detect this (but not avoid) is certificate transparency logs. all modern certificates are required to be added to this log, for the CA to remain compliant. but browsers are not checking the logs, that would be a lot of additional traffic and how do they decide if a certificate was created maliciously? also, lets encrypt could afford being noncompliant, browser vendors can't realistically just distrust their root certificate, many sites would become inaccessible. permalink fedilink source parent hideshow 6 child comments replies: [–] IpsumLauren@lemmy.world 6 points 1 week ago (2 children) Oh snap! That definitely sounds possible. Found more info about it. tl;dr: Either the attack is ineffective against some browsers that check the certificate transparency logs (like Chrome), or the attack is visible and the CA will lose all its credibility (hopefully being removed from the browsers). permalink fedilink source parent hideshow 2 child comments replies: [–] WhyJiffie@sh.itjust.works 4 points 1 week ago it seems Firefox started doing the CT validation too, without needing to contact the CT log service: https://developer.mozilla.org/en-US/docs/Web/Security/Defenses/Certificate_Transparency#browser_requirements permalink fedilink source parent [–] WhyJiffie@sh.itjust.works 3 points 1 week ago and details: https://wiki.mozilla.org/SecurityEngineering/Certificate_Transparency this sounds important: This information has a 10 week expiration time. That is, if 10 weeks have passed since the information has been updated (typically by updating Firefox itself), the implementation will no longer enforce certificate transparency. this also means, it can't truly verify SCT's that were issued since the last browser update? permalink fedilink source parent [–] possiblylinux127@lemmy.zip 0 points 1 week ago (2 children) Maybe I'm mistaken but aren't the logs cryptography verifiable? (As in you can't create a rouge cert without it creating a trace) permalink fedilink source parent hideshow 2 child comments replies: [–] WhyJiffie@sh.itjust.works 4 points 1 week ago (1 child) apparently certs can have a cryptographic proof of having been included in the CT logs. but what do browsers do if the letsencrypt cert has no such proof? permalink fedilink source parent hideshow 1 child comment replies: [–] needanke@feddit.org 4 points 1 week ago You can test that on this site: https://no-sct.badssl.com/ permalink fedilink source parent
[–] IpsumLauren@lemmy.world 6 points 1 week ago (2 children) Oh snap! That definitely sounds possible. Found more info about it. tl;dr: Either the attack is ineffective against some browsers that check the certificate transparency logs (like Chrome), or the attack is visible and the CA will lose all its credibility (hopefully being removed from the browsers). permalink fedilink source parent hideshow 2 child comments replies: [–] WhyJiffie@sh.itjust.works 4 points 1 week ago it seems Firefox started doing the CT validation too, without needing to contact the CT log service: https://developer.mozilla.org/en-US/docs/Web/Security/Defenses/Certificate_Transparency#browser_requirements permalink fedilink source parent [–] WhyJiffie@sh.itjust.works 3 points 1 week ago and details: https://wiki.mozilla.org/SecurityEngineering/Certificate_Transparency this sounds important: This information has a 10 week expiration time. That is, if 10 weeks have passed since the information has been updated (typically by updating Firefox itself), the implementation will no longer enforce certificate transparency. this also means, it can't truly verify SCT's that were issued since the last browser update? permalink fedilink source parent
[–] WhyJiffie@sh.itjust.works 4 points 1 week ago it seems Firefox started doing the CT validation too, without needing to contact the CT log service: https://developer.mozilla.org/en-US/docs/Web/Security/Defenses/Certificate_Transparency#browser_requirements permalink fedilink source parent
[–] WhyJiffie@sh.itjust.works 3 points 1 week ago and details: https://wiki.mozilla.org/SecurityEngineering/Certificate_Transparency this sounds important: This information has a 10 week expiration time. That is, if 10 weeks have passed since the information has been updated (typically by updating Firefox itself), the implementation will no longer enforce certificate transparency. this also means, it can't truly verify SCT's that were issued since the last browser update? permalink fedilink source parent
[–] possiblylinux127@lemmy.zip 0 points 1 week ago (2 children) Maybe I'm mistaken but aren't the logs cryptography verifiable? (As in you can't create a rouge cert without it creating a trace) permalink fedilink source parent hideshow 2 child comments replies: [–] WhyJiffie@sh.itjust.works 4 points 1 week ago (1 child) apparently certs can have a cryptographic proof of having been included in the CT logs. but what do browsers do if the letsencrypt cert has no such proof? permalink fedilink source parent hideshow 1 child comment replies: [–] needanke@feddit.org 4 points 1 week ago You can test that on this site: https://no-sct.badssl.com/ permalink fedilink source parent
[–] WhyJiffie@sh.itjust.works 4 points 1 week ago (1 child) apparently certs can have a cryptographic proof of having been included in the CT logs. but what do browsers do if the letsencrypt cert has no such proof? permalink fedilink source parent hideshow 1 child comment replies: [–] needanke@feddit.org 4 points 1 week ago You can test that on this site: https://no-sct.badssl.com/ permalink fedilink source parent
[–] needanke@feddit.org 4 points 1 week ago You can test that on this site: https://no-sct.badssl.com/ permalink fedilink source parent
[–] moonpiedumplings@programming.dev 5 points 1 week ago* Edit: no, it doesn't. Looking at the comments below, it's public key crypto. Original comment: The problem is that if that is your threat model, then the VPS provider, ISP, and literally everything between you and letsencrypt can pull a conpromised key fro letsencrypt. This actually happened btw, an xmpp server was attacked this way, they compromised not the server itself, but the VPS provider MITMed their traffic: https://www.devever.net/~hl/xmpp-incident If your threat model involves this, then the only solution is Tor, which eliminates these requirements of trust. permalink fedilink source parent
[–] talkingpumpkin@lemmy.world 2 points 1 week ago Yep, that's what I described and any CA accepted by the client can do it permalink fedilink source parent