Security und Innovation - Leichtgewichtig: Security in agilen Entwicklungsprojekten
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
03/2020 Schwerpunkt: IT als Innovationstreiber Security und Innovation Leichtgewichtig: Security in agilen Entwicklungsprojekten Durch digitale Innovationen dringt die IT in alle Branchen und Lebensbereiche vor. Qualität und insbesondere IT-Sicherheit werden in Softwareentwicklungsprojekten dabei oft bewusst oder unbewusst vernachlässigt. Bei bekannten Beispielen aus dem IoT-Bereich mussten sogar Produkte aufgrund von Sicherheitslücken vom Markt genommen werden. Bei genauer Betrachtung sind häufig offensichtliche und einfach zu vermeidende Fehler in der Entwicklung die Ursache. Moderne agile Softwareentwicklung und IT-Sicherheit scheinen im Widerspruch zu stehen. Mit einem leichtgewichtigen Ansatz und effizienten Techniken kann es jedoch gelingen, nachhaltige IT-Innovationen zu entwickeln. Im Folgenden zeigen wir, wie mit einem leichtgewichtigen Ansatz und effizienten Techniken und Methoden, die Sicherheit in IT-Innovationsprojekten von Anfang an verbessert werden kann. Sichere Softwareentwicklung in einem agilen Entwicklungs prozess Die Berücksichtigung von Security galt lange Zeit als nachgelagerte Aufgabe in Softwareprojekten – oder wurde gerne an zentrale Infrastrukturen wie Firewalls delegiert. Dadurch wird jedoch nicht nur Nicht zuletzt durch die Globalisierung sind Kinder-Smartwatches. Die innovative eine große Chance verpasst, frühzeitig die stehen Wachstum, Wohlstand und inter- Idee, Kinder per GPS- oder Mobilfunk- richtigen Weichen für sicherere Software nationale Wettbewerbsfähigkeit in en- Funktion zu überwachen und damit vor zu stellen, sondern auch akzeptiert, dass gem Zusammenhang mit technologischer möglichen Gefahren zu schützen, wurde oft mit hohem Zeit- und Kostenaufwand Innovationsfähigkeit. In den vergange- unter anderem durch die Sicherheitslücke, größere Korrekturen an wesentlichen nen Jahren hat sich ein immer schneller Personen und deren Umgebung heimlich Komponenten oder an der Architektur wachsender Innovationswettbewerb ent- abzuhören und damit die Uhr ohne große durchgeführt werden müssen. Insbeson- wickelt, der Start-ups, kleine und mittlere Probleme in eine Wanze zu verwandeln dere in Innovationsprojekten ist das fatal, Unternehmen und sogar Großunterneh- [Sch19], infrage gestellt. weil kurze Entwicklungszeiten und gerin- men mit traditionellen Geschäftsmodellen Wie in dem genannten Beispiel mangelt ge Kosten hier eine besondere Bedeutung herausfordert. Der daraus resultierende es häufig grundsätzlich an dem Bewusst- haben. Schnell kann ein erstes sogenann- Druck, innovative Produkte in immer sein, dass hier Schwachstellen übersehen tes Minimum Viable Product (MVP) um kürzeren Zyklen auf den Markt zu brin- werden können, die sich erst im Endpro- ein Vielfaches teurer werden und später gen, birgt jedoch eine Reihe von Risiken. dukt zeigen. Die eigene Verantwortlich- verfügbar sein, weil kurz vor dem Rollout Intelligente Kühlschränke, Auswertung keit muss stärker in den Fokus gelangen. noch Compliance- und Security-Anfor- von Gesundheitsdaten, Smarte Lösungen Vor allem dadurch, dass inzwischen auch derungen umgesetzt und schwerwiegen- in der Logistik und vieles mehr – immer Behörden bezüglich der sich häufenden de Sicherheitslücken geschlossen werden häufiger entstehen Produkte aus oftmals Sicherheitsvorfälle alarmiert sind, können müssen. auch 3rd Party-Kompositionen verschie- die Folgen für das Unternehmen äußerst Sichere Softwareentwicklung bedeutet, dener Hard- und Softwarekomponenten. unangenehm werden. Security von Beginn an und in jedem Es gibt mittlerweile eine Reihe von Ge- Schritt zu integrieren. Dies gilt grundsätz- Security und Innovation – setzen, Leitlinien und Standards (u. a. lich unabhängig vom verwendeten Soft- Awareness [BSI13], [BSI19]), an denen sich Unter- wareentwicklungsprozess. Tabelle 1 stellt nehmen bei der Entwicklung von IT- die Sicherheitsaktivitäten dar, die auch Inzwischen sind Nachrichten über Sicher Systemen für einen durchschnittlichen in einem agilen Entwicklungsprozess be- heitslücken und Angriffe auf diese intel- Schutzbedarf orientieren können bezie- rücksichtigt werden sollten. ligenten neuen Lösungen an der Tages- hungsweise deren Vorgaben eingehalten Statt Security auf einen separaten Sprint ordnung. Beispiele, die bereits in 2017 werden müssen. Dies gilt insbesondere zu schieben, sollten Security-Aktivitäten in die Presse gerieten und die folgenden auch für den Fall, dass 3rd Party-Kompo- zusammen mit der schrittweisen Umset- 1 ½ Jahre weiter für Schlagzeilen sorgten, nenten eingebaut werden. zung von Geschäftsanforderung als Be- 21
03/2020 Schwerpunkt: IT als Innovationstreiber standteil eines normalen Sprints erfolgen. Aktivitäten im Sprint Security-Aktivitäten Damit können abstrakte Sicherheitsanfor- derungen schrittweise konkretisiert, um- Anforderungen definieren, Risiko-Profil erstellen und Sicherheitsrisiken identifizieren Compliance- gesetzt und validiert werden. Die direkte priorisieren und planen Anforderungen definieren Rückkopplung am Ende des Sprints zeigt Sicherheitsanforderungen ableiten sofort, ob Security-Maßnahmen effektiv waren, und bietet die Möglichkeit der Architektur und Design festlegen Sichere Design Principles und Patterns berücksichtigen Bedrohungen analysieren kontinuierlichen Verbesserung. Auch die Schwachstellen einzelner Komponenten (3rd Party) identifizieren Automatisierung beim agilen Vorgehen Sicherheitsmaßnahmen definieren unterstützt die Umsetzung und Validie- rung von Sicherheitsmaßnahmen erheb- Codierung Sicherheitsanforderungen umsetzen lich, wenn Security durch automatisierte Bewährte Methoden für sichere Codierung berücksichtigen Testfälle und die Einbindung entsprechen- Statische Codeanalyse-Tools einsetzen der Codeanalyse-Tools automatisch be- Punktuelle Code-Reviews durchführen rücksichtigt werden. Aufwendige Quality Gates sind dann nicht mehr notwendig. Test Sicherheitstestfälle definieren und soweit möglich automatisieren Dynamische Codeanalyse-Tools einsetzen Abbildung 1 zeigt einen SCRUM basierten Penetrationstests durchführen Entwicklungsprozess, der um wesentliche Security-Aktivitäten (blau) ergänzt wurde. Auslieferung Automatisierte Security-Tests in Build-Pipeline integrieren Unternehmensspezifische Vorgaben auf Codesignatur berücksichtigen Basis des aktuellen Sicherheitskonzepts, Sichere Konfiguration definieren gültiger Gesetze, Regularien und Stan- dards können als Rahmenwerk für alle Tabelle 1: Sicherheit in jedem Entwicklungsschritt IT-Projekte dienen. Die Erarbeitung und Aktualisierung dieses Rahmenwerks stel- Zum Security-Know-how von Architek- Bedrohungsmodell sollte mit Weiterent len eine wertvolle Grundlage dar, die es ten und Entwicklern gehört das Wissen wicklung der Architektur Schritt für den Projekten ermöglicht, erste Compli- um die Anwendung von Secure Design Schritt aktualisiert werden. ance- und Security-Anforderungen bereits Principles und Secure Coding Guidelines. Aus den identifizierten und bewerte- zu Beginn des Projekts zu identifizieren. Hilfreiche Unterstützung liefern hier aner- ten Bedrohungen lassen sich weitere Si- Die Festlegung des individuellen Schutz- kannte Best Practices wie die OWASP Top cherheitsanforderungen definieren oder bedarfs für das Projekt (Risiko-Profil) ist 10 [OWASPTT]. konkretisieren. Die wiederum können wichtig, um die Anforderungen weiter zu Die Bedrohungsanalyse mittels Bedro- bei entsprechender Priorität in einem konkretisieren sowie die Risikobewertung hungsmodell stellt eine effiziente Technik der nächsten Sprints umgesetzt werden. einzelner Anforderungen und damit deren dar, um die individuellen Bedrohungen So kann man abstrakte Anforderungen Priorisierung zu unterstützen. Priorisierte der Anwendung bereits beim Architektur- Schritt für Schritt konkretisieren und va- Sicherheitsrisiken und Sicherheitsanfor- entwurf zu identifizieren und so sicheres lidieren. derungen sollten sowohl im Planning als Design von Beginn an auf dem Radar zu Durch automatisierte Tests auf Basis auch in der Definition of Done berück- haben. Dies gilt insbesondere auch für konkreter Sicherheitsanforderungen und sichtigt werden. verwendete 3rd Party-Komponenten. Das Akzeptanzkriterien können Sicherheits- Abb. 1: Secure Agile (SCRUM basiert) 22
www.objektspektrum.de Abb. 2: Compliance und Security im Lean-Start-up-Prozess maßnahmen kontinuierlich validiert und die Produktivumgebung gelten, gerecht Gegenteil: Innovationen haben häufig verbessert werden. Das schafft Trans- werden. eine besondere Aufmerksamkeit. parenz über die aktuelle Sicherheitslage Die wesentlichen Compliance- und Si- Im Folgenden wollen wir anhand eines der Anwendung und ermöglicht eine sehr cherheitsanforderungen von Beginn an zu einfachen Beispiels zeigen, wie man in bewusste Entscheidung für oder gegen kennen, ist in jedem Fall sinnvoll. Diese drei Schritten die wesentlichen Bedro- die Umsetzung bestimmter Sicherheits- Anforderungen könnten im Einzelfall hungen identifiziert und daraus konkrete, maßnahmen. Der Einsatz statischer und auch das Produkt oder einzelne Features umsetzbare und testbare Sicherheitsanfor- dynamischer Codeanalyse-Tools kann beeinflussen, weil sie zum Beispiel nur mit derungen ableitet. die Überprüfung des Codes auf bekann- hohem Aufwand in Sicherheitsmaßnah- te Design-Fehler deutlich beschleunigen. men umzusetzen sind oder aber auch ein Beispiel Smartwatch – Auch der Aufwand, in eine „sichere“, au- Alleinstellungsmerkmal und damit einen ein GPS-Tracker für Kinder tomatisierte Pipeline von der Entwicklung Wettbewerbsvorteil darstellen. Nur wer zum Betrieb zu investieren, zahlt sich mit die Anforderungen und die damit ver- Das Produkt besteht vereinfacht aus drei jedem weiteren Sprint aus. bundenen Risiken frühzeitig kennt, kann Komponenten: bewusst entscheiden, welche Risiken wie Leichtgewichtiger Ansatz adressiert werden sollen. ■ der Uhr (GPS-Tracker), Ähnlich sieht es mit der Bedrohungsanaly- ■ einem Webserver (bestehend aus Front für Innovationsprojekte se aus. Auch hier ist es ein Vorteil, die mit end, Backend und API), der mit der Uhr IT-Innovationsprojekte folgen meist ei- der angedachten Lösung einhergehenden kommuniziert und die Daten speichert, nem geschäftsorientierten Ansatz, wie Bedrohungen frühzeitig zu kennen und zu ■ einer mobilen App, die auf einem dem Lean-Start-up-Vorgehen. Dabei ste- bewerten. Bedrohungen mit einem hohen Smartphone, Tablet oder Browser läuft hen die Konkretisierung einer Business- Bedrohungsniveau können bei der Archi- und über die die Uhr konfiguriert und Idee, die möglichst frühzeitige Validierung tekturentwicklung schrittweise berück- abgefragt werden kann. der Idee beim Kunden und deren konti- sichtigt werden. Dies erspart aufwendige nuierliche Verbesserung und Konkreti- Umbauten kurz vor dem Rollout. Auch Benutzer: Kind, Eltern sierung im Vordergrund. Abbildung 2 ein MVP sollte die hoch priorisierten Anwendungsfälle: skizziert diesen Prozess. Die eigentliche Compliance- und Security-Anforderun- IT-Entwicklung als Teil dieses Prozesses gen adressiert haben und auf einer soliden ■ Smartwatch über die mobile App kon- folgt meist einem agilen Vorgehen wie Architektur aufbauen, die keine grund- figurieren, SCRUM. sätzlichen Design-Fehler enthält. Weiter ■ Standort der Uhr erfragen, Auch wenn vor allem in den ersten Ite- hin sollten das Projektteam und das Ma- ■ Funktionen der Uhr aktivieren oder de- rationen sehr zielgerichtet und mit mi- nagement Transparenz über mögliche aktivieren. nimalem Zeit- und Kostenaufwand die Bedrohungen haben. Als hoch bewertete Geschäftsidee gefunden und validiert Sicherheitsrisiken sollten nicht nur dem Schritt 1: werden soll, darf der Zeitpunkt nicht Management bekannt, sondern auch in Sicherheitsziele formulieren verpasst werden, wo Compliance und einem MVP adäquat adressiert sein. Der Security beginnen, eine Rolle zu spie- Reputations- oder finanzielle Schaden, Aus der DSGVO und der Tatsache, dass len. Spätestens mit dem MVP muss die der durch einen Sicherheitsvorfall entste- das Hauptziel der Smartwatch der Schutz IT-Anwendung den gültigen Qualitäts- hen kann, ist grundsätzlich nicht geringer, des Kinds ist, lassen sich folgende Sicher- und Sicherheitsstandards, die auch für nur weil es sich um ein MVP handelt. Im heitsziele zum Schutz der personenbezo- ) Aus der DSGVO ergeben sich noch weitere Anforderungen, wie die Datenschutzerklärung und die Löschung der Daten, auf die hier nicht weiter eingegangen wird. 1 23
03/2020 Schwerpunkt: IT als Innovationstreiber Abb. 3: IoT-Sicherheit am Beispiel Smartwatch genen Daten sowie vor dem Missbrauch speicher und Vertrauensgrenzen (rot ge- Aufruf der API (als Security Story) durch Dritte ableiten: strichelte Linie). Zusätzlich sind beispiel- Als Benutzer einer Smartwatch möchte haft drei Bedrohungen eingezeichnet. ich, dass die Smartwatch nur von au- ■ Vertraulichkeit und Integrität der per- Ziel der Bedrohungsanalyse ist es, an- thentifizierten und autorisierten Personen sonenbezogenen Daten (Name, GPS- hand des Modells Bedrohungen zu iden- aufgerufen wird, damit Dritte die Smart- Koordinaten, Mobilnummer)1, tifizieren, diese dann zu bewerten und watch nicht steuern oder abfragen kön- ■ Verfügbarkeit der Abfrage des Stand- entsprechende Maßnahmen abzuleiten. nen. orts von mindestens 95 Prozent (7x24) Für die Bewertung gibt es verschiedene bei vorhandener Internet-Connectivity, Methoden, zum Beispiel DREAD von Akzeptanzkriterien: ■ Authentizität der Abfrage und Konfi- Microsoft [Infosec14] oder OWASP Risk guration der Smartwatch. Rating [OWASPRR]. Sie berücksichti- ■ Stelle sicher, dass die Kommunikation gen unterschiedliche Faktoren, die das zwischen dem Webserver und dem Schritt 2: Bedrohungen Schadensausmaß, die Ausnutzbarkeit der Smartphone Ende-zu-Ende verschlüs- Schwachstelle und mögliche Angreifer be- selt erfolgt. identifizieren und bewerten treffen. ■ Stelle sicher, dass die Kommunikati- Ein Bedrohungsmodell hilft, Bedrohun- Im Beispiel wurden drei Bedrohungen on zwischen dem Webserver und dem gen zu identifizieren. Das Modell stellt die (siehe Tabelle 2) identifiziert und mit ei- Browser TLS 1.3 verschlüsselt erfolgt. Komponenten und Schnittstellen der Ar- nem hohen Bedrohungsniveau bewertet, ■ Stelle sicher, dass nur authentifizierte chitektur sowie die wesentlichen Daten- weil sie einerseits verbreitet und leicht Benutzer auf den Webserver zugreifen flüsse und Prozesse der Anwendung dar. ausnutzbar sind, und andererseits die zu- dürfen. Zusätzlich werden sogenannte Vertrau- vor definierten Sicherheitsziele verletzen. ■ … ensgrenzen skizziert, die eine Änderung der Vertrauensebene andeuten. Häufig Schritt 3: Security Stories Abhören der GPS-Daten lassen sich Bedrohungen an Vertrauens- (als Security Story) und Akzeptanzkriterien ableiten grenzen lokalisieren. Als Benutzer einer Smartwatch möchte Abbildung 3 zeigt ein Bedrohungsmo- Aus der Bedrohungsanalyse lassen sich ich, dass die Smartwatch meine Daten dell für das Smartwatch-Beispiel. Das weitere Sicherheitsanforderungen ablei- verschlüsselt an den Webserver überträgt, Diagramm ist ähnlich zu dem eines Da- ten und die zuvor formulierten Ziele in damit Dritte die Daten auf dem Über- tenflussdiagramms aufgebaut. Es enthält umsetzbare und testbare Anforderungen tragungsweg nicht abhören und für ihre Benutzer, Prozesse, Datenflüsse, Daten- herunterbrechen. Zwecke missbrauchen können. Bedrohung Schnittstelle Maßnahme Bedrohungslevel API-Aufuf: API des Webservers Authentifizierung und Autorisierung hoch API des Webservers kann durch unautorisierte beim Webserver User/Systeme aufgerufen werden Abhören der GPS-Daten: Schnittstelle: Smartwatch–Webserver Verschlüsselung der Daten beim hoch Lokationsdaten und personenbezogene Daten Schnittstelle: Mobile App–Smartwatch Datentransfer und bei der Datenspeicherung können bei der Übertragung von und zum Webserver abgehört werden Unerlaubter Zugriff auf andere Smartwatch Schnittstelle zwischen mobile App oder Nicht-vorhersagbare Smartwatch-ID hoch Webserver und beliebiger Smartwatch und autorisierter Zugriff Tabelle 2: Beispielhafte Bedrohungen 24
www.objektspektrum.de Die Community-Konferenz für Softwarearchitekten 14. + 15. Oktober 2020 | NH Hotel München www.software-architecture-gathering.de @sag_conference | #SAGconf 25
03/2020 Schwerpunkt: IT als Innovationstreiber Literatur & Links [BSI13] Leitfaden zur Entwicklung sicherer Webanwendungen, Bundesamt für Sicherheit in der Informationstechnik, 2013, siehe: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/Studien/Webanwendungen/Webanw_Auftragnehmer.pdf [BSI19] Edition 2019 des IT-Grundschutz-Kompendiums, Bundesamt für Sicherheit in der Informationstechnik, 2019, siehe: https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Grundschutz/Kompendium/IT_Grundschutz_Kompendium_Edition2019.pdf [Infosec14] Qualitative Risk Analysis with the DREAD Model, Infosec, 21.5.2014, siehe: https://resources.infosecinstitute.com/qualitative-risk-analysis-dread-model/ [OWASPRR] Risk Rating Calculator, OWASP, siehe: https://www.owasp-risk-rating.com/ [OWASPTT] Top 10 Web Application Security Risks, OWASP, siehe: https://owasp.org/www-project-top-ten/ [Sch19] F. A. Scherschel, Kinder-GPS-Uhren millionenfach ausspionierbar, heise, 9.9.2019, siehe: https://www.heise.de/security/meldung/China-Schrott-Kinder-GPS-Uhren-millionenfach-ausspionierbar-4516423.html Akzeptanzkriterien: ■ Der Angreifer kann die Smartwatch Beitrag zur Qualität und damit auch zum unter Kenntnis der ID ansteuern, ohne Erfolg einer IT-Innovation leisten. Neben ■ Stelle sicher, dass die zu übertragen- dass eine weitere Autorisierung erfor- einem definierten Secure Development den Daten Ende-zu-Ende verschlüsselt derlich ist. Lifecycle sind unternehmensspezifische sind. ■ … Vorgaben, Best Practices und leichtgewich- ■ Stelle sicher, dass die Smartwatch die tige Methoden von unschätzbarem Wert. Lokationsdaten bei fehlender Mo- Auf Basis dieser hier beispielhaft formu- Betrachtet man die eingangs erwähnten bilfunkverbindung verschlüsselt zwi- lierten Security und Evil Stories können und vielfach aktuellen Probleme, denen schenspeichert. Sicherheitsanforderungen zusammen mit sich die Hersteller innovativer Produkte ■ Stelle sicher, dass die Smartwatch nur funktionalen Anforderungen in einem und Dienstleistungen stellen müssen, so Daten an den Webserver mit dem Sprint umgesetzt und getestet werden. muss auch ein besonderes Augenmerk auf DNS-Namen xyz überträgt und dass Akzeptanzkriterien bieten die Basis für die Sicherheit der verwendeten 3rd Party- die DNS-Abfrage abgesichert ist (z. B. eine Testautomatisierung von Beginn an. Komponenten gelegt werden. Somit müs- DNSSEC). sen die Aussagen der Hersteller bezüglich ■ … Fazit möglicher Schwachstellen einzelner Kom- ponenten frühzeitig betrachtet und geeig- Die oben beispielhaft dokumentierten Sicherheitsaktivitäten lassen sich auch in net validiert werden. Security Stories und Akzeptanzkriterien einem agilen IT-Innovationsprojekt effek- Auch wenn der Druck, sichere IT-Inno- sollen das Prinzip darstellen, wie man tiv umsetzen. Eine wichtige Vorausset- vationen zu entwickeln, scheinbar noch aus erkannten Bedrohungen konkrete zung dabei ist die Security Awareness im nicht groß genug ist, ist gerade in der Anforderungen formulieren kann. Sie stel- Projektteam. Wenn Security als integraler agilen Softwareentwicklung ein enormer len nur einen ausgewählten Ausschnitt Bestandteil des Entwicklungsprozesses be- Sicherheitsgewinn mit vergleichsweise ge- dar. griffen wird, kann es einen signifikanten ringem Aufwand erreichbar. || Formuliert man Sicherheitsanforderun- gen aus der Perspektive des Angreifers, spricht man von einer Evil Story. Dieses Die Autorinnen Vorgehen bietet sich für seltenere, indivi- duelle Bedrohungsszenarien an. Sinnvoll ist es auch, eine Charakterisierung des Angreifers über eine Persona zu entwi- ckeln. Dies hilft bei der Detaillierung der Evil Story. Zugriff auf andere Uhren (als Evil Story) Als Angreifer eines Smartwatch-Herstel- lers möchte ich auf Daten beliebiger Uh- ren des Herstellers zugreifen, damit ich Dagmar Stefanie Moser Prof. Dr. rer. nat. die Daten entwenden und die Reputation (dm@blueheads.de) Sabine Rathmayer des Herstellers schädigen kann. Diplom-Informatikerin (TUM) (sabine.rathmayer@hdbw-hochschule.de) ist IT Security-Beraterin bei blueheads und Diplom-Informatikerin (TUM) Akzeptanzkriterien: bietet Consulting, Coaching und Training ist Professorin für Wirtschaftsinformatik im Bereich Informationssicherheit mit und Cyber Security an der Hochschule der ■ Beliebige Uhren sind Geräte des Her- Schwerpunkt Sichere Softwareentwicklung. Bayerischen Wirtschaft – HDBW. Außerdem stellers, die Daten an den Webserver Als langjährige Senior IT-Architektin hat sie bietet sie IT-Beratung, Consulting, Coaching mit DNS-Namen xyz versenden. neben der Informationssicherheit fundierte und Training im Bereich Security Awareness ■ Der Angreifer eines Smartwatch-Her- Kenntnisse und umfangreiche Erfahrung in bei blueheads an. Als langjährige IT-Bera- stellers ermittelt die IDs der Uhren Softwareentwicklungs- und IT-Innovations- terin hat sie umfangreiche Erfahrung über ohne größere Entwicklungsaufwände, projekten im Versicherungs-, Banken- und Sicherheitsaspekte in Softwareentwicklungs- zum Beispiel durch den Einsatz von Telekommunikationsumfeld. projekten und IT-Innovationsprojekten. Fuzzing-Tools. 26
Sie können auch lesen