Apps sind Zielscheibe von immer mehr und immer ausgefeilteren Angriffen. Dennoch wird dem Thema Security in der App-Entwicklung nach wie vor zu wenig Bedeutung beigemessen.
Das liegt auch an der unzureichenden Ausbildung der Fach- und Führungskräfte. Ein Grund, warum gezielte Weiterbildung wichtig ist.
Ob Messaging, Gaming, Routenplanung oder Essenslieferung: Ein Leben ohne Apps ist für viele Menschen mittlerweile nicht mehr denkbar. Dass Apps aber auch Einfallstor für Cyberkriminelle sind, dürfte für viele nicht der erste Gedanke sein. Das gilt leider nicht nur für die Nutzerinnen und Nutzer, sondern ebenfalls für die Entwicklerseite. Eine repräsentative Studie von AppSecure.nrw bestätigt dies: Sie kommt zu dem Schluss, dass 59 Prozent der befragten Entwicklerinnen und Entwickler keine klaren Richtlinien und Prozesse zur sicheren Softwareentwicklung haben. 41 Prozent sagen, dass ihre Security-Anforderungen (z.B. zur Verarbeitung sensibler Daten) nicht klar definiert bzw. bekannt sind. Darüber hinaus analysieren 20 Prozent der Entwicklerinnen und Entwickler zu keinem Zeitpunkt des Prozesses ihre Software bezüglich Security.
Es fehlt an Zuständigkeit und Bewusstsein
Diese Problematik findet sich auch in der Praxis wieder: So weist die im Zuge der Corona-Pandemie entstandene Luca-App gravierende Sicherheitsmängel auf. Eine Sicherheitslücke in der App erlaubt es beispielsweise Angreiferinnen und Angreifern, Schadcode einzuschleusen und über diesen Weg Gesundheitsämter mittels Ransomware lahmzulegen. Und bei der App des Zahlungsdienstleisters Klarna konnten Nutzerinnen und Nutzer sensible Finanzdaten anderer Personen einsehen.
Datenschutz zu gewährleisten, ist ein zentraler Aspekt bei der App-Entwicklung. Ebenso wichtig ist allerdings die Angriffssicherheit. Anders als im Bereich Datenschutz und DSGVO fehlt es an dieser Stelle aber vielfach an Kenntnis und Bewusstsein dieser Gesetze und Normen. Zudem ist vielen Beteiligten nicht bekannt, dass Verantwortliche basierend auf Normen für Sicherheitslecks verklagt werden können, selbst wenn sie hierfür nicht zertifiziert sind. Ein Beispiel ist hier die ISO-Norm 27001, die das Information Security Management System für das gesamte Unternehmen definiert.
Datenschutz zu gewährleisten, ist ein zentraler Aspekt bei der App-Entwicklung. Ebenso wichtig ist allerdings die Angriffssicherheit.
Darüber hinaus geben in der AppSecure.nrw-Studie 62 Prozent der Entwicklerinnen und Entwickler an, dass es in ihrem Team keine Person gibt, die für Security zuständig ist. Diese Denkweise greift viel zu kurz. Denn Sicherheit muss von Anfang an vom jeweiligen Produktteam selbst mitgedacht werden – man nennt dies „Security by Design“. Und damit sind nicht nur die Entwicklerinnen und Entwickler in der Pflicht, sondern gleichermaßen die Product Owner, die die Priorisierung der Aufgaben beeinflussen. Gleiches gilt für die Führungskräfte, die die entsprechenden Regeln und Strukturen schaffen sowie ihre Mitarbeitenden fortbilden müssten, dies zumeist aber nicht tun.
Ziel: mehr Security by Design
Doch warum ist es so elementar, Sicherheit von Anfang an mitzudenken? Nur wenn bei jedem Entwicklungsschritt mit dem Mindset von Cyber-Kriminellen auf die App geschaut wird, kann Sicherheit auch wirklich gewährleistet werden. Hier ist unter anderem die Kreativität aus dem ganzen Team gefragt, um gemeinsam zu überlegen, welche Szenarien auftreten können. Darüber hinaus ist es am effektivsten, wenn alle Beteiligten auf Sicherheit achten, denn jede Korrektur kostet Zeit und Geld.
Werkzeuge und Prozesse helfen dabei. Beispielsweise entwickelt das Fraunhofer IEM Codeanalyse-Werkzeuge, mit denen Schwachstellen – im Stil einer Rechtschreibprüfung – beim Programmieren entdeckt und behoben werden können. Diese Analysen lassen sich zusätzlich auch auf dem zentralen Build-Server des Teams automatisieren, sodass bei jeder Änderung am Produkt das Team direkt über potentielle Schwachstellen informiert wird. Das bisher übliche Vorgehen, ausschließlich einen (meist mehrtägigen) Pentest kurz vor dem Release durchzuführen, kann die App nicht in dieser Detailtiefe analysieren und informiert das Team nicht zeitnah genug, um alle Änderungen rechtzeitig durchführen zu können.
Mit Weiterbildung gegenhalten
Doch Tools allein genügen nicht, um diese Herausforderungen anzugehen. Alle Beteiligten benötigen ein entsprechendes Know-how und Bewusstsein, um Sicherheit in der App-Entwicklung im notwendigen Maße mitzudenken. Nur geben in der obenstehenden Befragung durchschnittlich knapp zwei Drittel der Entwicklerinnen und Entwickler an, dass die heutigen Kompetenzen nicht ausreichen, um sichere Software zu entwickeln und zu betreiben. Zudem möchten 89 Prozent ihre Fähigkeiten weiterentwickeln. Die neue Generation von Informatik-Studierenden hat je nach Universität die Möglichkeit, das Thema im Studium zu lernen. Vor zehn Jahren hingegen gab es noch kein Angebot für dieses Wissen. Alle, die heute Software entwickeln, müssen daher theoretisch nachgeschult werden und idealerweise ihr Wissen in das Team weitergeben.
Deshalb bieten sich Intensivschulungen wie das „Security Champion Training“ von der Fraunhofer Academy an, in denen Mitarbeiterinnen und Mitarbeiter zu Multiplikatoren für das Thema App Security weitergebildet werden. Mit ihrem Wissen, so das Ziel, sollen sie das Thema nach der Schulung in ihre Teams tragen.
Führungskräften und Product Ownern kommt beim Thema Weiterbildung ein besonderer Stellenwert zu. Dafür sprechen auch die Ergebnisse der Studie von AppSecure.nrw: Demnach sind beide Akteursgruppen nicht ausreichend sensibilisiert, kennen ihre notwendige Rolle im Kontext der sicheren Softwareentwicklung nicht oder verfügen nicht über die hierfür notwendigen Fähigkeiten. Das Fraunhofer IEM hat daher zusätzlich ein Software Security Training für Product Owner entwickelt und konzipiert derzeit eine weitere Schulung für Führungskräfte.
Eine Aufgabe fürs ganze Team
Letztlich muss sich das Mindset ändern: App Security ist eine Aufgabe für das gesamte Team – inklusive deren Product Owner und Führungskräfte. Um den Reifegrad des agilen Teams systematisch und kosteneffizient zu steigern, sollten Unternehmen mit sogenannten Security Belts arbeiten. Analog zu Judo und Karate zeigen sie die aktuelle Software-Security-Kompetenz des Teams an – und beinhalten konkrete, kosteneffiziente Aktivitäten, die inkrementell umgesetzt und eingeführt werden können – auch während eines Sprints. Ein Produkt, das kritische Daten verarbeitet und bei dem erfolgreiche Angriffe großen Schaden verursachen können, benötigt daher ein kompetentes Team und somit einen hohen Gürtel (z.B. rot, braun oder schwarz). Dies hat jedoch zur Konsequenz, dass unter anderem Zeit und Geld in Teams mit einem derzeitig niedrigen Gürtel (z.B. gelb oder orange) investiert werden muss, um es auf dieses Niveau zu heben. Die unterschiedlichen Gürtel machen dabei den Bedarf für mehr Security-Kompetenz transparent für Teams, Product Owner und Führungskräfte. Und Apps in Zukunft hoffentlich sicherer.