News for hackers. Stuff that matters.
Re:The Cathedral and the Bazaar (1999) by colinsane on Sunday May 14, 2023 @04:22PM (#35941079)
> what's interesting isn't true ("Linus's law" being perhaps the most notorious example)

> Even the high-level organizing notion of "cathedrals" and "bazaars", which should have been a lay-up, hasn't really proven out.

you and i live oceans apart. a year of working around NixOS and especially linux on mobile phones has me working in very bazaar-like systems — where every component is swappable/composable — and seeing/using Linus’ law daily — in that people from out of the blue will patch things i’d been unable to figure out and when i hit edge cases that look familiar enough in any software i install i will debug it & send fixes upstream.

i’m well aware the above is niche. on the other hand i’m fairly confident that niche would be inaccessible to most of us who are otherwise participating in it were it not leveraging these two concepts.

Re:The Cathedral and the Bazaar (1999) by tptacek on Sunday May 14, 2023 @04:25PM (#35941103)
We do. As a vulnerability researcher, my take on "Linus's law" (which, like "Gell-mann Amnesia" isn't the product of the famous person it's named for) --- "given enough eyeballs, all bugs are shallow" --- is that has been effectively refuted by the recurrent discovery of grave vulnerabilities that have hidden in plain sight, sometimes for over a decade, and with the success of commercial vulnerability research work in eradicating those vulnerabilities.
Re:The Cathedral and the Bazaar (1999) by mjw1007 on Sunday May 14, 2023 @04:39PM (#35941188)
I don't think "bugs are shallow", or the "many eyeballs" section of this essay, are particularly talking about _discovering_ bugs.

The author seems to have had a worldview in which bugs don't really matter if people aren't coming across them, and in which the difficult part of dealing with a bug is either reproducing it or getting from a symptom to a cause.

If you were in a world where those two things are true then I think he's probably right that "many eyeballs" would help a great deal.

Re:The Cathedral and the Bazaar (1999) by tptacek on Sunday May 14, 2023 @04:41PM (#35941205)
It's not interesting to say that lots of interesting eyeballs are helpful. Anybody would have said that prior to this article's publication. Raymond makes a much stronger claim (which is why it has the force of "law"), and it hasn't borne out.
Re:The Cathedral and the Bazaar (1999) by mjw1007 on Sunday May 14, 2023 @04:48PM (#35941244)
Again: the purported law says "shallow", not "soon discovered".
Re:The Cathedral and the Bazaar (1999) by tptacek on Sunday May 14, 2023 @04:51PM (#35941263)
No, you can't get away with this semantic dodge, because Raymond numbered what he believed were the most important lessons he was imparting, and the one corresponding to Linus' Law is:

8. Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone.

He even attempted an axiomatic explanation:

Maybe it shouldn't have been such a surprise, at that. Sociologists years ago discovered that the averaged opinion of a mass of equally expert (or equally ignorant) observers is quite a bit more reliable a predictor than the opinion of a single randomly-chosen one of the observers. They called this the Delphi effect. It appears that what Linus has shown is that this applies even to debugging an operating system—that the Delphi effect can tame development complexity even at the complexity level of an OS kernel.

Re:The Cathedral and the Bazaar (1999) by mjw1007 on Sunday May 14, 2023 @05:23PM (#35941448)
Well, I'm baffled then. From where I'm sitting that point 8 is clearly talking about what happens after a bug is discovered, and not about discovering bugs.

The longer paragraph doesn't seem to contradict the notion either. My impression (based on the "How Many Eyeballs Tame Complexity" chapter) is that Raymond thought that "debugging" means "fixing bugs".

If I were criticising this part of essay, I'd say the main weakness is that the things Raymond thought of as "taming complexity" weren't really addressing the hard problem of reducing the number of bugs.

Re:The Cathedral and the Bazaar (1999) by anamexis on Sunday May 14, 2023 @05:28PM (#35941484)
"Characterizing problems" reads to me like "discovering bugs," particularly given that he specifically mentions having lots of beta users.
Re:The Cathedral and the Bazaar (1999) by doctor_eval on Sunday May 14, 2023 @08:41PM (#35942723)
As I mention upthread, a lot of the talk at the time was about overall quality of the software. So an interpretation that the total number of bugs would be reduced is well aligned with this outlook.

If the objective is just to fix bugs that have been found, well, that doesn't really feed into this narrative. Also, ESR was making a very large number of claims about the efficacy of OSS, and limiting the scope to bugs already discovered would not really align with the rest of the goings-on at the time.

Re:The Cathedral and the Bazaar (1999) by phkahler on Sunday May 14, 2023 @06:31PM (#35941943)
>> Given a large enough beta-tester and co-developer base...

That's a qualifier for what follows it. Seems true enough to me. If there are enough developers to notice bugs, they will probably be found and fixed quickly.

Re:The Cathedral and the Bazaar (1999) by emodendroket on Monday May 15, 2023 @12:54AM (#35944020)
The argument here is that the pool of "developers" is essentially unlimited for open-source software. In principle I suppose that's indisputable, but in practice is it true?
Re:The Cathedral and the Bazaar (1999) by narag on Sunday May 14, 2023 @08:34PM (#35942686)
No, you can't get away with this semantic dodge...

Right, what about this one: the bugs are all found eventually, only not by the right person.

Just kidding :)

Re:The Cathedral and the Bazaar (1999) by doctor_eval on Sunday May 14, 2023 @08:35PM (#35942701)
I agree with this take.

I was a developer at the time (still am), and if I'm remembering correctly, ESR was active in Slashdot and a few other places I hung out.

I took ESR's claim about bugs to imply that the quality of open source software would be greater than that of proprietary software because the number of people who had access to the code would inevitably result in less bugs. A lot of the discussions around C&B at the time were about software quality. I don't think anyone expected there to be zero bugs, just that there would be fewer.

I am not convinced it turned out that way, but that's an interesting discussion for another thread.

Re:The Cathedral and the Bazaar (1999) by emodendroket on Monday May 15, 2023 @12:51AM (#35944002)
It seems at least plausible an argument I read years ago, maybe in Raymond Chen's blog, that in reality the only thing that makes a difference is paying people to look for bugs and fix them because people don't like doing that that much.
Re:The Cathedral and the Bazaar (1999) by thomastjeffery on Sunday May 14, 2023 @09:19PM (#35942931)
> 8. Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone.

The key word here is characterized. That word is not equivalent to found.

Security vulnerabilities are unique in that they matter despite being unknown.

Other bugs are only important because of their direct impact on users. It's not unreasonable to take everything here and apply it to known bugs, and not to unknown vulnerabilities.

Re:The Cathedral and the Bazaar (1999) by emodendroket on Monday May 15, 2023 @12:52AM (#35944011)
I interpret it as synonymous with "found" here -- someone "characterizing" the bug finds it and opens a bug report.
Re:The Cathedral and the Bazaar (1999) by throwaway173738 on Monday May 15, 2023 @09:58AM (#35948210)
In professional engineering, you characterize the behavior after someone finds and reports it. Or you characterize a flow transducer, or you characterize gas circuit compliance. It’s the thing you do once you know there’s something to characterize.
Re:The Cathedral and the Bazaar (1999) by emodendroket on Monday May 15, 2023 @12:37PM (#35950927)
OK. Well in the variety of work I do, which I suppose isn’t professional by this standard, typically the person who finds a bug and the person who describes it are one and the same.
Re:The Cathedral and the Bazaar (1999) by coldtea on Sunday May 14, 2023 @05:17PM (#35941408)
If they're not "soon discovered" then the use of the term "shallow" means absolutely nothing...
Re:The Cathedral and the Bazaar (1999) by DonHopkins on Monday May 15, 2023 @02:07AM (#35944387)
Wow, what an impressive display of rhetorical gymnastics! It shows such fanatical dedication to the cause of carrying ESR's water. If you're up to it, I'd love to see you also have a go at rationalizing how his own words that I quoted aren't at all racist.

https://news.ycombinator.com/item?id=35943008

Re:The Cathedral and the Bazaar (1999) by jasmer on Sunday May 14, 2023 @05:03PM (#35941335)
It's interesting to say 'a lot of eyeballs will do something' in a world where nobody believed it.

I think this thread overstates the reality of the very, very crude metaphor that illustrates 'why open source can work' - even if it is very flawed.

I think by now we all kind of know 'it depends' aka there's context to everything.

Re:The Cathedral and the Bazaar (1999) by colinsane on Sunday May 14, 2023 @07:34PM (#35942334)
if your process is “release often, but preserve quality by a staged release process (betas) in which power users can fix bugs before they reach the masses” then you’re pretty explicitly allowing bugs to be in the codebase transiently. combine that with projects of this era shipping with files like BUGS or ISSUES alongside their README or NEWS/release notes, and you have strong evidence that “transient” means “can knowingly be included in a release”. at that point it just feels false to read ESR as claiming anything strong like “with enough eyes the software will contain no latent bugs” (which i think is how one side of this thread is interpreting the essay?)
Re:The Cathedral and the Bazaar (1999) by pwdisswordfishc on Monday May 15, 2023 @01:29AM (#35944200)
> The author seems to have had a worldview in which bugs don't really matter

That would explain so much… https://gitlab.com/esr/gif2png/-/commit/a8a761561b2a071e7452...

Re:The Cathedral and the Bazaar (1999) by DonHopkins on Monday May 15, 2023 @01:59AM (#35944352)
I don't think ESR would appreciate the irony of you directing many eyeballs to his carelessly bug-ridden code.
Re:The Cathedral and the Bazaar (1999) by lmm on Sunday May 14, 2023 @06:45PM (#35942031)
None of the significant security vulnerabilities that I can remember have been "deep" - subtle things that require extensive familiarity with the specific codebase and could never have been found by a drive-by contributor, which is the idea that ESR is refuting. Debian keygen bug? Dumb one-liner. Heartbleed? Dumb one-liner. Goto fail? Technically a logic bug, but a two-line thing that could be understood by reading that one file without any additional context.

I've seen cases where exploitation was complex, but even then, that tends to be because the full exploit is chaining together several bugs, each of which is individually simple and could be fixed by a drive-by contributor.

Re:The Cathedral and the Bazaar (1999) by pron on Sunday May 14, 2023 @07:41PM (#35942386)
If that was the intended meaning of "shallow", why does the number of eyeballs matter? I think the more obvious interpretation is "quickly discovered".
Re:The Cathedral and the Bazaar (1999) by tptacek on Sunday May 14, 2023 @07:47PM (#35942428)
Yes. We don't have to guess at this, because Raymond wrote that explicitly in the article.
Re:The Cathedral and the Bazaar (1999) by lmm on Sunday May 14, 2023 @10:48PM (#35943396)
In the article the number of eyeballs is pretty explicitly a minor caveat, and the main point is the shallowness in the sense of approachability:

> In Linus's Law, I think, lies the core difference underlying the cathedral-builder and bazaar styles. In the cathedral-builder view of programming, bugs and development problems are tricky, insidious, deep phenomena. It takes months of scrutiny by a dedicated few to develop confidence that you've winkled them all out. Thus the long release intervals, and the inevitable disappointment when long-awaited releases are not perfect.

> In the bazaar view, on the other hand, you assume that bugs are generally shallow phenomena—or, at least, that they turn shallow pretty quickly when exposed to a thousand eager co-developers pounding on every single new release. Accordingly you release often in order to get more corrections, and as a beneficial side effect you have less to lose if an occasional botch gets out the door.

Re:The Cathedral and the Bazaar (1999) by tsimionescu on Monday May 15, 2023 @02:26AM (#35944488)
This seems to be the main definition of deep vs shallow:

> It takes months of scrutiny by a dedicated few to develop confidence that you've winkled them all out.

By this definition, bugs like Heartbleed were indeed deep: they were not randomly found by a million eyeballs in a few days, they were were found by months of careful scrutiny by experts.

The fact that a bug can be fixed with a one line change doesn't mean that it's a shallow bug. A one-line bug can induce a rare, hard to observe behavior in very corner circumstances. Even if users are hitting it, the bug reports can be entirely useless at face value: they can look like a crash that someone saw once with no idea what was special that one time (I bet you would find OpenSSL bug reports like this that were symptoms of Heartbleed going back much longer).

This is why you need a complex and time-consuming QA process to even identify the long tail of deep bugs, which no amount of casual eyeballs will replace.

Re:The Cathedral and the Bazaar (1999) by lmm on Monday May 15, 2023 @02:39AM (#35944532)
> By this definition, bugs like Heartbleed were indeed deep: they were not randomly found by a million eyeballs in a few days, they were were found by months of careful scrutiny by experts.

> The fact that a bug can be fixed with a one line change doesn't mean that it's a shallow bug. A one-line bug can induce a rare, hard to observe behavior in very corner circumstances. Even if users are hitting it, the bug reports can be entirely useless at face value: they can look like a crash that someone saw once with no idea what was special that one time (I bet you would find OpenSSL bug reports like this that were symptoms of Heartbleed going back much longer).

> This is why you need a complex and time-consuming QA process to even identify the long tail of deep bugs, which no amount of casual eyeballs will replace.

This is the point in dispute. As far as I can see Heartbleed did not require any special knowledge of the codebase; a drive-by reviewer taking a look at that single file had just as much chance of finding the bug as a dedicated maintainer familiar with the specific codebase. The fact that it was discovered independently by two different teams, at least one of which was doing a general security audit rather than specifically targetting OpenSSL, supports that.

Re:The Cathedral and the Bazaar (1999) by tsimionescu on Monday May 15, 2023 @02:46AM (#35944572)
The fact that it was only found 2 years after being introduced (by non-attackers at least), in one of the most used pieces of software in the world, suggests that it wasn't actually shallow by any definition.

I don't think it's relevant that it could have been found by anyone. We know empirically that it just wasn't. It was found by security auditors, which is just about as far as you can be from a random eyeball.

Edit: An even more egregious example is of course the ~20 year old Shellshock family of bugs in bash.

Re:The Cathedral and the Bazaar (1999) by lmm on Monday May 15, 2023 @03:07AM (#35944696)
> The fact that it was only found 2 years after being introduced (by non-attackers at least), in one of the most used pieces of software in the world, suggests that it wasn't actually shallow by any definition.

Or that few people were looking.

> I don't think it's relevant that it could have been found by anyone. We know empirically that it just wasn't. It was found by security auditors, which is just about as far as you can be from a random eyeball.

It was found by security people with security skills. But those were not people closely associated with the OpenSSL project; in fact as far as I can see they weren't prior contributors or project members at all. That very much supports ESR's argument.

Re:The Cathedral and the Bazaar (1999) by tsimionescu on Monday May 15, 2023 @04:59AM (#35945401)
> It was found by security people with security skills. But those were not people closely associated with the OpenSSL project; in fact as far as I can see they weren't prior contributors or project members at all. That very much supports ESR's argument.

It doesn't. ESR's argument suggests OpenSSL should not hire security researchers to look for bugs, since all bugs are shallow and people will just quickly find them - the Bazaar approach.

What Heartbleed has shown is that the OpenSSL project would be much higher quality if it took a more Cathedral-like approach and actively look for security researchers to work on it, and make them a part of their release process. Because they didn't, they released with a critical security vulnerability for more than a year (and there are very possibly many others).

Especially in security, it's clear that some bugs are deep. Any project that cares about security actually has to follow a cathedral-like approach to looking for them. Releasing security critical code early is only making the problem worse, not better.

Re:The Cathedral and the Bazaar (1999) by lmm on Monday May 15, 2023 @05:19PM (#35954630)
This is a "Seinfeld is unfunny" situation. People don't remember what development practices were like prior to this essay.

> ESR's argument suggests OpenSSL should not hire security researchers to look for bugs, since all bugs are shallow and people will just quickly find them - the Bazaar approach.

It suggests they should release early and often to allow outside researchers a chance to find bugs, rather than relying on internal contributors to find them. Which seems to have worked in this case.

> Especially in security, it's clear that some bugs are deep. Any project that cares about security actually has to follow a cathedral-like approach to looking for them.

No it isn't. I still haven't seen examples of bugs like that.

> Releasing security critical code early is only making the problem worse, not better.

How?

Re:The Cathedral and the Bazaar (1999) by tsimionescu on Monday May 15, 2023 @05:45PM (#35954912)
> Which seems to have worked in this case.

How is missing a critical security issue that endangers all encryption offered by OpenSSL for more than a year (giving attackers access to your private keys via a basic network request) "working in this case"?

> No it isn't. I still haven't seen examples of bugs like that.

If you don't think finding Heartbleed after a year in OpenSSL was the process working, how about finding Shellshock was hiding in Bash for more than 20 years? Was that still a shallow bug, or is bash a project that just doesn't get enough eyes on it?

> How?

By letting people expose their data for years with a false sense of security. By encouraging projects to think security is someone else's problem, and they don't need to really worry about it.

Rather than releasing support for TLS heartbeats that steal your private keys for a whole year, it would have obviously and indisputably been better if the feature had been delayed until a proper security audit had been performed.

That the bug was eventually found is in no way a merit of the model. People find security bugs in closed source software all the time. The NSA and the Chinese and who knows who else usually find them even earlier, and profit handsomely from it.

Re:The Cathedral and the Bazaar (1999) by lmm on Monday May 15, 2023 @09:13PM (#35956657)
> How is missing a critical security issue that endangers all encryption offered by OpenSSL for more than a year (giving attackers access to your private keys via a basic network request) "working in this case"?

The fact that it was found by people outside the project is the system working.

> If you don't think finding Heartbleed after a year in OpenSSL was the process working, how about finding Shellshock was hiding in Bash for more than 20 years? Was that still a shallow bug, or is bash a project that just doesn't get enough eyes on it?

Yes it's a shallow bug. I mean look at it. And look at who found it.

> Rather than releasing support for TLS heartbeats that steal your private keys for a whole year, it would have obviously and indisputably been better if the feature had been delayed until a proper security audit had been performed.

How much auditing do you realistically think a project with a grand total of one (1) full-time contributor would've managed?

If the code hadn't been publicly released we'd still be waiting for the bug to be found today.

Re:The Cathedral and the Bazaar (1999) by tsimionescu on Tuesday May 16, 2023 @01:50AM (#35958131)
> The fact that it was found by people outside the project is the system working.

This happens all the time to Windows, to Intel's hardware architecture, even to remote services that people don't even have the binaries for. There is nothing special about people outside the team finding security bugs in your code. After all, that's also what attackers are.

> Yes it's a shallow bug. I mean look at it. And look at who found it.

If a bug that hid from almost every developer on the planet for 20 years (that's how popular bash is) is still shallow, then I have no idea how you define a non-shallow bug.

> How much auditing do you realistically think a project with a grand total of one (1) full-time contributor would've managed?

That's irrelevant to this discussion. Per the essay, even a company as large as Microsoft would be better off releasing anything they do immediately, instead of "wasting time" on in-house security audits.

> If the code hadn't been publicly released we'd still be waiting for the bug to be found today.

I'm not saying they shouldn't have released the code along with the binary, I'm saying they shouldn't have released anything. It would have been better for everyone if OpenSSL did not support heartbeats at all, for a few more years, rather than it supporting heartbeats that leak everyone's private keys if you just ask them nicely.

This is the point of the Cathedral model: you don't release software at all until you're reasonably sure it's secure. The Bazaar model is that you release sofwatre as soon as it even seems to work sometimes, and pass on the responsibility for finding that it doesn't work to "the community". And the essay has the audacity to claim that the second model would actually produce better quality.

Re:The Cathedral and the Bazaar (1999) by lmm on Tuesday May 16, 2023 @05:48AM (#35959590)
> There is nothing special about people outside the team finding security bugs in your code.

That supports the point.

> If a bug that hid from almost every developer on the planet for 20 years (that's how popular bash is) is still shallow, then I have no idea how you define a non-shallow bug.

A bug where you think "yeah, no-one except the x core team could ever have found this". A bug where you can't even understand that it's a bug without being steeped in the project it's from.

> That's irrelevant to this discussion.

Disagree; that the Bazaar can attract more contributions is a big part of the point.

> This is the point of the Cathedral model: you don't release software at all until you're reasonably sure it's secure. The Bazaar model is that you release sofwatre as soon as it even seems to work sometimes, and pass on the responsibility for finding that it doesn't work to "the community".

Few people were thinking about security at all in those days, at least the way we think about it now; the essay isn't about security bugs, it's about bugs generally. The claim is that doing development in private and holding off releasing doesn't work, because the core team isn't much better at finding bugs than outsiders are. The extent to which a given project prioritises security versus features is an orthogonal question; there are plenty of Cathedral-style projects that release buggy code, and plenty of Bazaar-style projects that release low-bug code.

Re:The Cathedral and the Bazaar (1999) by tptacek on Tuesday May 16, 2023 @06:46PM (#35968784)
It did the literal opposite: the TLS Heartbeat Extension was itself a bazaar (and bizarre) random contribution to the protocol. The bazaar-i-ness of OpenSSL --- which has since become way more cathedralized --- was what led to Heartbleed, both in admitting the broken code and then in not detecting that code regardless of the fact that it's one of the most widely used open source projects on the Internet. It comprehensively rebuts Raymond's argument.
Re:The Cathedral and the Bazaar (1999) by tptacek on Monday May 15, 2023 @06:11PM (#35955205)
I remember what development practices were like prior to this essay, which is part of why I feel so strongly that it's overrated. Several other people on this thread were working in the mid-late '90s too.
Re:The Cathedral and the Bazaar (1999) by tptacek on Monday May 15, 2023 @01:39PM (#35951766)
If "few people were looking" at OpenSSL, one of the most widely-used pieces of open source software in the entire industry, Eric Raymond's point is refuted.
Re:The Cathedral and the Bazaar (1999) by lmm on Monday May 15, 2023 @05:23PM (#35954666)
That's just one possibility. There are many ways for a development process to go wrong.
Re:The Cathedral and the Bazaar (1999) by tptacek on Monday May 15, 2023 @06:12PM (#35955212)
The whole thesis is that the open source userbase forms the army of eyeballs that will surface all bugs --- they're part of the development process. So no, this dodge doesn't work either; it doesn't cohere with what Raymond said.
Re:The Cathedral and the Bazaar (1999) by lgg on Sunday May 14, 2023 @09:28PM (#35942983)
Spectre, Meltdown and Rowhammer were all discovered in the same timeframe as the things you listed, and were decidedly more complex than dumb one liners. Yes, those are all have a hardware component (and thus the "fixes" are software workarounds), but the fixes involved way more than one or two lines of work.
Re:The Cathedral and the Bazaar (1999) by lmm on Sunday May 14, 2023 @10:08PM (#35943144)
The workaround fixes are complex, but the actual issues are very simple, no?
Re:The Cathedral and the Bazaar (1999) by amoss on Monday May 15, 2023 @02:22AM (#35944462)
No. Architectural leakage via a side-channel is far from simple. It requires deep understanding of the code (i.e. what it does, why it is doing it that way and the implied effect of executing the code on the architecture) and also of the architecture (i.e. how it is executing and why that causes leakage to be observable via the side-channel).

If anything, these are canonical examples of non-simple bugs.

Re:The Cathedral and the Bazaar (1999) by lmm on Monday May 15, 2023 @05:24PM (#35954680)
> It requires deep understanding of the code (i.e. what it does, why it is doing it that way and the implied effect of executing the code on the architecture) and also of the architecture (i.e. how it is executing and why that causes leakage to be observable via the side-channel).

For exploitation, or for patching, maybe. But characterizing these bugs is still clear and simple IMO. I mean, rowhammer is about as basic as a bug can get - the value of this bit in memory changed even though it was never written to.

Re:The Cathedral and the Bazaar (1999) by tptacek on Monday May 15, 2023 @06:13PM (#35955223)
Rowhammer isn't a speculative execution bug. Without getting into how complex Rowhammer is or isn't, speculative execution is an inherently complex and software-involved pattern of vulnerability.

You're letting yourself get dragged into some weird rhetorical places trying to defend this part of Raymond's essay.

Re:The Cathedral and the Bazaar (1999) by lmm on Monday May 15, 2023 @09:15PM (#35956672)
> Rowhammer isn't a speculative execution bug. Without getting into how complex Rowhammer is or isn't, speculative execution is an inherently complex and software-involved pattern of vulnerability.

Rowhammer was one of the examples the person I was replying to listed. But the same applies for spectre/meltdown/etc.. They're all issues that can be understood - perhaps not exploited, certainly not fixed, but understood that a bug is there - without any deep architectural knowledge.

> You're letting yourself get dragged into some weird rhetorical places trying to defend this part of Raymond's essay.

If anyone other than you talked like this they'd be quite rightly downvoted to oblivion.

Re:The Cathedral and the Bazaar (1999) by amoss on Tuesday May 16, 2023 @01:25AM (#35957999)
> They're all issues that can be understood - perhaps not exploited, certainly not fixed, but understood that a bug is there - without any deep architectural knowledge.

I don't think it is clear how you would do this other than with hindsight. When the bug was discovered, if we avoid architectural knowledge of why the bug was occurring then what information would the discoverer have access to?

- Memory corruption is occuring during execution.

- We can't find any part of code that appears to corrupt the values.

Finding the bug requires finding the Rowhammer affect, which means looking isolating the instructions that are accessing similar uncached addresses, and then finding the pattern of accesses and cache flushes which triggers the corruption.

Could you explain how this would be simple, or do you have a different view of the bug complexity that you could explain?

Re:The Cathedral and the Bazaar (1999) by lmm on Tuesday May 16, 2023 @05:52AM (#35959612)
> if we avoid architectural knowledge of why the bug was occurring then what information would the discoverer have access to?

> Finding the bug requires finding the Rowhammer affect, which means looking isolating the instructions that are accessing similar uncached addresses, and then finding the pattern of accesses and cache flushes which triggers the corruption.

AIUI you don't need to know the details of the caches though? I guess you could argue that knowing the physical memory layout is deep knowledge, but you don't need to be an expert on e.g. that specific chip or memory controller to find that effect, no? And fundamentally if you can produce memory corruption then you can know that's a bug without having to understand the details of the memory hierarchy or hardware.

Re:The Cathedral and the Bazaar (1999) by amoss on Tuesday May 16, 2023 @06:12AM (#35959760)
Perhaps we are talking about overlapping but slightly different concepts? If I run the program and it goes wrong then I know there is a bug - but I don't know what or where it is.

So observing that Rowhammer causes buggy behavior may be simple. But finding the actual bug - i.e. this sequence of instructions on this data causes the memory corruption would be much harder.

Part of this comes down to how you interpret the "many eyes makes bugs shallow" but I suspect that no number of eyes would have found the Rowhammer bugs by looking at the code.

Re:The Cathedral and the Bazaar (1999) by tptacek on Tuesday May 16, 2023 @06:47PM (#35968785)
Yes, they provided several examples, and then you attempted to tie them all together and claim they were conceptually simple. No, that won't fly.
Re:The Cathedral and the Bazaar (1999) by colinsane on Sunday May 14, 2023 @08:09PM (#35942564)
>> you and i live oceans apart.

> We do.

which, just to clarify, i didn’t mean as “one of us contradicts the other” but that “we experience different slices of life which are guided by different priorities”. i very much wouldn’t want to be a security researcher in the open source areas i occupy now. likewise i wouldn’t want to use the development practices i experience in community open source were i instead building a fighter jet.

looking at the bizarre overlap between “open source contributors who like {Nix,Haskell/FP,Rust}” and “people i know who work for defense contractors” though, i’m actually optimistic that our distance could shrink in time.

Re:The Cathedral and the Bazaar (1999) by DonHopkins on Sunday May 14, 2023 @09:06PM (#35942860)
"My favorite part of the "many eyes" argument is how few bugs were found by the two eyes of Eric (the originator of the statement). All the many eyes are apparently attached to a lot of hands that type lots of words about many eyes, and never actually audit code." -Theo De Raadt
Re:The Cathedral and the Bazaar (1999) by musicale on Monday May 15, 2023 @01:58AM (#35944341)
It seems possible that some better eyeballs (possibly automated ones) have been developed and deployed en masse.