Intentionally buggy commits for fame—and papers
A buggy patch posted to the linux-kernel mailing list in early April was apparently the last straw for Greg Kroah-Hartman as it led to the planned reversion of a whole slew of commits with one thing in common: their origin at the University of Minnesota (UMN). The patch to the NFSv4 authorization mechanism was duly questioned by two NFS developers, but it is not an honest mistake; according to Kroah-Hartman, there has been an attack of sorts underway as part of some academic research at the university. In order to be sure that these intentional bugs, many with security implications, do not continue to haunt Linux, he is working on reverting commits that came from email addresses with the umn.edu domain.
The buggy patch was posted by Aditya Pakki on April 6, questioned by J. Bruce Fields the next day, and NACKed by Trond Myklebust the day after that. On April 20, Kroah-Hartman responded to it in decidedly unhappy fashion:
Please stop submitting known-invalid patches. Your professor is playing around with the review process in order to achieve a paper in some strange and bizarre way.This is not ok, it is wasting our time, and we will have to report this, AGAIN, to your university...
Fields asked for
more details, some of which were filled in by
Leon Romanovsky. A paper
[PDF] by Qiushi Wu and Kangjie Lu, both of the University of Minnesota,
details the process of introducing use-after-free bugs into the kernel for
the purposes of, essentially, showing that it can be done—and presenting a
paper about it, naturally. Romanovsky continued: "Yesterday, I took a look on 4
accepted patches from Aditya [Pakki] and 3 of them added various severity security
'holes'.
"
Kernel developers have enough problems with bugs being added by mistake, so
patches with intentional bugs are obviously unwelcome. Kroah-Hartman said that all of
the patches coming from these developers need to be reverted because
"what they are doing is intentional
malicious behavior and is not acceptable and totally unethical
". He
put together a
patch
set of 190 reversions that he called the "easy" reverts; there is a set
of 68 additional patches that need manual review to determine what to do
about them. "Some of them are not able to be reverted
as they already have been reverted, or fixed up with follow-on patches
as they were determined to be invalid. Proof that these submissions
were almost universally wrong.
"
He asked that maintainers review the 190 reversions to see if some actually fixed real problems; so far, a small handful have been determined to either be real fixes or to be harmless. The real fixes, at least, will remain in the tree. Kroah-Hartman had a warning for maintainers, though, in light of this situation:
[...] but [maintainers] should be aware that future submissions from anyone with a umn.edu address should be by default-rejected unless otherwise determined to actually be a valid fix (i.e. they provide proof and you can verify it, but really, why waste your time doing that extra work?)
Of course, it is not just the mainline that is affected by these dubious patches. As Sudip Mukherjee pointed out, some have already made their way into stable kernels. Those need reversion too, Kroah-Hartman said.
There is a question of whether this type of research is ethical. Abhi
Shelat said:
"Academic research should NOT waste the time of a community.
"
He suggested reporting the behavior to the review board that is responsible
for ensuring that research at UMN remains ethical and, in particular,
anything that might be considered human
experimentation is supposed to be pre-reviewed by that board. While
making a report of that nature may happen, kernel developers have a much
more direct "fix", as Romanovsky pointed out:
"Our solution to ignore all @umn.edu contributions is much more
reliable
to us who are suffering from these researchers.
"
That fix is, of course, fairly drastic; there are surely some folks with
umn.edu addresses that are not part of the research, nor trying to
intentionally slip bugs into the kernel. In fact, Pakki claimed to not be
purposely doing so in email to Kroah-Hartman, who replied on the
list. Pakki said that the patches were based on the output of a new static
analyzer that he wrote, but its "sensitivity is obviously not
great
". Kroah-Hartman was not buying that explanation, however:
Our community welcomes developers who wish to help and enhance Linux. That is NOT what you are attempting to do here, so please do not try to frame it that way.Our community does not appreciate being experimented on, and being "tested" by submitting known patches that are either do nothing on purpose, or introduce bugs on purpose. If you wish to do work like this, I suggest you find a different community to run your experiments on, you are not welcome here.
Of course, it is hard to imagine that other communities are looking forward to having their time wasted with known-buggy patches either. In fact, a thorough review of patches emanating from UMN over the last year or two is probably in order for other projects, particularly high-profile ones. There is, of course, nothing stopping "researchers" from using other kinds of email addresses for these patches, though the umn.edu domain does at least provide a fig leaf of cover; otherwise, introducing security holes into the kernel from a personal address is pretty much indistinguishable from an attempt to backdoor the kernel—which may be a criminal offense. In addition, a maintainer receiving email from a .edu domain may be less likely to deeply scrutinize a patch that looks like a simple bug fix.
It may not quite have sunk in yet, but these researchers have damaged not only their own reputations, but the entire university's, which is obviously unfair, but there are not really any workable alternatives. Some efforts at damage control have been tried, but the statements made do not mesh well with the situation on the ground. On the home page for Lu, one of the authors of the paper, there is a note and a link to a three-page clarification [PDF] on the entry for the paper. The note says:
The experiment did not introduce any bug or bug-introducing commit into OSS. It demonstrated weaknesses in the patching process in a safe way. No user was affected, and IRB exempt was issued. The experiment actually fixed three real bugs.
The clarification continued in the same vein, claiming that no code used by the
study made it into the kernel; it did note that
"unfortunately
" maintainers' time was wasted in the process, however.
But various kernels have been found with bugs introduced by suspect commits.
In fact, Guenter Roeck, in a reply to an apparently private email from Lu pointed
to a commit
authored by Lu that introduced a problem. Roeck probably
summed up the thinking of many in his reply:
It might be worthwhile to have a discussion at the upcoming maintainers summit on how to handle contributions from untrusted sources in the future, and how to identify trusted contributors. Quite obviously the paradigm has finally changed from "assume the contribution is well-intended" to "assume the contribution is malicious". I guess that was prone to happen, but it is sad to experience it anyway.For my part, congratulations (in a negative sense): You made me much less inclined to accept minor bug fixes from people I don't know in the future.
UMN is now aware of the problems; the Computer Science department put out a statement acknowledging the concerns expressed by the kernel community. An investigation will be undertaken:
We take this situation extremely seriously. We have immediately suspended this line of research. We will investigate the research method and the process by which this research method was approved, determine appropriate remedial action, and safeguard against future issues, if needed. We will report our findings back to the community as soon as practical.
It is a horrifically messy situation, seemingly brought about by researchers who were not too concerned about the effects of their research on others. While Linux developers hardly need the additional work, the resulting "extra" scrutiny of new patches will be beneficial. It is a bit hard to see that as a silver lining, exactly—more like a sad but necessary outcome that was inevitable, as Roeck put it. This incident also should serve as a warning to researchers, at least hopefully, going forward: our communities are not playthings. Our code is free and open, but not for abuse.
Index entries for this article | |
---|---|
Kernel | Security |
Security | Linux kernel |
Posted Apr 21, 2021 22:35 UTC (Wed)
by blackwood (guest, #44174)
[Link] (6 responses)
But also the kernel community imposing severe restrictions and additional scrutiny on entire companies and groups is also not really a novel research insight. And if you screw up with sufficient malice and intention you get banned.
My take away is that yes reputation can be subverted, but also it's still long term trusted people who contribute most of the bugs. So the fix there is more testing and better fuzzers/tools/checkers to catch bugs. Also reputation is still very easy to loose. There's delays, but I think the process is working.
Posted Apr 21, 2021 23:08 UTC (Wed)
by warrax (subscriber, #103205)
[Link] (5 responses)
Anyone who works in regulated industries is (and must be) vetted to an extent proportional to their ability to exploit the systems they're supposed to be implementing and/or safeguarding. (On top of the regular code review, etc.) One example I have personal experience with is working in payment processing where a criminal record (for financial or financial-adjacent crimes) would be an instant DQ from the job.
Given the amount of use Linux is seeing in all kinds of mission/life-critical industries it may be time to rethink the trust model of patch acceptance for the kernel.
(There are *some* technical things that could lessen the burden on reviewers to catch security-bugs, but that's not relevant at this exact moment in time.)
Posted Apr 22, 2021 11:46 UTC (Thu)
by milesrout (subscriber, #126894)
[Link] (4 responses)
If they have such exacting standards for code quality, they should pay for and develop code that meets it. It's not everyone else's responsibility, least of all the responsibility of the developers of a hobbyist ("not big and professional like gnu") operating system kernel.
Posted Apr 22, 2021 11:52 UTC (Thu)
by rahulsundaram (subscriber, #21946)
[Link]
Linux kernel hasn't been just a hobbyist kernel in decades. Most of the kernel development is funded by large commercial corporations.
Posted Apr 22, 2021 22:13 UTC (Thu)
by roc (subscriber, #30627)
[Link] (2 responses)
Posted Apr 22, 2021 23:10 UTC (Thu)
by NYKevin (subscriber, #129325)
[Link] (1 responses)
There are, broadly speaking, two categories of organizations we might be talking about:
1. Those that contribute to the kernel in some way.
Of course, "we send patches to LKML from time to time" does not entitle an organization to demand change; LKML is not some tech company's private property. But it does at least give them a little bit of credibility when they *ask* for such changes. They can plausibly say "Yes, this will cost more work, but we will help you do it, and we genuinely believe this is in everyone's best interests in the long run." Group #2, by contrast, may not even properly understand LKML's normal development practices, let alone the exact change they want to propose, and so if they complain that the current process is "insecure," it will be ignored. As a GPLv2 project, Linux is of course offered "WITH NO WARRANTY" etc., so ignoring such complaints is not wrong. In fact, those working in highly regulated industries are probably wrong to ignore this admonition. You're supposed to get devices and software approved by your regulatory body, not just download random warranty-free software off of the internet, right?
Ultimately, the people in group #2 only have so many options to choose from:
1. Audit and fuzz test Linux very aggressively to make sure that bugs and regressions don't make it in.
Posted Apr 23, 2021 17:56 UTC (Fri)
by ale2018 (guest, #128727)
[Link]
As a single user, small office, or even a company with a limited tech dept, one can only afford #4. The alternative choice, to pay for a doubtfully warranted OS, is not much better, and in addition has privacy implications which are becoming more and more stifling.
The NO WARRANTY statements in GPLv2 are meant to be a legal stamp to cover programmers' arse from arbitrary claims of damage. It doesn't describe the real intent. Here the mission is an OS that all people can depend on, software for the mankind if you look at it from an evolution viewpoint.
The fact that software development can be exposed to vandalism like wikipedia needs more consideration.
Posted Apr 21, 2021 22:51 UTC (Wed)
by warrax (subscriber, #103205)
[Link] (16 responses)
Code review is not particularly good at finding bugs in the first place (though it has to be said that the kernel patch review process is probably one of the more stringent ones), and a sufficiently motivated actor can always chain together enough innocuous-enough-looking patches to achieve an exploit.
Posted Apr 22, 2021 2:30 UTC (Thu)
by wtarreau (subscriber, #51152)
[Link] (13 responses)
The principle of distributed development is that you need to invest a little bit of trust and that in exchange the persons you trust risk their reputation. That's why commits are rarely accepted from dummy names and addresses.
These people just managed to break the chain of trust and ruin their reputation. In addition their contributions were detected as bad during the review process, rejected and eventually reverted. They proved the process works.
In the end it's probably much easier to inject bad code in some software by being a contractor for a closed software company, where reviews are often less common or where anyone can push code. You know, the typical Friday afternoon's "please merge my code, I want to finish my activity for this week".
Posted Apr 22, 2021 3:39 UTC (Thu)
by rsidd (subscriber, #2582)
[Link]
This is hugely important and is why I am nervous about, eg, xda (for android roms and mods) where nearly everyone is pseudonymous.
In the kernel case, I would guess an institutional address helps more than a random gmail address with an unknown "real name" on it. Normally it would have been a plus if the institution was a well-known university.
Academic people should understand the reputation aspect. If you put out dubious research, you damage your own reputation. Which is what they did. There are pressures in academia, to publish, make headlines, generate funding. Sometimes people succumb to that pressure and end up hurting themselves.
Posted Apr 22, 2021 10:54 UTC (Thu)
by jani (subscriber, #74547)
[Link] (10 responses)
Recently, before the incident at hand, there was a discussion on contributions from people using pseudonyms or aliases. Basically, there's no way of knowing if the names are real or not anyway, so it was suggested that you build reputation for an alias, and it does not matter if it's Reputable Name or Foo12345. It was also suggested that the requirement for using real name in submitting-patches.rst is outdated and does not reflect reality.
Surely we can't start requiring signed patches only from people within the web of trust...
Posted Apr 22, 2021 13:42 UTC (Thu)
by nix (subscriber, #2304)
[Link]
I mean, I've been using the same pseudonym on the net ever since I started, for about 30 years now. I'm certainly better known under that pseudonym than under my real name, and frankly (for the same reason) I probably care more about spoiling the reputation of that pseudonym than I do about my real name. In that situation, the only justification for using my real name instead is as a legal figleaf. The name with the rep is the other one.
Chosen rather than externally-granted identities are the in thing these days. If they have a good reputation, why not treat them as similar to the legal one? (I suspect that if you don't do that you're significantly reducing your chances of getting input from younger people anyway.)
Posted Apr 22, 2021 14:47 UTC (Thu)
by cesarb (subscriber, #6266)
[Link] (7 responses)
I might be misremembering, but wasn't the requirement to use your real name, and the whole Signed-off-by: stuff, added as a response to the SCO case? That is, it's not about reputation, it's about legal issues related to copyright.
Posted Apr 22, 2021 15:32 UTC (Thu)
by jani (subscriber, #74547)
[Link] (6 responses)
Regardless, it's pretty much impossible to enforce, isn't it? All you can say is, "Please tell me that is your real name", or "Please use a name that I subjectively with my cultural background feel could be a genuine name."
Also, https://www.kalzumeus.com/2010/06/17/falsehoods-programme...
Posted Apr 22, 2021 16:18 UTC (Thu)
by mathstuf (subscriber, #69389)
[Link] (4 responses)
Posted Apr 22, 2021 22:19 UTC (Thu)
by pbonzini (subscriber, #60935)
[Link] (1 responses)
Posted Apr 23, 2021 0:31 UTC (Fri)
by mathstuf (subscriber, #69389)
[Link]
Posted Apr 22, 2021 23:25 UTC (Thu)
by pabs (subscriber, #43278)
[Link] (1 responses)
Posted Apr 23, 2021 8:23 UTC (Fri)
by fulke (guest, #140430)
[Link]
Posted Apr 22, 2021 23:27 UTC (Thu)
by rgmoore (✭ supporter ✭, #75)
[Link]
What they really mean isn't quite "give me your real name"; it's closer to "give me a legal identity that can be held accountable for your behavior". That could be an individual identity, or it could be the contributor's employer vouching for them. The key point is that contributions can come with legal responsibility, e.g. if someone tries to contribute code they don't have the copyright for. The project wants to be able to link that code to an individual who can bear legal responsibility if something like that happens. Otherwise, the project as a whole will bear responsibility.
Posted Apr 23, 2021 11:36 UTC (Fri)
by wtarreau (subscriber, #51152)
[Link]
Posted Apr 22, 2021 12:45 UTC (Thu)
by mss (subscriber, #138799)
[Link]
How do you tell them apart from real names?
> In addition their contributions were detected as bad during the review process, rejected and eventually reverted. They proved the process works.
I think their "detection" owns much to the paper they have published where they described what their research is about.
In general, I think the problem described in that paper is *very* real and have worried me a lot for years.
Even if kernel introduces some super-vetting process getting a vulnerability into a popular user space library is almost as good as getting one into kernel.
FreeBSD's PHK has made a good talk about this and much more *7 years ago*: https://www.youtube.com/watch?v=fwcl17Q0bpk
That's why I think that while we might disagree how the research was handled we he have to be careful not to shot the messenger.
Posted Apr 22, 2021 2:33 UTC (Thu)
by fratti (guest, #105722)
[Link] (1 responses)
> OSS projects would be suggested to update the code of conduct, something like “By submitting the patch, I agree to not intend to introduce bugs."
Because just asking nicely not to be backdoored will apparently stop malicious actors. Bonus points that they assume receiving malicious backdoors is opt-out.
> We need automated tools for testing and verifying patches.
What an original idea.
>OSS maintaining is understaffed.
This one is pulled straight from an HN headline or something, and is once again not really making a novel observation, which is especially bad considering they actively contributed to the issue.
And their last recommendation is just an advertisement for their paper.
[1]: https://www-users.cs.umn.edu/~kjlu/papers/clarifications-hc.pdf
Posted Apr 22, 2021 4:01 UTC (Thu)
by wtarreau (subscriber, #51152)
[Link]
Reminds me of the evil bit in RFC3514 :-)
Posted Apr 21, 2021 23:38 UTC (Wed)
by roc (subscriber, #30627)
[Link] (12 responses)
But, while pile-ons are fun, I think the reaction is a bit over the top. In particular I don't yet see any reason to doubt the clarification they issued: https://www-users.cs.umn.edu/~kjlu/papers/clarifications-hc.pdf
Their paper lists the three buggy patches they intentionally submitted. AFAICT the "evidence" that intentionally buggy changes landed in the kernel is actually other commits that were unintentionally buggy. E.g. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/... doesn't seem to be associated with the work in the Oakland paper.
Posted Apr 22, 2021 0:05 UTC (Thu)
by itsmycpu (guest, #139639)
[Link]
Posted Apr 22, 2021 2:24 UTC (Thu)
by fratti (guest, #105722)
[Link] (2 responses)
Intent is hard to quantify, so I wouldn't rely on anyone's claim of intent and let the actions themselves speak. And those currently look like there's a lot of garbage patches coming out of UMN, with one particular example where a patch submitter ignored an automated coverity report pointing out a NULL deref in their patch.
Posted Apr 22, 2021 13:50 UTC (Thu)
by nix (subscriber, #2304)
[Link]
Exactly. Right now they are on the horns of a dilemma: either they are intentionally introducing bad patches (in violation of appendix A in their own paper, though perhaps their *next* paper will have some *different* ethical wossname which its unconsenting subjects can't read yet because the paper isn't published)... or they are letting inexperienced students submit patches which are trivially determined to be buggy, which suggests that they're not doing any sort of preliminary review, which... well, if you're lining up a lot of newbie contributors to any project (as opposed to just being one newbie contributor yourself) it probably falls on you to give the first few submitted patches from any given contributor a once-over before submission, to make sure they're not terrible. This is routine in other large organizations (where "large" often means "more than a dozen people"): every project I've worked on for my current employer has had someone else internally look over the first few patches to make sure I wasn't screwing stuff up and wasting people's time. This was really good -- it reduced the stress quotient for me and probably also for upstream considerably, and the patches were better for it.
This research group inside UMN is apparently not doing any of that: they're using the kernel's limited review bandwidth as free tuition for their students. This is distinctly scummy. And that's the *good* fork of this dilemma, the one that just assumes ignorance or laziness rather than malice.
Posted Apr 24, 2021 13:42 UTC (Sat)
by Yueting (guest, #151831)
[Link]
Posted Apr 22, 2021 2:47 UTC (Thu)
by shemminger (subscriber, #5739)
[Link]
Posted Apr 22, 2021 7:49 UTC (Thu)
by dxin (guest, #136611)
[Link] (3 responses)
This is a calculated and targeted revenge.
Posted Apr 22, 2021 12:56 UTC (Thu)
by clump (subscriber, #27801)
[Link]
Posted Apr 23, 2021 6:59 UTC (Fri)
by elel (guest, #100484)
[Link] (1 responses)
Posted Apr 23, 2021 20:23 UTC (Fri)
by roc (subscriber, #30627)
[Link]
I don't think anyone really wants to treat everyone in a university as having collective responsibility. That way lies an erosion of student freedom that could, ironically, have impeded the creation of Linux in the first place.
Posted Apr 22, 2021 15:40 UTC (Thu)
by david.a.wheeler (subscriber, #72896)
[Link] (1 responses)
Posted Apr 22, 2021 22:17 UTC (Thu)
by roc (subscriber, #30627)
[Link]
Posted Apr 23, 2021 13:28 UTC (Fri)
by Yueting (guest, #151831)
[Link]
[2]
[3]
Posted Apr 21, 2021 23:45 UTC (Wed)
by jiiksteri (subscriber, #75247)
[Link]
But then again if Aditya Pakki claims to have written a static analyzer for C, it should be safe to assume they know how variables work at least.
Posted Apr 21, 2021 23:47 UTC (Wed)
by sub2LWN (subscriber, #134200)
[Link] (1 responses)
Or a "Hey Greg, can we experiment on you?" "No." "OK."
(No Gopher project maintainers were badgered in the creation of this comment.)
Posted Apr 22, 2021 5:43 UTC (Thu)
by madhatter (subscriber, #4665)
[Link]
I see what you did there <grin>.
Posted Apr 21, 2021 23:59 UTC (Wed)
by ndesaulniers (subscriber, #110768)
[Link]
Posted Apr 22, 2021 0:42 UTC (Thu)
by ccchips (subscriber, #3222)
[Link]
I applaud UNM for suspending this research project; I'll be interested in how (or whether) there will be any consequences for the perpetrators.
Posted Apr 22, 2021 0:49 UTC (Thu)
by flussence (guest, #85566)
[Link] (8 responses)
In either case it means their IRB is rotten too. Making an example of the entire organisation seems fair to me.
Posted Apr 22, 2021 4:39 UTC (Thu)
by anonymous_commenter (guest, #117657)
[Link] (2 responses)
I agree, any human experiment must goes through an IRB first and any competent IRB would have said no after virtually grilling the responsible peoples' posterior (from the paper writer to whoever had knowledge and vetted it up the chain) through such a machine and handing them back :)
Al
Posted Apr 22, 2021 14:18 UTC (Thu)
by tamiko (subscriber, #115350)
[Link]
As someone who has to deal with IRB approval in the past:
You need IRB approval for literally everything that involves human beings in some form (which is the case here). For example, I had to write a 30 page document for an IRB approval to do a 2 page anonymous questionaire at the end of a software course.
Also, I would be highly surprised if the Minnesota IRB did not require "informed consent", i.e., a statement summarizing impact and consequences for potential participants and that has to be signed by participants before research can be conducted.
Institutional IRBs had been created specifically to ensure that "informed consent" is given in some form before any research is conducted...
Posted Apr 22, 2021 15:31 UTC (Thu)
by david.a.wheeler (subscriber, #72896)
[Link]
In this case, the researchers didn't send their proposal to their IRB before doing the experiment - which is *already* a huge problem. IRBs are supposed to protect humans from experiments, how can that possibly work if the experiments happen first??? Their IRB then approved doing these experiments on humans without their consent, which is beyond the pale. GregKH specifically called the researchers out on this: "Our community does not appreciate being experimented on". Saying the word "process" does not suddenly change the rules or eliminate the humans; humans were fundamentally involved in the Linux kernel review process. If using the word "process" eliminated IRBs, then every medical experiment would suddenly investigate "metabolic processes" instead :-). I had to go through detailed IRBs just for surveys and interviews; this failure of oversight is a black mark on the whole university.
I think these researchers clearly acted unethically, and since they didn't ask for prior consent, they may have attacked other systems no matter what they say. I used the following shell command to search for potentially-concerning commits in git in one of my projects, other projects may want to do the same:
git shortlog --summary --numbered --email | grep -E '(wu000273|kjlu|@umn.edu)'
*All* OSS projects should review proposed changes for potential security issues, and harden their software & supply chain against attacks. I also welcome research to make that better!
But we don’t need researchers who perform attacks on production systems without authorization, or researchers who perform attacks on developers without their consent. Research is great, but you need to get permission from those you're attacking first.
Posted Apr 22, 2021 10:45 UTC (Thu)
by bpearlmutter (subscriber, #14693)
[Link] (3 responses)
Let me give an example. A PhD student is implementing a new text editor with some interesting features. They decide since usability testing involves human beings, it is human subjects research and subject to IRB approval, and the IRB agrees. So, what happens next?
- The grad student isn't allowed to use the editor (cannot use self as experimental subject).
- Key bindings must pass relevant health-and-safety regulations.
- Their officemate has the same PI, also cannot be use it (has interest in result).
- Anyone trying it has to fill out five pages of paperwork (consent form) that lists risks like injuring wrist from repetitive stress injuries, paging through material might cause screen to flash light-and-dark which could trigger photosensitive epilepsy.
- Data retention policy must be on file, including plans for security, access, withdrawl of consent, external data control officer, audits for compliance.
- Statistical analysis must be pre-specified.
- Study must be pre-registered with appropriate bodies.
And a computer game? A wearable computer? Just imagine!
Posted Apr 22, 2021 15:52 UTC (Thu)
by david.a.wheeler (subscriber, #72896)
[Link]
Sure, a particular IRB can misapply the rules governing it, such as the ridiculous examples you list. But the solution is to work with the IRB (or its oversight) to fix them. You need to have people on the IRB who understand the domain, but nothing prevents that either.
I imagine IRBs could be improved, or replaced with something better. But the issue here is that we have researchers that experimented on humans without their consent. You don't need to be a rocket scientist to realize that such experiments are generally *not* acceptable.
Posted Apr 22, 2021 23:26 UTC (Thu)
by anonymous_commenter (guest, #117657)
[Link]
Here, I see two faults:
1-: not seeking IRB approval first.
2-: either (yes, I can play devil's advocate), the IRB rubberstamped the study after the fact or else, the paper author lied about seeking IRB approval. Please take my concern with a grain of salt and no more than that; I'm just fresh out of an exam which took me 5 hours 45 minutes and I have to deliver 2 terms paperwork for next Monday 11:59pm, one of which isn't started yet. Otherwise, I would investigate.
Al
Posted Apr 25, 2021 2:03 UTC (Sun)
by anonymous_commenter (guest, #117657)
[Link]
Now that I have more time (paperwork shipped), please (Jon Corbet if you moderate comments and bpearlmutter) let me address each individual points: The grad student isn't allowed to use the editor (cannot use self as experimental subject).
also Their officemate has the same PI, also cannot be use it (has interest in result). Bias in the result. Yes, I agree that one these two winners of the 2005 Nobel prize (www.nobelprize.org/prizes/medicine/2005/summary/) infected himself with H. Pilori to validate his result but for one exception, there are a metric ton of examples not to follow. It's like N95 and N99 masks now despite mass vaccination against COVID-19. some, not vaccinated peoples refuse to wear masks. Key bindings must pass relevant health-and-safety regulations. Health and security at work, not only universities are subjects to these law, so does every other workplaces in most countries. The laws (including workplace health and security) are implemented after the facts because someone suffered. Anyone trying it has to fill out five pages of paperwork (consent form) that lists risks like injuring wrist from repetitive stress injuries, paging through material might cause screen to flash light-and-dark which could trigger photosensitive epilepsy. Ever had a vaccine? read the package insert. I agree that's lawyeresque writing about the common (sore arm not because of the vaccine but rather the method of application...read syringe administered by a human) and not so common (Guillain Barré syndrome and death which range from 1 in a few million to one in a billion). Same laws or lawyeresque CYA. Data retention policy must be on file, including plans for security, access, withdrawl of consent, external data control officer, audits for compliance. How many years are you required to keep your taxes paperwork on hand before being allowed to destroy them? Here (canucksland), it's 7 years and I can ask for the last 10 years of my taxes to be recalculated. Now human research, more so because it involve human, not just financial data. Statistical analysis must be pre-specified.
Study must be pre-registered with appropriate bodies. Yes to both, it's part the Geneva convention after the nazi experiments done by Dr Mengeles. Remember, the law upon which IRB are subjected to are after the facts and among the factual evidence base are the nazi experiments. There's also the various charter of human rights.
Posted Apr 22, 2021 13:53 UTC (Thu)
by nix (subscriber, #2304)
[Link]
Whaaat?! OK that should be a huge strike against these people. Good grief!
Posted Apr 22, 2021 1:44 UTC (Thu)
by shemminger (subscriber, #5739)
[Link] (4 responses)
Posted Apr 22, 2021 15:20 UTC (Thu)
by Funcan (subscriber, #44209)
[Link]
Posted Apr 22, 2021 17:54 UTC (Thu)
by deater (subscriber, #11746)
[Link] (2 responses)
Posted Apr 22, 2021 21:16 UTC (Thu)
by hummassa (guest, #307)
[Link]
Posted Apr 26, 2021 18:27 UTC (Mon)
by GoodMirek (guest, #101902)
[Link]
Posted Apr 22, 2021 2:38 UTC (Thu)
by wtarreau (subscriber, #51152)
[Link] (2 responses)
For having had a look at quite a number of them, most of them look like total rubbish stemming from misunderstanding of C basics (like setting a local variable to NULL before returning).
Posted Apr 22, 2021 6:41 UTC (Thu)
by tnoo (subscriber, #20427)
[Link]
Posted Apr 22, 2021 13:07 UTC (Thu)
by clump (subscriber, #27801)
[Link]
The university could pay a trusted organization to review the code and revert the damage. Perhaps another PhD student could later examine the whole affair and contribute something useful to humanity.
Posted Apr 22, 2021 3:16 UTC (Thu)
by gdt (subscriber, #6284)
[Link] (1 responses)
Almost all computer science concerned with operating systems has some focus on Linux. The LKML restriction on contributions from UMN means that graduate students interested in operating systems should select another institution. This outcome was predictable from the beginning of this experiment, and I'm amazed the university let it proceed. Certainly what wasn't ethical was the university simultaneously accepting graduate students into other projects in operating systems.
Posted Apr 22, 2021 3:43 UTC (Thu)
by fratti (guest, #105722)
[Link]
Posted Apr 22, 2021 5:56 UTC (Thu)
by emorrp1 (guest, #99512)
[Link]
Posted Apr 22, 2021 6:30 UTC (Thu)
by garthy (subscriber, #7195)
[Link]
Posted Apr 22, 2021 6:41 UTC (Thu)
by etbe (subscriber, #17516)
[Link] (4 responses)
If you want to hire people who have black-hat experience then go to defcon or similar.
Posted Apr 22, 2021 9:38 UTC (Thu)
by roc (subscriber, #30627)
[Link] (2 responses)
If so, I can only pray that no-one from CMU does anything to anger the kernel community so my degree isn't tainted despite the fact I graduated 20 years ago.
Posted Apr 24, 2021 0:12 UTC (Sat)
by etbe (subscriber, #17516)
[Link] (1 responses)
Posted Apr 27, 2021 3:10 UTC (Tue)
by roc (subscriber, #30627)
[Link]
Posted Apr 22, 2021 10:07 UTC (Thu)
by daniel (guest, #3181)
[Link]
https://lkml.org/lkml/2021/4/21/454
Posted Apr 22, 2021 7:21 UTC (Thu)
by meyert (subscriber, #32097)
[Link] (10 responses)
You have choises in life, and you could choose between
To add insult to injury those three poeple, Aditya Pakki, Qiushi Wu and Kangjie Lu, and were probably paid by an university, whereby many linux contributors do their work on their free time, which makes this incidient even sadder.
Remember those names and the harm they did to our community.
Posted Apr 22, 2021 10:36 UTC (Thu)
by roc (subscriber, #30627)
[Link] (8 responses)
I think they obviously made a big mistake. I think they are also the victims of an outpouring of self-righteous rage that is over the top. I felt that rage myself but it's not a healthy feeling.
Posted Apr 22, 2021 11:03 UTC (Thu)
by meyert (subscriber, #32097)
[Link]
Posted Apr 22, 2021 12:51 UTC (Thu)
by hummassa (guest, #307)
[Link]
Posted Apr 22, 2021 13:23 UTC (Thu)
by clump (subscriber, #27801)
[Link]
I agree that vitriol doesn't help. UMN should pay a trusted organization to help fix the damage to the kernel.
Posted Apr 22, 2021 14:55 UTC (Thu)
by MatejLach (guest, #84942)
[Link] (3 responses)
> Pakki said that the patches were based on the output of a new static analyzer that he wrote, but its "sensitivity is obviously not great".
He lied about what he was doing with the patches, how is this not malicious? If the NSA has done this we would obviously treat it as such.
Posted Apr 22, 2021 15:26 UTC (Thu)
by bfields (subscriber, #19510)
[Link] (2 responses)
(The intentionally-buggy patches were submitted as part of a different project by different people in the same research group.)
Posted Apr 22, 2021 16:51 UTC (Thu)
by MatejLach (guest, #84942)
[Link] (1 responses)
If they don't understand the changes made by the analyzer, maybe don't submit the patch? If they do and submit anyway, that's malice.
In any case, I'd rather we don't get any patches from this research group, regardless of project as the good/bad patch ratio seems to skew heavily towards the bad side of things.
The unfortunate side effect of not having potentially good patches from this uni versus having to spend extra maintainer time being paranoid about the bad ones, seems to be overall far less unfortunate to me than having intentional bugs introduced into the kernel.
Posted Apr 22, 2021 20:03 UTC (Thu)
by bfields (subscriber, #19510)
[Link]
My only claim is that we don't currently have evidence to accuse them of these additional patches being intentionally malicious.
Responses to Greg's mass revert also aren't turning up much of interest:
https://lore.kernel.org/lkml/20210421130105.1226686-1-gre...
A few are buggy but I can't tell if they're unusually so over all.
Posted Apr 22, 2021 15:59 UTC (Thu)
by david.a.wheeler (subscriber, #72896)
[Link]
The bigger issue, to me, is that they experimented on people without their consent. They also had very poor controls to be *confident* that their malicious changes would never end up in running systems, potentially putting end-users at risk (the Linux kernel is used in many very important systems). We can be thankful that the developers were proactive and detected attacks, but researchers are required to act ethically in the first place.
Posted Apr 22, 2021 13:13 UTC (Thu)
by bfields (subscriber, #19510)
[Link]
If we're going to pick on someone, it should be the professor. But there's still a lot unknown here. It may have been worth kicking up a fuss to get attention from the university, but I don't think we should be pulling out the torches and pitchforks quite yet.
Posted Apr 22, 2021 8:57 UTC (Thu)
by shalem (subscriber, #4062)
[Link] (9 responses)
Posted Apr 22, 2021 9:13 UTC (Thu)
by dvrabel (subscriber, #9500)
[Link] (3 responses)
It returns without releasing a mutex. See https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/...
Posted Apr 22, 2021 9:24 UTC (Thu)
by shalem (subscriber, #4062)
[Link] (2 responses)
That does look like an innocent mistake though. The error condition under which the return with the lock held would happen cannot be controlled by an attacker (I believe it is an I2C read which fails) and even if it could at worse it would be a DOS attach AFAICT. Unless I'm again missing something ?
So buggy yes, malicious no. But now we still get to wonder if the buggy-ness was intentional or just an honest mistake <sigh>.
Posted Apr 22, 2021 10:32 UTC (Thu)
by jani (subscriber, #74547)
[Link]
"Never attribute to malice that which is adequately explained by stupidity."
"The Underhanded C Contest is a programming contest to turn out code that is malicious, but passes a rigorous inspection, and looks like an honest mistake even if discovered."
We tend to err on the side of honest mistakes, and it can be abused.
Posted Apr 22, 2021 22:28 UTC (Thu)
by pbonzini (subscriber, #60935)
[Link]
Using a language without RAII is inexcusable.
Posted Apr 22, 2021 9:22 UTC (Thu)
by danielthompson (subscriber, #97243)
[Link]
There is certainly a bug in that it introduces a new return path and that new return path does not release a mutex.
Whether this is malicious is more or less impossible to say. However it does seem reasonable to view with suspicion a buggy patch from a researcher studying ways to covertly introduce and mature "immature vulnerabilities" by hiding them in innocent looking patches.
Posted Apr 22, 2021 9:25 UTC (Thu)
by bronson (subscriber, #4806)
[Link] (2 responses)
Posted Apr 22, 2021 10:22 UTC (Thu)
by excors (subscriber, #95769)
[Link] (1 responses)
The second chunk looks like it's addressing a real problem that's not impossible to hit - lm80_read_value can return negative error codes and that wasn't being handled. Maybe that's only possible if there's a bizarre hardware failure (I2C/SMBus devices shouldn't just stop responding at arbitrary times) but it seems good practice for the kernel to handle those situations properly. (But the patch fixes the problem wrongly, because it returns without unlocking the mutex.)
Posted Apr 22, 2021 14:06 UTC (Thu)
by bronson (subscriber, #4806)
[Link]
Posted Apr 23, 2021 8:35 UTC (Fri)
by andy_shev (subscriber, #75870)
[Link]
Posted Apr 22, 2021 13:48 UTC (Thu)
by esemwy (guest, #83963)
[Link]
Posted Apr 22, 2021 14:10 UTC (Thu)
by edeloget (subscriber, #88392)
[Link] (1 responses)
These researchers really need to understand that lives depend on the quality of the kernel. If you hit a kernel bug while trying to phone 911 on your android phone, it's not a good thing.
And even on a lesser scale: businesses depends on linux. Most (if not all) DSL routers around the world are based upon linux. Most cloud solutions too.
Introducing even hard-to-hit bugs in the kernel in order to publish a paper is really irresponsible.
I feel bad for the PhD students who worked on this. They're not even working and their professionnal ethic is already tarnished thanks to the actions of irresponsible researchers. Not a good way to start a career.
Posted Apr 22, 2021 22:38 UTC (Thu)
by roc (subscriber, #30627)
[Link]
Use a system for tracking bug reports (especially regressions) that is more reliable than "email LKML and hope it gets noticed and not forgotten".
Expect every submitted code change to come with an automated test (that is run before any release), or an explanation as to why such a test is infeasible. Create test frameworks to systematically reduce occurrences of the latter case.
Enthusiastically adopt Rust where possible because it eliminates entire classes of pernicious bugs.
Posted Apr 22, 2021 20:38 UTC (Thu)
by ScienceMan (subscriber, #122508)
[Link] (5 responses)
Posted Apr 22, 2021 22:26 UTC (Thu)
by roc (subscriber, #30627)
[Link] (4 responses)
They have apologised, and have said there aren't any other similar attempts.
Posted Apr 24, 2021 7:49 UTC (Sat)
by gregkh (subscriber, #8)
[Link] (2 responses)
Where did you see an apology to me and everyone else?
Posted Apr 25, 2021 12:50 UTC (Sun)
by mss (subscriber, #138799)
[Link]
They insist that their patches weren't intentionally malicious (besides these three patches described in their paper), including the current "a new static checker" round.
Posted Apr 27, 2021 3:18 UTC (Tue)
by roc (subscriber, #30627)
[Link]
> I apologize for the misleading abstract which did not show the details and caused many confusions and misunderstandings.
> Throughout the study, we honestly did not think this is human research, so we did not apply for an IRB approval in the beginning. We apologize for the raised concerns. This is an important lesson we learned---Do not trust ourselves on determining human research; always refer to IRB whenever a study might be involving any human subjects in any form.
> We would like to sincerely apologize to the maintainers involved in the corresponding patch review process; this work indeed wasted their precious time.
> * The work taints the relationship between academia and industry
Posted Apr 27, 2021 3:17 UTC (Tue)
by roc (subscriber, #30627)
[Link]
> I apologize for the misleading abstract which did not show the details and caused many confusions and misunderstandings.
> Throughout the study, we honestly did not think this is human research, so we did not apply for an IRB
> We would like to sincerely apologize to the maintainers involved in the corresponding
> * The work taints the relationship between academia and industry
Posted Apr 23, 2021 8:25 UTC (Fri)
by andy_shev (subscriber, #75870)
[Link] (3 responses)
Posted Apr 23, 2021 11:31 UTC (Fri)
by gmgod (guest, #143864)
[Link] (2 responses)
Though I can't possibly condone the way things were done in this instance, identifying and quantifying how buggy commits are passing through review seems important when said review fails so evidently. I want kernel developers to have tools and workflow that efficiently/easily identify bugs (whether intentional or not) and spend less time on something so boring. This is not the case.
Kernel devs should try to work *with* researchers instead of banning them (again, I'm aware those specific researchers screwed up big time in this case). All the papers I can read on the subject are really frightening in terms of bug introduced and time-to-fix.
Posted Apr 23, 2021 11:44 UTC (Fri)
by wtarreau (subscriber, #51152)
[Link]
There are tons of tools, but the very concept of "review" exists because at some point you need a human. And it turns out that a lot of tools and imposed processes can drain a lot of human time as well. In the end it's important to find a sweet balance of tools and processes that makes everyone work at their best efficiency.
Avoiding errors is pointless because they will always exist, and there are diminishing returns on the efforts you add. Instead what matters is that they're quickly spotted and fixed. Here the tools and automated tests in place are helping a lot.
Still more participants would be nice. If you don't review, why wouldn't you start ? Just spot a patch that you can read, from time to time, return some suggestions or respond with a "reviewed-by" so that nobody else spends time on it and you'll help by saving someone's valuable time. You don't necessarily need to be skilled on the subject if you can read code and be curious. It doesn't matter if you make a mistake once in a while (though not too often): if your work eliminates 90% of the someone else's work and requires to be fixed 10% of the time, it's already 81% saved!
Posted Apr 26, 2021 0:45 UTC (Mon)
by rgmoore (✭ supporter ✭, #75)
[Link]
Kernel developers have spent a lot of time working with researchers; there are a bunch of things in the kernel that were put there as a result of academic research. That includes security testing, e.g. the Coverity scanner. But working together is a two-way street. I haven't seen anything in the discussion of this issue that shows these researchers made any attempt to work with the kernel developers, and that really has to happen first. It seems extremely unlikely to happen in this case, considering how seriously the relationship has already been damaged.
Posted Apr 23, 2021 14:56 UTC (Fri)
by joey (guest, #328)
[Link]
So either the paper is not describing what they really did, or there may be other poisoned patches to worry about.
Posted Apr 26, 2021 5:56 UTC (Mon)
by carORcdr (guest, #141301)
[Link]
Posted May 1, 2021 23:48 UTC (Sat)
by richardw (guest, #23638)
[Link]
Posted May 3, 2021 9:30 UTC (Mon)
by nspattak (guest, #52234)
[Link]
Posted May 4, 2021 13:38 UTC (Tue)
by littoral (guest, #140523)
[Link]
This is overdue. It should have been the paradigm as soon as the contributor community became too large for all its members to be known personally to the project gatekeepers - if not before even that point.
The fact that it has not been the paradigm means that the kernel is already stuffed with malicious code from NSA and other espionage agencies of various countries.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Linux development shouldn't become less open
Linux development shouldn't become less open
Linux development shouldn't become less open
Linux development shouldn't become less open
2. Those that merely use it.
2. Use something that is not Linux.
3. Contribute to Linux and help make things better. The easiest way to start is probably to take the tests from option #1 and try to upstream them.
4. Accept that no software is perfect, Linux will inevitably have security bugs, and you're just going to have to deal with them when they are discovered.
Linux development shouldn't become less open
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Inventing a plausible name doesn't seem to be a very hard thing to do.
And even if you personally do a detailed due diligence on each new contributor there are many maintainers to choose from, it's enough to find one too overworked to do that.
As far as I know, these three earlier patches, that intentionally introduced bugs, that were submitted as a part of doing research for that paper weren't recognized as such at that time.
Besides that, there are also volunteer-run distributions, almost every one of them severely understaffed.
While he talked about an industry-wide subversion activities program by a state actor, there is also a part about subverting OSS (it starts around 23:30),
which certainly does not need nation-state resources to execute.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
And to volunteer a list of all bogus patches, all that are a mix of bogus and real patches, and clarifications why they think that any real ones are in fact real, if any.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
The issue: experiments on humans without their consent
The issue: experiments on humans without their consent
Intentionally buggy commits for fame—and papers
Does anybody have the UMN lab's exact and complete actions list? It will be really helpful for cleaning up issues and clarify the situation.
It looks to me that the questions in the below twitters are not only validate, but also very urgent.
https://twitter.com/MortenLinderud/status/138484439783832...
Some random emails (not UMN emails) may also be used for the "experiment".
(https://lore.kernel.org/lkml/YIEqt8iAPVq8sG+t@sol.localdo...)
If so, other patches need to be re-reviewed besides those from the UMN emails.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Experimentation on humans without their consent is unacceptable
Intentionally buggy commits for fame—and papers
IRB problems
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
LF should sue
LF should sue
LF should sue
LF should sue
LF should sue
Intentionally buggy commits for fame—and papers
A good number of them add error checks at places where it's unclear whether these errors are possible or not. I'd say that at least either the test or a comment explaining why the error cannot happen are deserved.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
What they could at least do now to fix the situation is to assign some skilled developers to carefully review all these 190 patches and sort them out figuring which ones *really* fix something, which ones are useless or bogus, and which ones are uncertain.
This is an outstanding suggestion. I hope the University of Minnesota is reading. What was the faculty thinking?
What was the faculty thinking?
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
hiring choices
hiring choices
hiring choices
hiring choices
hiring choices
Intentionally buggy commits for fame—and papers
a.) contributing something constructive and positive that will benefit everybody or
b.) deceided to activley destroy and trust and work done by other
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
It's more than actively destroy trust
Intentionally buggy commits for fame—and papers
I don't believe the commit which Guenter Roeck linked to in this email actually is malicious / buggy.
Intentionally buggy commits for fame—and papers
Guenter wrote the following about this: "The author of commit c9c63915519b is Kangjie Lu, not some student, and I have to assume that it intentionally introduced a problem. That was the whole point of the exercise, wasn't it ?"
I believe this was more of a hypothetical question / example of how we (the kernel community) now need to question every commit from the UMN, then an example of an actual malicious / buggy commit. At least I've gone over the commit twice and I cannot find anything wrong with it.
With that said, the entire situation still is a big mess and UMN's behavior here is inexcusable.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
- https://en.wikipedia.org/wiki/Hanlon%27s_razor
- https://en.wikipedia.org/wiki/Underhanded_C_Contest
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
> is malicious / buggy.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for CASH—and COUNTRY
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
https://lore.kernel.org/lkml/CAK8KejpUVLxmqp026JY7x5GzHU2...
Intentionally buggy commits for fame—and papers
> We are very sorry to hear this concern.
Intentionally buggy commits for fame—and papers
approval in the beginning. We apologize for the raised concerns. This is an important lesson we
learned---Do not trust ourselves on determining human research; always refer to IRB whenever a study
might be involving any human subjects in any form.
patch review process; this work indeed wasted their precious time.
> We are very sorry to hear this concern.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Kernel devs should try to work *with* researchers instead of banning them (again, I'm aware those specific researchers screwed up big time in this case).
Something I have not seen mentioned anywhere from the paper is this:
Intentionally buggy commits for fame—and papers
We submit three patches using a random Gmail account to the Linux community
Intentionally buggy commits for fame—and papers
[1] https://mndaily.com/about-us/
The Minnesota Daily is a student-led media organization serving the University of Minnesota campus and surrounding community.
[2] Comp. sci. activist to talk computing freedom at U, October 20, 2008
University wastes millions on software for students, Jason Ketola, September 26, 2005
U-spawned technology start-up flourishes, Nathan Hall, October 28, 2003
Net: Well, friends,…, October 3, 2000
Microsoft’s global language: Beta version 1.0, September 19, 2000
Microsoft inhibits software competition, May 4, 2000
Microsoft findings offer hope to industry, November 8, 1999
[3] https://mndaily.com/about-us/
Mission
1. Provide independent student journalism and comprehensive coverage of news, media and events that serve the public interest and inform the University of Minnesota community.
[4] References omitted.
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
Intentionally buggy commits for fame—and papers
We'll probably never identify all of it.