Wie die Open-Source-Community an Ostern die (IT-)Welt rettete

Superhero OSS protecting computers on Easter again

Huch, waren das spannende Ostern, aus IT-Sicht! Es wurde die potenziell schlimmste IT-Sicherheitskatastrophe durch puren Zufall noch rechtzeitig abgewendet. Ansonsten hätte ein Angreifer Millionen von Servern weltweit im Nu unter seine Kontrolle bringen können.

TL;DR (oder: Das Wichtigste in Kürze)

5 von 6 der übers Internet erreichbaren Server laufen unter einem Unix, davon die meisten unter Linux. Diese Server wollen auch irgendwie administriert werden, viele davon auch übers Internet. Die Standardmethode für die Fernwartung von Unix-Rechnern ist ssh, „Secure SHell“, eine sichere Methode, um Statusinformationen abzurufen, Konfigurationen zu ändern, Daten zu transferieren oder Befehle auszuführen. ssh hat sich diese Führungsrolle über die letzten bald 30 Jahre erarbeitet und gilt als sehr vertrauenswürdig; u.a. durch seine Transparenz und Verfügbarkeit als Open Source.

Genau diese hohe Verbreitung und das hohe Vertrauen sollte jetzt genutzt werden, um eine Sicherheitslücke in Millionen von Servern einzuschleusen, mit der die unbekannten Hintermänner die vollständige Kontrolle über diese und noch mehr Server hätten übernehmen können. Darauf hatten sich die Unbekannten über mindestens 3 Jahre gezielt vorbereitet und hatten sich schon für weitere Pläne vorbereitet.

Das Resultat hätte für unsere persönlichen Daten, unsere Wirtschaft und deren Abläufe, sowie für die davon abhängigen Prozesse inklusive kritische Infrastrukturen desaströs enden können. Zum Glück hat ein Entwickler eines anderen Open-Source-Projektes, Andres Freund, bei einem Test eine kleine Veränderung wahrgenommen und wollte ihre Ursache finden. Dafür musste er sich durch ein Dickicht von Verschleierungsversuchen der Unbekannten durchwühlen.

Er hat seine Erkenntnisse dann am Karfreitag mit Online-Mitstreitern geteilt und gemeinsam sind sie dann der Sache auf den Grund gegangen. Und haben damit über Ostern kurz die Welt gerettet.

All‘ diesen Mitstreitern gebührt ein Dank.

Auf DNIP.ch findet ihr wie immer ihre ganze Geschichte kostenlos mit vielen Details. Hier aber das, was wir jetzt tun müssen.

Note 5¾, sehr gut!

Wir haben es mit einer von langer Hand vorbereitetem Angriff zu tun, wie er vielen Geheimdiensten gut anstehen würde:

  1. Man gibt sich mehrere Jahre Vorlauf
  2. Man versteckt die Sicherheitslücke gut
  3. Sie lässt sich nur vom Angreifer ausnutzen
  4. Sie hinterlässt kaum Spuren
  5. „Offiziell“ gibt es keinen Bezug zwischen der manipulierten Bibliothek und der infizierten Software
  6. Es wurde langfristig und zukunftsorientiert geplant, mit der Möglichkeit, in der Zukunft weitere Ziele unauffällig einbauen zu können

Eigentlich müsste man für dieses Vorgehen eine Note 6+ ausstellen, wenn es nicht die IT-Sicherheit von unzähligen Systemen, deren Daten und den davon abhängigen Personen und kritischen Infrastrukturen gefährden würde.

Gemachte Fehler

Doch Abzüge gibt es dafür, dass keine vollständigen Tests in realen Systemumgebungen gefahren wurden. Damit hätte diese Erkennung der Sicherheitslücke verhindert werden können. Wir sind also wirklich extrem knapp an einer Katastrophe vorbeigeschrammt, die Abermillionen von Servern auf der ganzen Welt dem unbekannten Akteur hinter „Jia Tan“ ausgesetzt hätten.

Es ist aber (leider) davon auszugehen, dass zukünftige Akteure mehr interne Tests fahren werden. Und darauf müssen wir vorbereitet sein. (Es wurden auch Mutmassungen geäussert, dass die Organisation hinter „Jia Tan“ weitere Projekte mit anderen Pseudonymen parallel am Laufen haben könnte, da die vorgenommenen Änderungen niemals kein Vollzeitpensum ergäben. Auch diese mutmasslichen parallelen Aktivitäten dürften von dieser Erkenntnis „profitieren“.)

Plausible Deniability

Es ist zu erwarten, dass zukünftige derartige Supply-Chain-Attacken versuchen werden, glaubhafte Abstreitbarkeit zu erreichen, wie sie bei einigen klassischen Geheimdienstaktivitäten schon zur Tradition geworden ist. Das heisst, man versucht die Hintertür so zu kaschieren, dass es auch ein Flüchtigkeitsfehler der Softwareentwickler hätte sein können. Der Vorteil ist, dass ein so etablierter Backdoor-Schreiber weitermachen könnte und nicht neu beginnen müsste.

Wie wir am Beispiel von „Jia Tan“ sehen, sind aber Wegwerfidentitäten zumindest aktuell noch mit wenig Aufwand zu etablieren; wahrscheinlich lohnt sich der zusätzliche Aufwand nicht.

Was lernen wir daraus?

Dies ist ein typisches Beispiel für einen Supply-Chain-Angriff, bei dem nicht die Software selbst, sondern eine ihrer Abhängigkeiten, Bibliotheken oder Module infiziert wird. Diese sind sehr schwierig zu entdecken. Und trotzdem würde die ganze Softwarebranche ohne diese grossartige Auswahl an (zumeist Open-Source-)Hilfsmitteln zusammenbrechen. Dieses Wochenende wurden viele Optionen genannt, nicht alle davon neu. Sie gehen in verschiedene Richtungen, die sich manchmal auch teilweise widersprechen.

Vereinfachung

Eine Meinung geht dahin, sich wieder der Modularität und Einfachheit von Programmen zu widmen, also eine Art Revival der Unix-Philosophie: Wir sollten uns bei Software wieder auf die wichtigen Komponenten besinnen und nicht einfach alles an zusätzlichen Softwarekomponenten importieren, nur weil es praktisch ist. Oder zumindest versuchen, diese Abhängigkeiten so weit wie möglich zu isolieren.

Belohnung

Es wird auch eine bessere Entlöhnung der (oftmals) Freiwilligen gefordert, welche diese Pakete pflegen.

Beispielsweise könnten Firmen damit beginnen, dass jede:r ihrer Entwickler:innen monatlich einen bestimmten Betrag, beispielsweise 50 Franken, zur Verfügung hat, die er/sie Projekten nach Wahl zukommen lassen kann. Mit weniger als 1% der Entwicklungskosten könnte so das Ökosystem und damit auch die Produkte der spendenden Firma signifikant sicherer gemacht werden. (Auch anstelle von oder zusätzlich zu „Open-Source-Wartungsverträgen“ oder direkten Entwicklungsaufträgen.)

Michał Zalewski hält dies alleine aber noch nicht für ausreichend. Denn genau „langweilige“ Pakete wie eben xz, die stabil laufen und wo jede Änderung potenziell mehr Nachteile als Vorteile nach sich zieht seien das Problem. Es gelte auch, zusätzliche Motivation dafür zu finden, da die Betreuung eines solchen Projektes ähnlich interessant sei, wie dem Gras beim Wachsen zuzuhören.

Er fordert gleichzeitig auch grosse Firmen auf, die massiv von diesen Paketen profitieren und sie in ihren eigenen kostenpflichtigen Produkten nutzen oder weitergeben, ihre Pakete selbst aktiv nach Sicherheitsproblemen zu scannen. Und es würde nur ein Bruchteil der billionenteuren Riesenprojekte kosten, die einige Firmen auf sich nähmen, wie grosse Sprachmodelle oder selbstfahrende Autos:

Even when it comes to lesser threats, the bottom line is that we have untold trillions of dollars riding on top of code developed by hobbyists. The companies profiting from this infrastructure can afford to thoroughly vet and monitor key dependencies on behalf of the community. To be clear, a comprehensive solution would be a difficult and costly undertaking — but it’s not any harder or costlier than large language models or self-driving cars.

Michał „lcamtuf“ Zalewski in OSS backdoors: the folly of the easy fix (2024-03-31).

Bessere Kontrolle

Es wurde auch die Aussage gemacht, dass die Betreuer von solchen Systemen noch mehr Zeit in Qualitätssicherung stecken müssten, also die unvergütete Last, die sie bereits jetzt tragen, nochmals zu erhöhen.

Dies halte ich aus obiger Sicht für wenig sinnvoll. Allerdings könnten durchaus auch nationale IT-Sicherheitszentren (in der Schweiz das Bundesamt für Cybersicherheit, BACS) diese Aufgabe übernehmen. Denn es fördert ihre eigene Cybersicherheit und die ihrer Wirtschaft und Bürger.

Neue Ideen

Informatikstudierende erhalten neben vielen Hintergründen und methodischen Ansätzen während ihrer Ausbildung auch Kenntnisse in der praktischen Softwareentwicklung. Leider basiert die häufig nur darauf, von Null an ein eigenes Softwareprojekt zu entwickeln.

In der Wirtschaft benötigte Skills wie die Analyse oder Erweiterung von bestehendem, z.T. fremden Code, fehlen oft. Hier könnte eine Mitarbeit in einem dieser Open-Source-Projekte durchaus mehrfachen Vorteil bringen. Nicht nur würden die Studierenden wichtige Praxiserfahrung sammeln, auch die Projekte hätten entsprechende Unterstützung.

Die Idee ist nicht neu. So habe ich früher Lehrveranstaltungen in ähnliche Richtungen angeboten, aber auch LibreFaso, ein Projekt in Burkina Faso, bot Studierenden entsprechende Stipendien an.

Aktuelles zu IT-Sicherheit

  • Was Prozessoren und die Frequenzwand mit der Cloud zu tun haben
    Seit bald 20 Jahren werden die CPU-Kerne für Computer nicht mehr schneller. Trotzdem werden neue Prozessoren verkauft. Und der Trend geht in die Cloud. Wie das zusammenhängt.
  • Facebook: Moderation für Geschäfts­interessen­maximierung, nicht für das Soziale im Netz
    Hatte mich nach wahrscheinlich mehr als einem Jahr mal wieder bei Facebook eingeloggt. Das erste, was mir entgegenkam: Offensichtlicher Spam, der mittels falscher Botschaften auf Klicks abzielte. Aber beim Versuch, einen wahrheitsgemässen Bericht über ein EuGH-Urteil gegen Facebook zu posten, wurde dieser unter dem Vorwand, ich würde Spam verbreiten, gelöscht. Was ist passiert?
  • Was verraten KI-Chatbots?
    «Täderlät» die KI? Vor ein paar Wochen fragte mich jemand besorgt, ob man denn gar nichts in Chatbot-Fenster eingeben könne, was man nicht auch öffentlich teilen würde. Während der Erklärung fiel mir auf, dass ganz viele Leute ganz wenig Ahnung haben, wie die Datenflüsse bei KI-Chatbots wie ChatGPT etc. eigentlich ablaufen. Deshalb habe ich für… Was verraten KI-Chatbots? weiterlesen
  • Sicherheit versteckt sich gerne
    Wieso sieht man einer Firma nicht von aussen an, wie gut ihre IT-Sicherheit ist? Einige Überlegungen aus Erfahrung.
  • Chatkontrolle: Schöner als Fiktion
    Wir kennen «1984» nicht, weil es eine technische, objektive Abhandlung war. Wir erinnern uns, weil es eine packende, düstere, verstörende Erzählung ist.
  • Chatkontrolle, die Schweiz und unsere Freiheit
    In der EU wird seit vergangenem Mittwoch wieder über die sogenannte «Chatkontrolle» verhandelt. Worum geht es da? Und welche Auswirkungen hat das auf die Schweiz?
  • Cloudspeicher sind nicht (immer) für die Ewigkeit
    Wieder streicht ein Cloudspeicher seine Segel. Was wir daraus lernen sollten.
  • IT sind nicht nur Kosten
    Oft wird die ganze IT-Abteilung aus Sicht der Geschäftsführung nur als Kostenfaktor angesehen. Wer das so sieht, macht es sich zu einfach.
  • CrowdStrike, die Dritte
    In den 1½ Wochen seit Publikation der ersten beiden Teile hat sich einiges getan. Microsoft liess es sich nicht nehmen, die Schuld am Vorfall der EU in die Schuhe zu schieben, wie das Apple mit ihrer KI ja auch schon frech versuchte. Andererseits haben die Diskussionen zum Vorfall viele Hinweise darauf gegeben, wie IT-Verantwortliche ihre… CrowdStrike, die Dritte weiterlesen
  • Unnützes Wissen zu CrowdStrike
    Ich habe die letzten Wochen viele Informationen zu CrowdStrike zusammengetragen und bei DNIP veröffentlicht. Hier ein paar Punkte, die bei DNIP nicht gepasst hätten. Einiges davon ist sinnvolles Hintergrundwissen, einiges taugt eher als Anekdote für die Kaffeepause.
  • Marcel pendelt zwischem Spam und Scam
    Beim Pendeln hatte ich viel Zeit. Auch um Mails aus dem Spamordner zu lesen. Hier ein paar Dinge, die man daraus lernen kann. Um sich und sein Umfeld zu schützen.
  • Die NZZ liefert Daten an Microsoft — und Nein sagen ist nicht
    Die andauernden CookieBanner nerven. Aber noch viel mehr nervt es, wenn in der Liste von „800 sorgfältig ausgewählten Werbepartnern (oder so)“ einige Schalter fix auf „diese Werbe-/Datenmarketingplattform darf immer Cookies setzen, so sehr ihr euch auch wehrt, liebe User“ eingestellt sind und sich nicht ändern lassen. Da fühlt man sich gleich so richtig ernst genommen.… Die NZZ liefert Daten an Microsoft — und Nein sagen ist nicht weiterlesen

Bleibe auf dem Laufenden!

Erhalte eine Mail bei jedem neuen Artikel von mir.

Ca. 1-2 Mails pro Monat, kein Spam.

Folge mir im Fediverse


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.


Webapps