Google: ClusterFuzzLite soll Supply-Chain-Angriffe eindämmen

Sheila Zabeu -

November 30, 2021

Haben Sie bemerkt, dass wir die Sicherheitskodierung heute immer ernster nehmen? Und wir haben einen Grund dafür. Angriffe auf Software-Lieferketten wie bei Kaseya’s VSA, SolarWinds und PHP werden immer alltäglicher. Wenn sogar das National Institute of Standards and Technology (NIST) und das Weiße Haus eine Durchführungsverordnung zur Verbesserung der nationalen Cybersicherheit erlassen haben, die mehr Code-Tests vorschreibt, dann wissen Sie, dass Cyberangriffe endlich ernst genommen werden.

Um dies zu erleichtern, hat Google ein neues Projekt namens ClusterFuzzLite ins Leben gerufen, das helfen soll, Schwachstellen in Software schneller zu erkennen. Nach Angaben des Unternehmens ist es mit nur wenigen Zeilen Code möglich, ClusterFuzzLite in die Arbeitsabläufe von Entwicklern zu integrieren und Fehler zu erkennen. Dadurch wird die Sicherheit der Software-Produktionskette erhöht. „Das neue Tool kann als Teil von CI/CD-Workflows ausgeführt werden, um Schwachstellen schneller als je zuvor zu finden“, schreiben die Software-Ingenieure Jonathan Metzman und Oliver Chang zusammen mit Googles CI/CD-Produktleiter Michael Winser in einem Beitrag auf Googles Sicherheitsblog.

ClusterFuzzLite ist eine abgespeckte Version des ClusterFuzz-Projekts, das 2016 angekündigt wurde. Beide basieren auf der 1989 an der University of Wisconsin Madison entwickelten Fuzz-Testing-Technik, die darauf abzielt, Implementierungsfehler auf automatisierte Weise mithilfe missgebildeter oder zufälliger Daten zu finden.

Fuzz-Tests eignen sich für Software, die nicht vertrauenswürdige Dateneingaben erhält (Sicherheit), für die Überprüfung der Äquivalenz zweier komplexer Algorithmen (Korrektheit) und für die Kontrolle umfangreicher APIs, die komplexe Daten erhalten (Stabilität). Sie sind kein Ersatz für andere Arten von Tests und sollten kontinuierlich angewendet werden.

ClusterFuzz ist eine Open-Source-Fuzz-Infrastruktur, die kontinuierlich Tests durchführen kann. Hochwirksame Open-Source-Projekte können in den OSS-Fuzz-Dienst integriert werden, um für kostenlose Fuzz-Tests eingereicht zu werden. Zusätzlich zur ClusterFuzz-Umgebung kombiniert OSS-Fuzz verschiedene Fuzz-Mechanismen mit Sanitizern. Seit seiner Ankündigung im Jahr 2016 bis Juni 2021 wurden mehr als 500 kritische Open-Source-Projekte in OSS-Fuzz integriert, wodurch mehr als 6.500 Schwachstellen und 21.000 funktionale Fehler behoben wurden.

ClusterFuzzLite, der kleine Bruder des kürzlich angekündigten ClusterFuzz, zeigt laut Google ebenfalls positive Ergebnisse bei großen Projekten. „Wenn menschliche Prüfer den Code absegnen und Code-Analysatoren keine Probleme mehr erkennen können, bringt Fuzzing den Code auf eine neue Stufe der Reife und Robustheit. OSS-Fuzz und ClusterFuzzLite helfen uns dabei, cURL als Qualitätsprojekt aufrechtzuerhalten, 24 Stunden am Tag, jeden Tag und vor jedem Engagement“, betont Daniel Stenberg, Autor des cURL-Projekts. Er arbeitet mit einem Kommandozeilentool und einer Bibliothek, um Daten mit URL-Syntax zu übertragen.

Google erklärt, dass ClusterFuzzLite viele der Funktionen von ClusterFuzz bietet, zum Beispiel kontinuierliches Fuzzing, Kompatibilität mit Sanitizern und Abdeckungsberichte. Das Wichtigste an ClusterFuzzLite ist nach Ansicht von Google jedoch, dass es einfach zu konfigurieren ist und mit Closed-Source-Projekten funktioniert. Das macht es zu einer interessanten Option für jeden Entwickler, der Software testen möchte.

Angriffe auf die Lieferkette

Mit der Bereitstellung dieser Tools will Google letztlich dazu beitragen, Angriffe auf Lieferketten einzudämmen, die in letzter Zeit verschiedene Branchen terrorisiert haben. Diese Art des Eindringens greift ein verwundbares Glied in der Kette an, zum Beispiel ein Unternehmen, das Software oder Dienstleistungen für viele andere bereitstellt. Dadurch wird der Weg für Tausende neuer Ziele geebnet.

Einer der größten und verheerendsten Vorfälle dieser Art im letzten Jahr betraf das IT-Unternehmen SolarWinds. Dabei wurden dessen Systemaktualisierungen, die an Tausende von Kunden geschickt wurden – darunter große Unternehmen der Privatwirtschaft und US-Behörden – kompromittiert. Bei einem anderen großen Angriff wurde eine Sicherheitslücke in der Kaseya-Software ausgenutzt, von der Kunden in aller Welt betroffen waren.

Insbesondere Entwicklungsumgebungen können hervorragende Ziele für Cyberkriminelle sein, die Angriffe auf die Lieferkette als Methode nutzen. Angesichts dieser großen Vorfälle im Bereich der Cybersicherheit hat beispielsweise das National Cyber Security Center (NCSC) des Vereinigten Königreichs eine Warnung herausgegeben und darauf hingewiesen, dass Angriffe auf die Softwareentwicklungspipeline weitreichende Auswirkungen haben können.

Deshalb, so Google, sollten Tools wie ClusterFuzzLite einen weiteren wichtigen Schritt darstellen, den Entwickler kontinuierlich bei allen Softwareprojekten anwenden sollten. Auf diese Weise kann durch effizienteres Auffinden und Verhindern von Fehlern ein sichereres Software-Ökosystem aufgebaut werden.