Blogartikel

21.11.2024

Softwarequalität

Einfachere Software-Updates in Air-Gapped-Umgebungen

Bei Air-Gapped-Netzwerken ist es eine Herausforderung, in ihnen verwendete Software mit geringem Aufwand aktuell zu halten. In diesem Artikel lernen Sie einen Weg kennen, mit dem Sie Updates innerhalb eines Air-Gapped-Netzwerks vereinfachen können.

Ein „Air Gap“ ist ein schon recht altes, aber immer noch relevantes Hoch-Sicherheitskonzept. Die grundlegende Idee ist die Abkopplung eines Systems von der Außenwelt durch das Air Gap (Engl. für „Luftspalt“).

Netzwerke, die sich hinter einem Air Gap befinden, sind von anderen Netzwerken und dem Internet getrennt. Die verringerte Exponiertheit erhöht die Sicherheit des Netzwerks, macht es jedoch auch aufwendiger, Software innerhalb des Netzwerks zu aktualisieren (mehr zum Air-Gap-Konzept finden Sie in unserem Glossarartikel.

Herausforderung Software-Updates in Air-Gapped-Netzwerken

Da auch Air-Gapped-Systeme nicht 100-prozentig sicher sind, ist die größte Herausforderung bei ihrem Einsatz die verwendete Software möglichst aktuell zu halten. Dies ist zum einen wichtig, da eine aktuelle Version einer Software es Angreifern schwerer macht sich im System auzubreiten; zum anderen bietet sie oft aber auch eine bessere Nutzererfahrung durch neue Features. Je einfacher es ist Software zu aktualisieren, desto wahrscheinlicher ist es, dass Updates durchgeführt werden und dadurch die Sicherheit innerhalb des Systems verbessert wird.

Automatische, und damit besonders komfortable, Updates von Software sind wegen der fehlenden Internetverbindung in Air-Gapped-Umgebungen nur schwer möglich. Neue Versionen müssen also manuell heruntergeladen, via Datenträger physisch in das Netzwerk gebracht und anschließend innerhalb des Netzwerks verteilt werden. Je mehr unterschiedliche Software-Applikationen in einem Air-Gapped-Netzwerk betrieben werden, desto größer wird der Update-Aufwand. Das liegt unter anderem daran, dass die Durchführung von Updates sich je nach Technologie unterscheidet (die Durchführung von Updates für Java Applikationen ist z. B. anders als für Ruby on Rails Applikationen). Zudem können Updates Breaking-Changes enthalten, die manuelle Schritte notwendig machen.

Vereinfachte Updates in Air-Gapped-Netzwerken

Um den Aufwand für Updates in Air-Gapped-Netzwerken zu verringern, ist eine Reduzierung von manuellen Schritten durch eine Vereinheitlichung der Update-Prozesse sowie zentrale Bereitstellung von Ressourcen sinnvoll.

Ein Beispiel für vereinheitlichte Update-Prozesse ist das Cloudogu EcoSystem (CES). Es bringt bereits standardmäßig eine Vereinheitlichung der Installations- und Update-Prozesse für alle darin betriebenen Applikationen mit sich. Um Updates für ein hinter einem Air Gap betriebenes CES durchführen zu können, müssen zwar nach wie vor Ressourcen manuell in das Netzwerk gebracht werden. Die bei Updates notwendige Migrationen von Daten von Tools ist jedoch automatisiert und, besonders wichtig, benötigte Ressourcen sind vereinheitlicht. Das bedeutet: Sobald die Ressourcen einmal hinter dem Air Gap sind, können Tools sehr einfach, weil standardisiert, installiert und aktualisiert werden; mit hoher Skalierbarkeit. Darüber hinaus müssen im CES alle neuen Versionen von Applikationen im Voraus Integrationstests bestehen, was unerwartete Probleme durch Breaking-Changes verhindert. Updates und Neuinstallationen sind also mit sehr geringem Aufwand machbar.

Für die Speicherung von Ressourcen in einem Air-Gapped-Netzwerk gibt es eine Vielzahl von Möglichkeiten. In Projekten mit unseren Kunden haben wir beispielsweise bereits Erfahrung mit dem Einsatz von Harbour oder Sonatype Nexus Repository zum Vorhalten der Ressourcen gemacht. Sprechen Sie uns gerne auch an, wenn Sie bereits ein anderes Tool benutzen oder Sie noch keine Vorstellung davon haben welches Tool Sie einsetzen werden.

Allow-Listing statt Air Gap

Wenn Ihre Sicherheitsanforderungen es erlauben, ist es auch möglich einen Air Gap Zugriff auf das Internet „aufzuweichen“, ihn aber durch Allow-Listing stark einzuschränken. Bei diesem Ansatz können Sie den Zugriff auf vertrauenswürdige Quellen einschränken; je weniger, desto besser. Beim Einsatz vom Cloudogu EcoSystem ist dann der Vorteil, dass für sämtliche auf dem CES betriebene Tools lediglich Zugriff auf das zentrale Backend von Cloudogu notwendig ist. Sie müssen also nicht für jedes Tool einzeln eine vertrauenswürdige Quelle finden. Durch die Vereinheitlichung von Updates mit dem CES und die zentrale Quelle für die benötigten Ressourcen kann eine gute Balance zwischen Sicherheit und Effizienz gefunden werden.