News for hackers. Stuff that matters.
Re:This shouldn't have happened: A vulnerability postmortem by Veserv on Wednesday December 01, 2021 @04:07PM (#29409140)
How do you know that it was actually "extremely well-maintained"? Everybody thought OpenSSL was well-maintained since it was used as critical infrastructure by multi-billion dollar megacorporations, but it was actually maintained by two full-time employees and a few part-time volunteers with maybe a quick once-over before a commit if they were lucky. How about sudo, a blindly trusted extremely sensitive program [1], which is maintained by basically one person who has nearly 3,000,000(!) changes[2] over 30 or so years?

Assuming that something is well-maintained because it is important is pure wishful thinking. Absent a specific detailed high quality process, or an audit that they conform to a well-established process that has demonstrably produced objectively high-quality output in a large percentage of audited implementations of that process (thus establishing nearly every instance of the audited process -> high quality output) all evidence indicates that you should assume that these code bases are poorly maintained until proven otherwise[3]. And, even the ones that are demonstrably maintained usually use very low quality processes as demonstrated by the fact that almost nobody working on those projects would be comfortable using their processes on safety-critical systems [4] which is the minimum bar for a high quality process (note the bar is "believe it is okay for safety-critical"). In fact, most would be terrified of the thought and comfort themselves knowing that their systems are not being used in safety-critical systems because they are absolutely not taking adequate precautions, which is a completely reasonable and moral choice of action as they are not designing for those requirements, so it is totally reasonably to use different standards on less important things.

[1] https://news.ycombinator.com/item?id=25919235

[2] https://github.com/sudo-project/sudo/graphs/contributors

[3] https://xkcd.com/2347/

[4] https://xkcd.com/2030/

Re:This shouldn't have happened: A vulnerability postmortem by nullityrofl on Wednesday December 01, 2021 @04:15PM (#29409225)
Tavis explains clearly why he thinks it's well maintained in the post, complete with linkages to source code. To paraphrase:

[...] NSS was one of the very first projects included with oss-fuzz [...]

[...] Mozilla has a mature, world-class security team. They pioneered bug bounties, invest in memory safety, fuzzing and test coverage. [... all links to evidence ...]

Did Mozilla have good test coverage for the vulnerable areas? YES.

Did Mozilla/chrome/oss-fuzz have relevant inputs in their fuzz corpus? YES.

Is there a mutator capable of extending ASN1_ITEMs? YES.

I don't think at any point anyone assumed anything.

Re:This shouldn't have happened: A vulnerability postmortem by jcranmer on Wednesday December 01, 2021 @05:24PM (#29409943)
OpenSSL is a project which is treated as a "somebody else's problem" dependency by everybody, and the extent to which everybody cares about TLS support, it's basically an "open up a TLS socket and what do you mean it's more complicated than that" situation.

By contrast, NSS is maintained by Mozilla as part of Firefox, and, furthermore, its level of concern is deep into the "we don't want to enable certain cipher suites, and we have very exacting certificate validation policies that we are part of the effort in defining"--that is to say, NSS isn't a "somebody else's problem" dependency for Mozilla but a very "Mozilla's problem" dependency.

That said, this is CERT_VerifyCertificate, not mozilla::pkix, and since this is not used in Firefox's implementation of certificate validation, I would expect that this particular code in the library would be less well-maintained than other parts. But the whole library itself wouldn't be in the same camp as OpenSSL.

Re:This shouldn't have happened: A vulnerability postmortem by antod on Wednesday December 01, 2021 @05:02PM (#29409705)
> Everybody thought OpenSSL was well-maintained since it was used as critical infrastructure by multi-billion dollar megacorporations

I wasn't under the impression anybody who knew the project ever really thought that. Some other people may have assumed that as a default if they hadn't looked into it.

This article spells out a whole bunch of reasoning why this particular library was well maintained though. There's a difference between reasoning based on evidence and assumptions.

Re:This shouldn't have happened: A vulnerability postmortem by tptacek on Wednesday December 01, 2021 @05:28PM (#29409978)
I don't know anybody who thought OpenSSL was well-maintained in and before the Heartbleed era (it's a fork of SSLeay, which was Eric Young's personal project). Post-Heartbleed --- a decade ago, longer than the time lapse between SSLay and OpenSSL --- maintenance of OpenSSL has improved dramatically.
Re:This shouldn't have happened: A vulnerability postmortem by Godel_unicode on Wednesday December 01, 2021 @11:17PM (#29412520)
I think you and a sibling comment might be too close to the problem. When heartbleed dropped my Twitter feed had a few crypto engineers saying "I mean, eventually this was going to happen" and a ton of developers whose main language starts with a "p" going "how?? OpenSSL is core plumbing of the internet, it can't be this bad can it???".

Edit: to be clear, not maligning the "p" language developers, I was one myself. Simply saying there are a ton of technical people who are blissfully ignorant of the tiny pillars of clay that hold up the internet.

Re:This shouldn't have happened: A vulnerability postmortem by bee_rider on Thursday December 02, 2021 @12:24AM (#29412835)
To be fair, it was unreasonable to expect Prolog coders to keep up with crypto advancements, I mean the language pre-dates SSL by decades.
Re:This shouldn't have happened: A vulnerability postmortem by tannhaeuser on Thursday December 02, 2021 @01:15AM (#29413087)
Care to expand on what Prolog coders have to do with OpenSSL? Not getting the context here.
Re:This shouldn't have happened: A vulnerability postmortem by wolf550e on Thursday December 02, 2021 @02:12AM (#29413389)
A joke about "developers whose main language starts with a "p"", meaning presumably perl, php and python. I guess in this context, ruby and JavaScript are also languages starting with "p".
Re:This shouldn't have happened: A vulnerability postmortem by Godel_unicode on Thursday December 02, 2021 @11:38AM (#29418458)
Don't worry, I told both of them what was going on ;)
Re:This shouldn't have happened: A vulnerability postmortem by seanhunter on Thursday December 02, 2021 @02:38AM (#29413513)
Pascal does predate the era of SSL by some margin to be fair.
Re:This shouldn't have happened: A vulnerability postmortem by hn_go_brrrrr on Thursday December 02, 2021 @01:49AM (#29413266)
Yeah, those Perl hackers are really out of touch :-)