Verschlüsselung & Datensicherheit

Bugs mit Vorsatz: Linux Foundation legt Analyse der Kernel-Patches vor

Patches für den Linux-Kernel von der University of Minnesota enthielten absichtlich Fehler - Nun arbeitet eine gründliche Analyse die Vorfälle auf

Das Technical Advisory Board der Linux Foundation, das als eine Art Beratergremium für Fragen rund um die Entwicklung des Linux-Kernels fungiert, hat seinen Bericht zum "Hypocrite Commits"-Papier der Universät von Minnesota (University of Minnesota, UMN) vorgelegt. Darin fasst es die Ergebnisse des Reviews der inkriminierten Commits zusammen und gibt der UMN Tipps, wie sie das Vertrauen der Kernel-Entwickler wie Greg Kroah-Hartmann zurückgewinnen. Kroah-Hartmann selbst war maßgeblich an der Code-Analyse beteiligt.

Zwischen der Entwicklergemeinde des Linux-Kernels und der University of Minnesota hängt der Haussegen seit Wochen bekanntlich mächtig schief. Eine kleine Forschungsgruppe der UMN hatte im Rahmen eines Experiments, dessen Zusammenfassung mittlerweile als "Hypocrite Commits Paper" firmiert, bewusst falsche Patches an die Entwickler geschickt – ohne deren Zustimmung für das Experiment einzuholen. Sarah Jamie Lewis vom Open-Privacy-Projekt hatte die Aufmerksamkeit der Community Ende 2020 auf diesen Umstand gelenkt.

Offener Konflikt seit April

Als Anfang April 2021 dann wieder Patches minderer Qualität von UMN-Mitarbeitern auf der Linux Kernel-Mailingliste (LKML) landeten, platzte Kernel-Urgestein Kroah-Hartmann der Kragen: Nicht nur gab er bekannt, dass bis auf Weiteres sämtliche Patches der UMN kommentarlos ignoriert würden; er kündigte auch an, sämtliche Patches von UMN-Mitarbeitern seit Bekanntwerden des "Hypocrite Commits Paper" aus dem Kernel zu entfernen ("revert").

Da half es auch nicht, dass die Autoren der neuen Patches beteuerten, mit dem Experiment von 2020 nichts zu tun zu haben. Das Papier als Ergebnis des Experiments selbst zog die UMN zwischenzeitlich zurück. Bereits zuvor hatte man zudem Besserung gelobt und versprochen, Forschungsprojekte vor der Zulassung künftig genauer zu überprüfen. Die Kernel-Community blieb jedoch unnachgiebig.

Linux-Foundation schaltet sich ein

Mittlerweile gibt es im Streit zwischen der Kernel-Community und der UMN so etwas wie einen vorläufigen Schlusspunkt. Bereits am 22. April hatte Kees Cook als Vertreter des Technical Advisory Boards ("TAB") der Linux Foundation angekündigt, dass das TAB eine eigene Untersuchung der Angelegenheit starten wird. Jenem Gremium gehört auch Kroah-Hartmann an. Ohnehin bemüht die Linux Foundation sich in dem Konflikt um eine aktive Rolle: Am 23. April schickte Mike Dolan als Vertreter für Linux-Foundation-Projekte – zu denen der Kernel gehört – einen offenen Brief an die University of Minnesota, der diverse Forderungen enthält. Allen voran freilich die Forderung, die Kernel-Community nicht wieder ohne deren Einverständnis als Versuchskaninchen zu missbrauchen.

Im Mittelpunkt der parallel dazu anberaumten TAB-Untersuchung stehen einerseits jene Commits, die Kroah-Hartmann bereits aus dem Linux-Kernel entfernt hatte. Patch pro Patch wollte das TAB Kroah-Hartmann dabei unterstützen, zwischen echten Bugfixes, schlechten Patches und jenen Patches zu unterscheiden, die sinistre Absichten offenbarten.

Andererseits wollte das TAB auch die Vorgehensweise der UMN nochmals untersuchen und für die UMN sowie die gesamte Community Empfehlungen erstellen, wie sich in dieser Situation das Vertrauen der Kernel-Entwickler zurückerlangen lässt.

Keine bösen Überraschungen beim Code Review

Den Bericht zum Review hat das TAB mittlerweile veröffentlicht. Aus Sicht von Systemadministratoren lautet die gute Nachricht des TAB-Reports: Die große Mehrheit der Patches von UMN-Studierenden oder Mitarbeitern hat sich im Nachhinein als unbedenklich entpuppt. Von den 435 fraglichen Patches sind 349 also korrekt und finden ihren Weg in den Kernel zurück. 39 Patches sind falsch und bedürfen der Korrektur – die Entwickler stufen sie aber nicht als arglistige Täuschung ein und erkennen auch keine Sicherheitsrisiken.

Neun Patches stammen aus der Zeit, bevor es das UMN-Projekt überhaupt gab, so dass die Entwickler sie ebenfalls als unbedenklich einstufen. Insgesamt 37 Patches sind zwischenzeitlich hinfällig, weil sie durch spätere Commits erneut verändert oder ganz aus dem Kernel geflogen sind. Ein einzelner Commit ist auf Bitten des Autors wieder aus dem Kernel entfernt worden.

Hilfe von erfahrenen Entwicklern

Weniger angenehm für die UMN sind die Schlussfolgerungen aus dem TAB-Report. Die Linux Foundation weist einerseits nochmals explizit darauf hin, dass das Vertrauensverhältnis zwischen den Entwicklern und der UMN gestört ist und bis auf Weiteres auch bleiben wird. Andererseits zeichnet das TAB einen potenziellen Ausweg und zieht dabei Parallelen zu ähnlichen Fällen in der Vergangenheit. Zwar hat es ein solches Experiment wie jenes der UMN noch nicht gegeben, durchaus bekannt ist der Kernel-Community aber der Effekt, dass kleine Firmen massenhaft Patches minderer Qualität an die LKML senden, weil ihnen die Erfahrung und das nötige Wissen fehlt.

Gute Erfahrungen, so Cook, habe man mit internen Review-Systemen gemacht: Dabei sucht eine Organisation oder Firma einen erfahrenen Kernel-Entwickler in den eigenen Reihen oder engagiert einen solchen – und etabliert mit der Person ein Review-System, bevor Patches ihren Weg überhaupt in Richtung LKML finden. Die Reputation des Entwicklers färbt dann einerseits auf die jeweilige Organisation ab. Andererseits erhalte diese durch die ständigen Reviews einen besseren Eindruck, was gute Kernel-Entwicklung ausmacht.

Zusätzlich wird die Linux Foundation mit verschiedenen Einrichtungen und Personen aus dem universitären Umfeld zusammenarbeiten, um eine Richtschnur für die wissenschaftliche Arbeit mit der Kernel-Community zu entwickeln. Die soll verhindern, dass sich solche Ereignisse in Zukunft wiederholen.

Quelle: heise Online Redaktion

Zurück

Diesen Beitrag teilen
Weitere Meldungen zum Thema
oben