Nit: That that key doesn’t technically encrypt traffic, if I understand correctly. It’s used to verify the identify of a website. So someone with this private key can’t directly read internet traffic. They can set up a man-in-the-middle attack, but they’d also have to compromise DNS to pull it off.
Comment on What is behind the current Lemmy meme about 4 being a private key?
panda_abyss@lemmy.ca 14 hours ago
There is a massive security incident this week where an Indian certificate authority used 4 as the private key they used to sign encrypted internet traffic with.
Knowing their secret key lets anyone forge certificates that they can use to snoop on or modify internet traffic.
All 8 of their private keys were under 255, so could be trivially guessed. These certificates were accepted by all major browsers and operating systems, as well as many programming languages and tools.
Indigobunting@lemmy.world 11 hours ago
invertedspear@lemmy.zip 1 hour ago
It’s a little more complex than that. But if you want to encrypt, and you do want your site traffic encrypted, you use site certificate to give the client browser proof that you are who you say you are. You do this by establishing a chain of trust: “I got this proof that I am who I say I am from this major trusted certificate authority” you trust them and they trust me, so we’re all good. You’ve probably seen the warning that a site isn’t secure, and that’s because they let their certificate of trust expire.
This low entropy key means it’s trivial for me to fake that I have that major authority’s trust. The browser needs to be updated to no longer trust that authority. Until it does I can easily fake being anyone and say that compromised site vouches for me. I don’t even need to be a man in the middle, I just need to set up a way that your browser sends you to my fake server instead of the real one. Lots of ways to do that.
panda_abyss@lemmy.ca 10 hours ago
Yes, I think you’re correct
reksas@sopuli.xyz 12 hours ago
I just dont understand why they would do this? Putting so shitty key is like they wanted to make it as insecure as possible. Even if the ones responsible were criminally stupid, they still should have understood that this is like leaving the whole thing unlocked.
And for such critical thing. Imagine if this wasnt discovered like this but instead by some competent malicious actor that had resources to coordinate some large scale attack and kept it hidden until just the right moment when they can strike at everything.
I also dont understand how little outrage there even is about this, we were really close to huge catastrophe. Or maybe i have misunderstood the severity of what happened.
Kazumara@discuss.tchncs.de 11 hours ago
They are saying there were mistakes made with their key generation scripts:
We have done some preliminary assessment, there appears to be a flaw in the KGC script that was used on that specific day to create these ECC issuers. As for these ECC keys, our review of the KGC, assessment of the code and view of HSM keys so far indicate that a) a set of original ECC keys were created onboard as expected b) an approved deviation to our usual KGC to test a wrap/unwrap was introduced as these keys were meant for export for this instance c) a flaw in the code resulted in the second pair of keys being created onboard which were weaker d) these second pair of weaker keys were used by mistake to create the csr (because the key labels were similar) and signed by our root e) the CSR from these weaker keys were also sent over to Sectigo for cross signing (we verified the files sent over to Sectigo)
Source: bugzilla.mozilla.org/show_bug.cgi?id=2083449#c11
Personally I’m still a little confused why it makes any difference that the keys were intended for export to their European and US operations
shalafi@lemmy.world 9 hours ago
Interesting question! Google spit this out and it makes sense:
The primary reason these specific keys/issuers were created was to solve data sovereignty and data residency requirements for customers in those regions.
Many European and US corporate clients operate under strict legal frameworks (like GDPR in Europe or various federal compliance standards in the US) that legally dictate where cryptographic infrastructure can live, where data can be decrypted, and who can possess the root or intermediate private keys.
Generating separate regional keys is a compliance mechanism to guarantee that a customer’s data or handshake traffic stays within their jurisdiction.
Rhynoplaz@lemmy.world 12 hours ago
But, since nobody would expect an organization like that to have a one digit key, wouldn’t that make it extremely hard to guess?
Half kidding here.
StabbingSky@lemmy.zip 12 hours ago
Not if you’re brute forcing it.
balsoft@lemmy.ml 12 hours ago
I think it technically was not “brute forcing”, but specifically someone tried generating private keys with numbers 0-255, and surprisingly found a few.
Hal@piefed.nz 6 hours ago
So why did it take so long for someone to try it?
AmyAye@nord.pub 8 hours ago
“Time to brute force this key, I guess I will go get some lun…. What do you mean it’s already done? Who uses 4????”
scytale@piefed.zip 9 hours ago
Security by obscurity is what it’s called in the industry, and yeah it’s not a good way to do it. Automation and scripts would make it trivial to guess.
theneverfox@pawb.social 9 hours ago
It’s kinda like locking your door by putting a wedge in the crack. Probably, no one is going to try to open your door anyways, and probably, even if they did no one is going to take 5 seconds to examine the door and figure it out
But if someone does, it’s laughably easy to figure it out
Tetsuo@jlai.lu 7 hours ago
Except this is internet and pretty much anybody on the planet could test the security of your doors.
I like the analogy but I think it doesn’t really apply when it comes to devices that are connected to the internet.
balsoft@lemmy.ml 12 hours ago
Well, someone did guess it so it’s not that hard. The entropy was really low.
davetortoise@reddthat.com 12 hours ago
‘Entropy’ doesnt apply here
balsoft@lemmy.ml 3 hours ago
No it absolutely does, the method they used to generate private keys ended up having just 8 shannons of entropy which led to the discovery we are discussing
klankin@piefed.ca 10 hours ago
It does doesn’t it?
The higher the number of bits, the more entropy in the system.