Anzeige

Anzeige

VERANSTALTUNGEN

DWX-Developer Week
24.06.19 - 27.06.19
In Nürnberg

4. Cyber Conference Week
01.07.19 - 05.07.19
In Online

IT kessel.19 – Der IT Fachkongress
04.07.19 - 04.07.19
In Messe Sindelfingen

ACMP Competence Days Berlin
11.09.19 - 11.09.19
In Stiftung Deutsches Technikmuseum Berlin, Berlin

MCC CyberRisks - for Critical Infrastructures
12.09.19 - 13.09.19
In Hotel Maritim, Bonn

Anzeige

Anzeige

Programmier Code 1241533645 700

Agiles Programmieren ist für die meisten Unternehmen und Entwickler mittlerweile Standard. Die bekanntesten Frameworks (z. B. Scrum, XP usw.) werden in vielen Entwicklungsteams angewendet und bieten für Teams, Unternehmen und Kunden eine Reihe von Vorteilen. Gleichzeitig bergen sie aber auch Risiken – gerade was die Sicherheit angeht. 

Vorteile und Risiken von Softwareentwicklung

Im Vergleich zur veralteten „Wasserfallmethode“ – einem linearen Vorgehensmodell, das in aufeinander folgende Projektphasen organisiert ist und bei dem die Phasenergebnisse immer als bindende Vorgaben für die nächsttiefere Phase eingehen – bieten agile Entwicklungsmethoden meist bessere Leistungen und sind so für Unternehmen attraktiv. Insgesamt zeigen sich vier große Vorteile:

Anpassungsfähigkeit: Bei der herkömmlichen Schritt-für-Schritt-Programmierung kann es vorkommen, dass Produkte die Anforderungen der Kunden nicht exakt erfüllen und neugestaltet werden müssen, was Zeit und Geld kostet. Mit agilen Methoden hingegen arbeiten die Entwicklungsteams eng mit dem Kunden zusammen und müssen am Ende des Projekts weniger Änderungen vornehmen. Dank kürzerer Entwicklungszyklen haben Softwareentwickler zudem die Möglichkeit, Produktänderungen auch in viel späteren Stadien des Prozesses vorzunehmen als bei herkömmlichen Methoden. Durch kontinuierliches Testen und Verifizieren können neue Produkte zudem früher eingesetzt werden.

Zusammenarbeit: Durch agile Methoden (z.B. Scrum) müssen Entwickler enger zusammenarbeiten, da sie alle 24 Stunden innerhalb des Scrum Teams im Daily Scrum berichten. Im besten Fall ist hier der Product Owner mit dabei und kann auftretende Fragen zu geplanten Funktionen direkt beantworten. Dies führt zu geringeren Kommunikationsbarrieren und einem häufigeren Wissensaustausch.

Transparenz: Bei der Wasserfallmethode können Kunden das Produkt erst sehen, wenn es fertig ist. Durch agile Methoden können sich Kunden nach jedem neuen Entwicklungszyklus an dem Prozess beteiligen und Feedback geben. Zusätzlich hat der Product Owner ein höheres Wissen über den Projektstatus, da Update-Meetings viel häufiger stattfinden.

Effizienz: Mit Hilfe von agiler Softwareentwicklung können Entwicklungsteams vorhandene Probleme zu einem viel früheren Zeitpunkt des Projekts herausfinden, da neue Funktionen kurz nach ihrer Erstellung getestet werden. Unternehmen können so Zeit und Geld sparen. Darüber hinaus schaffen sie einen Mehrwert für die Kunden, um ihren Wettbewerbsvorteil langfristig zu stärken.

Gleichzeitig birgt die agile Softwareentwicklung aber auch Risiken. Ihr Ziel ist es, eine Vielzahl an Funktionen in kürzerer Zeit zu erstellen und zu integrieren. Darin besteht das Risiko, dass Sicherheitstests neuer Versionen nur am Ende eines Projekts oder nach größeren Releases durchgeführt werden. Da das Testen Zeit und Ressourcen erfordert, schreiben Entwickler häufig keine eigenen Sicherheitstests für die Software. Aus diesem Grund veröffentlichen viele Unternehmen neue Versionen der Software ohne vorherige Sicherheitsprüfung. Diese ungeprüften Versionen werden dann insbesondere im Bereich der Webanwendungen zu einem bevorzugten Ziel für Hacker. Dieser Mangel an Sicherheitskontinuität trägt dazu bei, dass täglich bis zu 30.000 Websites gehackt werden.

Kompromiss zwischen Sicherheit und Agilität?

Einerseits führt eine höhere Agilität zu einer höheren Produktionsgeschwindigkeit und mehr Features in kürzerer Zeit. Es kann jedoch auch zu Komplexität führen - dem Feind der Sicherheit. Auf der anderen Seite ist Sicherheit zum Schutz eines Unternehmens nötig, jedoch erfordert sie Zeit, um sie umzusetzen - was wiederum der Feind der Agilität ist. Wie können Unternehmen also beides kombinieren?

Drei Tipps helfen Unternehmen dabei:

  • Auf Grund der hohen Entwicklungsgeschwindigkeit bei agiler Softwareentwicklung kann nicht jeder Arbeitsschritt manuell ausgeführt werden. Häufig arbeiten agile Teams mit DevOps Methoden, bei denen Entwickler auch für den Betrieb der Software zuständig sind. Agile Build Pipelines automatisieren Schritte wie Funktionstests in der Bereitstellung der Software. In solche Build Pipelines lassen sich freie sowie kommerzielle Tools zum Erkennen von Sicherheitslücken integrieren. Statische sowie dynamische Sicherheitsscanner finden zum Beispiel veraltete Programmbibliotheken oder Sicherheitsprobleme in der entwickelten Software. Das ist wichtig, da die Sicherheit zu jedem Zeitpunkt eines Projektes beachtet werden muss, was mit manuellen Tests sehr anstrengend ist. Dank automatisierter Sicherheitsscanner können sich Entwickler auf die Erstellung von Features konzentrieren, die tatsächlich einen geschäftlichen Nutzen schaffen.
  • Sicherheit sollte nicht als zusätzlicher Arbeitsschritt betrachtet werden, der nach jeder Bereitstellung auf DevOps angewendet wird, sondern als fortlaufende Vorgehensweise, die von Anfang an in jedem Entwicklungszyklus berücksichtigt werden muss.
  • Um die Sicherheit im Unternehmen vollständig zu implementieren, müssen Führungskräfte sicherstellen, dass in jeder Abteilung der Organisation eine „Sicherheitskultur“ gelebt wird.

Vorteile der Kombination aus Agilität und Security

Neben der Sicherheitsunterstützung gibt es positive Aspekte, die nur durch die Integration von SecDevOps möglich sind:

Höhere Produktivität: Mit einem integrierten Sicherheitsframework können Entwickler effizienter arbeiten. Jede Iteration des Produkts ist gesichert. Dadurch können sich Entwickler auf die Entwicklung umsatzsteigernder Funktionen für die Webanwendung konzentrieren.

Datenschutz: Nach den Mitarbeitern sind Daten für jedes Unternehmen das wertvollste Gut. Daten sind das, was zu Kundeneinblicken und höherem Geschäftswert führt. Wenn sie den Zugriff auf Geschäftsdaten verlieren (z.B. durch einen Ransomware-Angriff), kann dies die Produktivität herabsetzen oder sogar die gesamte IT-Infrastruktur einfrieren. Dies kann zu direkten Kosten führen, da sich die meisten Unternehmen für das Lösegeld entscheiden. Ein Verlust von Kundendaten kann sogar noch schlimmer sein, da mangelndes Vertrauen der Kunden langfristig den Umsatz stark negativ beeinflusst.

Kosteneinsparungen: Die oben genannten Vorteile führen bereits zu (in)direkten Kosteneinsparungen. Eine „Regel“ der Informatik besagt, dass Fehler in jeder Phase der Softwareentwicklung, in der Sie gefunden werden 10x höhere Kosten verursachen als in der Phase davor (Planung, Entwicklung, Betrieb, …). Die Implementierung von IT-Sicherheit spart somit Geld, da sie Sicherheitslücken in einer früheren Phase der Entwicklung aufdeckt und diese somit behoben werden können.

Janosch Maier, Gründer von Crashtest Security, https://crashtest-security.com/

 
 

GRID LIST
Open Source

5 Grundsätze sicherer Open Source Software

Kaum ein Software-Projekt beginnt heute noch auf der grünen Wiese. Das können sich…
Tb W190 H80 Crop Int B490a1415bc3eedf623063b55a5a78d4

Die Blockchain im Gebrauchtsoftware-Markt

Die Blockchain ist zurzeit in aller Munde. Insbesondere im Zusammenhang mit dem Kauf…
Street Sign Best versus Worst

Der beste Weg, Systeme zu verbinden

Die Zeiten monolithischer Softwareanwendungen sind vorbei. Ohne Vernetzung kommt heute…
Tb W190 H80 Crop Int B2e0719610fc46a65e5292d0ac51a1df

Verpassen Software-Hersteller ihre Zukunft?

Der Markt für Enterprise Application Software (EAS), gilt bisher als ruhiger Luftraum.…
Tb W190 H80 Crop Int 34728d417354d8517e727334ae0c6671

Container-Monitoring mit Foglight Container Management

Quest Software hat Foglight Container Management der Öffentlichkeit vorgestellt. Die neue…
Software Audit

Software Audit – Wenn der gefürchtete „Notification Letter“ eintrifft

Software Audits sind in der Branche aktueller denn je. Die Anzahl an Software Audits…