rh2010 - stock.adobe.com

Der Erfolg von Low-Code und No-Code führt zu neuen Risiken

Viele Firmen suchen nach Wegen, um ihre Entwicklungskosten zu senken. Automatisierte Techniken können aber zu unerwünschten Nebenwirkungen führen, wenn sie dabei nicht aufpassen.

Eine zunehmende Zahl von Unternehmen überlegt derzeit oder ist schon dabei, zwei neue Techniken namens Low-Code sowie No-Code zum Automatisieren und Verschlanken ihrer Softwareentwicklungen einzusetzen. 

Die darauf ausgelegten Plattformen ermöglichen eine schnellere Bereitstellung von Prototypen sowie andere Entwicklungsfähigkeiten, die es so bisher noch nicht gab. Sie können allerdings auch zu neuen Cyberangriffen und weiteren Bedrohungen führen. 

Lassen Sie uns daher in den folgenden Abschnitten die Sicherheitsrisiken von Low-Code und No-Code beleuchten.

Was sind überhaupt Low-Code und No-Code?

Low-Code sowie No-Code sind Modelle, mit denen die Entwicklung von Software beschleunigt werden soll. Unter anderem verwenden sie visuelle Methoden wie Drag & Drop und interaktive Menüs, um die Erstellung von Code zu erleichtern und zu automatisieren. Bei Low-Code ist es darüber hinaus möglich, eigenen Code zu dem von der Plattform erzeugten Code hinzuzufügen. Bei No-Code wird dagegen letztendlich nur der von der Lösung bereitgestellte Code in die fertige Anwendung eingefügt. 

Für beide Ansätze gibt es eine Reihe von typischen Anwendungsfällen:

  • No-Code wird in der Regel vor allem für einfache Nutzeroberflächen, Dashboards und relativ simple Web- oder Mobile-Anwendungen genutzt.
  • Low-Code kann, da er sich noch anpassen lässt, dagegen für eine breitere Palette an Anwendungsszenarien eingesetzt werden.

Bei No-Code wird der gesamte Code durch Drag & Drop sowie interaktive Menüs erstellt. Low-Code unterstützt meist zusätzlich auch APIs (Application Programming Interfaces), IDEs (Integrated Development Environments), Code-Templates und eine Vielzahl von Plug-ins, die zusammen mit weiteren Tools und Diensten verwendet werden können.

Wo liegen die Sicherheitsrisiken von Low-Code beziehungsweise No-Code?

Unabhängig von der gewählten Vorgehensweise gibt es eine Reihe von Sicherheitsrisiken, potenziellen Schwachstellen und drohenden Datenverlusten, die im Zusammenhang mit Low-Code und No-Code auftreten können. Zu den größten Problemen gehören die im Folgenden beschriebenen Punkte.

Qualität des Codes

Eine der gravierendsten Sicherheitsrisiken von Low-Code beziehungsweise No-Code ist naturgemäß die Qualität des erzeugten Codes selbst. Beide Vorgehensweisen führen zu frischem Code, der komplett oder zu großen Teilen aus einer der verschiedenen Drittanbieter-Plattformen stammt. Die erzeugten Code-Schnipsel können sich aber in ihrer Qualität erheblich voneinander unterscheiden, abhängig jeweils von den verwendeten Tools und Diensten. Erschwerend kommt hinzu, dass die Kunden nur wenig oder gar keine Kontrolle darüber haben, ob sich der Code an bewährte Best Practices aus dem Bereich IT-Security hält.

Monitoring

Beim Einsatz von Low-Code nutzen die Entwickler im Idealfall nur Werkzeuge und IDEs, die von den IT-Security-Spezialisten überwacht werden können. Das Durchführen kompletter statischer Analysen oder dynamischer Tests des Codes ist aber in der Regel trotzdem nicht möglich. Zumindest gilt das für den Code, der direkt aus einer der Plattformen stammt. 

Auf No-Code trifft das nicht zu. Hier ist normalerweise kein oder nur ein minimales Monitoring des erzeugten Codes und seines Einsatzes möglich. Das kann zu neuen Formen der Schatten-IT im Unternehmen führen, die nur schwer aufzuspüren sind. Im Ergebnis wissen die IT-Sicherheitsexperten eines Unternehmens dann nicht mehr über alle Vorgänge in der Infrastruktur Bescheid.

Sicherheitsrisiken durch Drittanbieter-Tools

Unternehmen, die sich für die Einführung von Drittanbieter-Umgebungen zum Entwickeln und Hosten von Anwendungscode entscheiden, treffen auf das sogenannte Shared Responsibility Model. Sie sind damit nicht mehr alleine für ihre IT-Sicherheit verantwortlich. So kann etwa das Firmennetz neuen Risiken ausgesetzt sein, wenn der Anbieter der Plattform nicht für ausreichende Sicherheitskontrollen in seiner Lösung sorgt. Nur so lassen sich die entstehenden Applikationen ausreichend schützen.

Traditionell bereits bestehende Probleme mit Anwendungen

Zusätzlich zu den genannten Risiken beim Erstellen und Hosten von Anwendungen mit No-Code oder Low-Code sind die dafür verwendeten Plattformen auch weiterhin anfällig für alle in den vergangenen Jahren immer wieder beschriebenen Gefahren beim Entwickeln von Software. Dazu gehören etwa SQL Injection, Cross-Site Scripting (XSS), Command Injection sowie Fehler bei der Authentifizierung und Autorisierung.

Viele bekannte Test-Tools und -Methoden, egal ob statisch oder dynamisch, kommen zudem nicht besonders gut mit No-Code oder Low-Code aus – wenn überhaupt. Weil beide Vorgehensweisen es auch Einsteigern ermöglichen, Code und Anwendungen zu erzeugen, steigt dadurch ebenso die Gefahr, dass es zu Bugs und anderen sicherheitsrelevanten Problemen kommt.

Die IT-Security-Community versucht bereits seit vielen Jahren mehr oder weniger erfolgreich, Programmierern bewährte Best Practices näher zu bringen, mit denen sie sicherere Anwendungen entwickeln könnten. Das muss ganz besonders für Software gelten, die mit sensiblen Daten umgeht.

Insgesamt sind beide Vorgehensweisen, also sowohl No-Code als auch Low-Code, sehr viel versprechend. Sicherheitsrisiken bleiben aber trotzdem. Diese Gefahren nehmen noch zu, wenn Firmen mit kaum vorhandenen Fähigkeiten zum Testen oder Monitoring, auch Anwendern ohne Programmierkenntnissen erlauben, damit neue Applikationen zu erstellen.

Erfahren Sie mehr über Softwareentwicklung