Production Perig - stock.adobe.c
Lieferkettensicherheit: Identitäten von Maschinen absichern
Wenn es Angreifern gelingt, eine einzige Maschinenidentität zu kapern, können sie aufgrund der verzahnten Lieferketten Zugang zu vielen Systemen und Unternehmen erlangen.
Die digitale Transformation hat jedes Unternehmen zu einem Software-Hersteller gemacht. Dies zeigen nicht zuletzt die deutschen Initiativen Industrie 4.0 und nun Manufacturing-X bis hin zu den Strategien der Bundesregierung für eine souveräne Cloud. Infolgedessen sind Ingenieure und Softwareentwicklungsumgebungen von der Fabrik bis zur Cloud zu einem Ziel für Angreifer geworden. Und da wir uns in die Welt der generativen KI von GitHub Copilot und ChatGPT bewegen, sind es nicht nur professionelle Entwickler, sondern es ist jetzt KI, die in die Software-Lieferkette eindringt und die sowohl professionelle Entwickler als auch Nicht-Entwickler zum Coden befähigt. ChatGPT wird bald einen Code-Interpreter haben, der Code direkt in der KI ausführt.
Hacker haben inzwischen erkannt, dass erfolgreiche Angriffe auf die Lieferkette - von Open-Source-Software, die in jeder Bank eingesetzt wird, bis hin zu Cloud-Anbietern, die KI-Modelle für den Versand von Waren einsetzen - äußerst effizient und profitabel sind. Die Realität ist, dass IT-Sicherheit nicht in den Aufgabenbereich der Entwickler fließt, sondern in die der CISOs, IT-Sicherheitsarchitekten und IT-Sicherheitsingenieure, die sich um die Absicherung der Entwicklungsumgebungen und Anwendungen kümmern müssen. Die meisten konzentrieren sich eher auf Innovation und Geschwindigkeit als auf IT-Sicherheit. IT-Sicherheitsteams tragen immer noch die Gesamtverantwortung für die Entwicklung der Zero-Trust-Strategie eines Unternehmens und für die Festlegung der Parameter und der Governance zur Gewährleistung der IT-Sicherheit. Sie verfügen jedoch selten über das Wissen oder die Ressourcen, um diese Kontrollen in der Schnelllebigkeit zu implementieren. Dies kann dazu führen, dass Sicherheitskontrollen nicht einheitlich in allen Umgebungen angewandt werden und Entwicklungs- und Cloud-native Umgebungen außen vor bleiben. CIOs werden sich dieser Herausforderungen gerade erst bewusst.
Eine der größten Sicherheitsherausforderungen im Zusammenhang mit Angriffen auf die Software Supply Chain, wie dem Angriff auf SolarWinds, besteht darin, dass diese Angriffe das System der Identität und Authentifizierung missbrauchen. Dieses System bildet die Grundlage unserer digitalen Welt. Maschinenidentitäten authentifizieren KI, maschinelles Lernen, Anwendungen, APIs, Code und Clouds und ermöglichen die Kommunikation zwischen diesen Diensten - dies funktioniert jedoch nur, wenn die Identität nicht kompromittiert wurde.
Ein einziger Angriffspunkt mit weitreichenden Folgen
Die Angreifer sind sich der Funktionsweise der Entwicklung zunehmend bewusst - sie sind mehr oder weniger selbst alle Entwickler. Sie verstehen besser als viele andere, wie mächtig eine Maschinenidentität sein kann und zielen bei ihren Angriffen auf diese ab. Wenn ein Angreifer in der Lage ist, eine Maschinenidentität zu stehlen oder zu fälschen - wie eine TLS-, SSH- oder Code-Signing-Maschinenidentität - kann er sich authentifizieren und autorisieren. Code-Signing-Zertifikate bieten beispielsweise den Mechanismus, durch den andere Rechner wissen, dass sie ein Stück Software ausführen können. Wenn etwas signiert ist, dann bekommt es grünes Licht. In den Händen eines Angreifers ist dies eine unglaublich mächtige Waffe, wie wir bereits beim Stuxnet-Angriff gesehen haben, aber auch Google und andere warnen ständig davor. Ein Angreifer kann einen einzigen Angriffspunkt nutzen, um mit demselben Aufwand Tausende von anderen Unternehmen und Systemen zu infizieren - eine äußerst effiziente und profitable Angriffsmethode. Solche Angriffe sind auch sehr schwer abzuwehren, weil wir uns auf diese Identitäten verlassen müssen, damit Software funktioniert.
Bedrohungsakteure nutzen ihr Wissen über Maschinenidentitäten und Entwicklungsumgebungen, um sehr schädliche Angriffe auf die Softwarelieferkette zu starten. In mancher Hinsicht sind sie in ihrem Denken vielen Unternehmen voraus. Das Beispiel von SolarWinds zeigt, dass der Schutz des Code-Signierungsprozesses entscheidend und wichtig ist, nicht die Tatsache, dass der Code signiert ist. Die IT hat sich weiterentwickelt - alles muss signiert werden. Wie SolarWinds zeigt, ist daher der Schutz des Prozesses heute wichtig. In diesem Fall konnten die Angreifer die Build Pipeline infiltrieren, und da der Code-Signierungsprozess nicht geschützt war, konnten sie bösartigen Code in ein legitimes Update einschleusen. Dieses Update lief dann vertrauenswürdig auf allen Rechnern der Kunden, da es signiert und mit einer gültigen Maschinenidentität verifiziert war.
Angreifer missbrauchen Maschinenidentitäten
Ransomware-Gruppen wie Lapsus$ haben bereits in der Vergangenheit Maschinenidentitäten missbraucht, um Malware zu verbreiten. So stahlen sie beispielsweise Code-Signatur-Maschinenidentitäten von Nvidia, was es der Gruppe in der Lage war, sich bei künftigen Angriffen auf Unternehmen wie Uber und Microsoft als Nvidia auszugeben, wobei ihre Malware als vertrauenswürdig eingestuft wurde. Mit diesen Maschinenidentitäten in der Hand konnte Lapsus$ praktisch unbemerkt durch die Vordertür kommen.
Es überrascht nicht, dass 82 Prozent der 1.000 CIOs weltweit, die im letzten Jahr befragt wurden, sagen, dass ihre Unternehmen anfällig für Cyberangriffe auf die Software-Lieferkette sind. Weitere Ergebnisse zeigen, dass 87 Prozent der CIOs glauben, dass Software-Ingenieure und -Entwickler Kompromisse bei Sicherheitsrichtlinien und -kontrollen eingehen, um neue Produkte und Dienstleistungen schneller auf den Markt bringen zu können. 85 Prozent der CIOs wurden vom Vorstand oder CEO ausdrücklich angewiesen, die Sicherheit von Softwareentwicklungs- und -verteilungsumgebungen zu verbessern. Erfreulicherweise geben 84 Prozent an, dass das für die Sicherheit von Softwareentwicklungsumgebungen bereitgestellte Budget im letzten Jahr gestiegen ist.
„Jeder Code - jede Maschine - muss eine Identität haben und authentifiziert werden. Dies wird die Zahl der Schwachstellen, die ausgenutzt werden können, begrenzen und sicherstellen, dass alle Unternehmen ihre Lieferkette angemessen schützen.“
Kevin Bocek, Venafi
CIOs wissen, dass sie die Sicherheit der Software-Lieferkette verbessern müssen, aber viele von ihnen verlassen sich auf die Angaben der großen Technologieunternehmen. Es ist extrem schwierig für sie, genau zu bestimmen, wo die Risiken liegen, welche Verbesserungen die Sicherheit am stärksten erhöhen und wie diese Änderungen das Risiko im Laufe der Zeit verringern. Die Risiken liegen vielmehr in der Software, die sie entwickeln, und noch mehr in der Software, die die generative KI von ChatGPT bis GitHub Copilot entwickelt. IT-Sicherheitsfachleute können dieses Problem nicht mit den bestehenden Methoden lösen. Stattdessen müssen sie anders über die Identität und Integrität des Codes nachdenken, den die Entwickler erstellen und verwenden - und sie müssen ihn bei jedem Schritt des Entwicklungsprozesses mit Maschinengeschwindigkeit schützen und absichern.
Als Reaktion darauf bewegt sich die Branche hin zu Zero-Trust-Sicherheitsmodellen, die festlegen, dass jeder Verbindungspunkt im Netzwerk - vom Rechenzentrum über die Cloud bis hin zum Endpunkt - mit einer gültigen Identität überprüft und authentifiziert werden muss. Wenn dann noch KI- und maschinelle Lernfähigkeiten eingebaut werden, wird die Aufgabe nicht einfacher. Dies kann jedoch in schnelllebigen nativen Cloud- und Entwicklungsumgebungen, in denen manche Maschinen nur wenige Sekunden leben, schwer zu implementieren sein. Wenn Identitäten nicht in Maschinengeschwindigkeit ausgegeben werden, um sie mit den Arbeitsabläufen der Entwickler in Einklang zu bringen, kommt es zu Engpässen, die den Innovationsfluss aufhalten. Dies kann Entwickler und in naher Zukunft auch generative KI, die für Entwickler arbeitet, dazu zwingen, unsichere Umgehungslösungen zu finden und ihre eigenen Lösungen zu schaffen, um ihrem Bedürfnis nach schneller Innovation nachzukommen - was wiederum zu Sicherheitslücken führt. In Anbetracht des Trends, dass Angreifer sich nach links verlagern, um CI/CD-Pipelines ins Visier zu nehmen, ist dies ein Fehler, den sich Unternehmen nicht leisten können.
Fazit
In einer Cloud- und KI-Welt, einer Maschinenwelt, müssen Unternehmen in der Lage sein, schnell und sicher zu sein. Dies bedeutet, dass die Entwicklungsteams die Tools erhalten, die sie benötigen, um Sicherheit zu implementieren, die mit den umfassenderen organisatorischen Kontrollen und der Governance übereinstimmt. Angesichts der Geschwindigkeit und Komplexität der Geschäftswelt kann dies nicht manuell erfolgen. Eine Kontrollebene zur Verwaltung des Lebenszyklus von Maschinenidentitäten ist unerlässlich.
Alle Unternehmen - ob Softwarehersteller oder -nutzer - müssen in der Lage sein, Kontrollen zu automatisieren, die festlegen, wem und was vertraut werden kann und wem nicht, und sie müssen flexibel auf Veränderungen reagieren können. Ziel ist es, die Möglichkeit eines Angriffs auf die Lieferkette zu minimieren, indem sichergestellt wird, dass die Authentifizierung und Autorisierung über die gesamte Pipeline hinweg ordnungsgemäß verwaltet wird, die Integrität von Softwareartefakten in den entsprechenden Phasen getestet wird und Kontrollen für in die Software integrierte Drittanbieter- und Open-Source-Software durchgeführt werden. Mit den Möglichkeiten der generativen KI - der Fähigkeit, Code zu schreiben und auszuführen - steigt das Risiko immer weiter an. Jeder Code - jede Maschine - muss eine Identität haben und authentifiziert werden. Dies wird die Zahl der Schwachstellen, die ausgenutzt werden können, begrenzen und sicherstellen, dass alle Unternehmen ihre Lieferkette angemessen schützen.
Die Autoren sind für den Inhalt und die Richtigkeit ihrer Beiträge selbst verantwortlich. Die dargelegten Meinungen geben die Ansichten der Autoren wieder.