LibreSSL PRNG Vulnerability Patched
msm1267 writes: The OpenBSD project late last night rushed out a patch for a vulnerability in the LibreSSL pseudo random number generator (PRNG). The flaw was disclosed two days ago by the founder of secure backup company Opsmate, Andrew Ayer, who said the vulnerability was a "catastrophic failure of the PRNG." OpenBSD founder Theo de Raadt and developer Bob Beck, however, countered saying that the issue is "overblown" because Ayer's test program is unrealistic. Ayer's test program, when linked to LibreSSL and made two different calls to the PRNG, returned the exact same data both times.
"It is actually only a problem with the author's contrived test program," Beck said. "While it's a real issue, it's actually a fairly minor one, because real applications don't work the way the author describes, both because the PID (process identification number) issue would be very difficult to have become a real issue in real software, and nobody writes real software with OpenSSL the way the author has set this test up in the article."
"It is actually only a problem with the author's contrived test program," Beck said. "While it's a real issue, it's actually a fairly minor one, because real applications don't work the way the author describes, both because the PID (process identification number) issue would be very difficult to have become a real issue in real software, and nobody writes real software with OpenSSL the way the author has set this test up in the article."
That's not how you're suppose to hold the phone.
Q: What do we call "contrived test programs" in the "real" word?
A: Exploits.
Pining for the days when The Glorious MEEPT!!! graced SlapDash with his wisdom.
This is not a problem where an outside attacker can successfully attack the software. It is a problem where a malicious developer can attack his or her own software. So the vulnerability is not that an attacker can shoot at me with a gun, the vulnerability is that I can use my own gun to shoot myself in the foot. But only if I construct a clever framework that causes the anti-shoot-in-the-own-foot measures provided by the gun to be blocked.
...
Rolling out a completely new SSL library is no trivial feat. There will be bumps in the road and only time will tell if all the effort was worth it. The same goes for BoringSSL. Just consider how long OpenSSL has been around. If you leave OpenSSL because THE WORLD missed heart bleed, you are a fool. Think about all the eyes on the code both upstream and downstream.
Knee Jerk reactions seldom create something better, but they are good for perception. Maybe that is what this whole thing is really about...
fixed a condition that was highly unlikely to be able to be exploited in real world conditions and made a big deal out of it. Just fix it and move on, the 'While at first glance this only appears to be a major issue" is something I expect to hear from other camps.
> The OpenBSD project late last night rushed out a patch ...
Sensationalist introductory sentence. LibreSSL is is not used in any production environment, there is no "rush" here.
It is an early version released to solicit feedback. Feedback was provided, resulting in a bug fix. This is *exactly* anticipated outcome.
I've spent the past 5 years of my life fully employed in the design, creation, testing, and deployment of secure RNGs.
The world is full of bad PRNGs, NRNGs, CSPRNGs, DRBGs, TRNGs and any other form of RNG.
LibreSSL doesn't have a leg to stand on. A good secure RNG will return unpredictable output. A good PRNG will return data indistinguishable from random. A good CSPRNG will do that with guarantees on the computational complexity of predicting the output.
We know how to do these things. It isn't trivial, but it isn't hard either. Allowing someone to extract predictable behavior from the service end of a security library is a gross failure and an exposition of incompetence.
I should use this sig to advertise my book ISBN-13 : 978-1501515132.
first security vulnerability to be discovered! in 3....2.......1............
IKR.
There's a lot of people saying its a non-issue. It's a huge issue. The contract of a PRNG says it's to return a random value. Getting it to do otherwise (without providing the same seed) is tantamount to being able to make a collision in a hash function (in terms of severity) -- which means that it's fundamentally broken. This bug indicates that there is some underlying structural issue with this PRNG's initialization, and downplaying it demonstrates incompetence.
I've spent the past 5 years of my life fully employed in the design, creation, testing, and deployment of secure RNGs.
The world is full of bad PRNGs, NRNGs, CSPRNGs, DRBGs, TRNGs and any other form of RNG.
LibreSSL doesn't have a leg to stand on. A good secure RNG will return unpredictable output. A good PRNG will return data indistinguishable from random. A good CSPRNG will do that with guarantees on the computational complexity of predicting the output.
We know how to do these things. It isn't trivial, but it isn't hard either. Allowing someone to extract predictable behavior from the service end of a security library is a gross failure and an exposition of incompetence.
I can't tell if you are sarcastic or not. The headline makes me think you are, the last sentence of the post makes me think you might be honest. If you manage to get control of all the seeds for your RNG you get predictable results unless you go hardware random which makes the seed uncontrollable. You usually don't have that much control over the seeds not to mention getting the same PID twice. As someone else already mentioned that much control over the system means you don't need to get the RNG anymore, you already own the system.
OpenBSD founder Theo de Raadt and developer Bob Beck, however, countered saying that the issue is "overblown"
Yeah, last time he was complacent about the risk of an exploit being practically weaponizable, I seem to remember GOBBLES making him look rather foolish. "Dismissive about risks" is not a responsible attitude for a supposedly security-conscious project to adopt.
What a whole lot of people seem to want from LibreSSL is to behave in every little bit EXACTLY as OpenSSL does, even though OpenSSL itself is a complete and utter mess.
OpenSSL allowed developers to interfere with RNG, so LibreSSL must do that, too?
Well, you can't really go at improving and cleaning up the library if you have to keep all the old bugs and the whole crusty API around.
It's inconceivable to expect LibreSSL to be both better than OpenSSL, yet to have the exact same API and the exact same set of bugs and nuances as the original OpenSSL.
What they're trying to do is be a simple-enough replacement of OpenSSL for most modern software out there (possibly with some minimal patching of the outside software), and not a one-to-one drop-in-replacement for random edge cases.
So many comments but so few actually took the time and have the necessary knowledge to comment. This community is horrible... ah Internet. This bug doesn't belong on Slashdot, it's meaningless.
Not an expert in OS design details, but I'm quite surprised there exists an OS which newly hands out the same PID a very recent process had. Do not PIDs monotonically increase until they wrap around? If not, why not? And why are they not based on adequately large integers? 32 bits for a minimum; why not 64? Yeah, it will uglify a ps display, but eyes on the security ball here. My 64-bit Arch linux on kernel 3.15 is saying 15 bits (cat /proc/sys/kernel/pid_max = 32768).
For that matter, Is there any reason not to make sure all PIDs issued on a given system for a given power cycle are unique? Yeah, it would be a tradeoff against performance.
SIGNED INT "ROLL-OVER" EVENT != 2 CALLS (unless properly staged)
Sure, needs to be fixed, but it it not going to happen in most situations and an attacker that can provoke it already can do far worse. That said, a competent user of LibreSSL will reseed after a fork anyways. You can do only so much for the incompetent ones.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
LibreSSL prng vulnerable to psyops.
Shut the fuck up with your lame ass excuses