Sichere Entwicklung sollte das Immunsystem von AppSec sein

Veröffentlicht am 24. August 2021
von Secure Code Warrior
FALLSTUDIE

Sichere Entwicklung sollte das Immunsystem von AppSec sein

Veröffentlicht am 24. August 2021
von Secure Code Warrior
Ressource anzeigen
Ressource anzeigen

Als Experte für Anwendungssicherheit ist es Ihre Aufgabe, die Cybersicherheit der Anwendungen Ihres Unternehmens zu gewährleisten. Sie sind jedoch nicht für das Schreiben des Codes verantwortlich, auf dem die Anwendung läuft. Das sind die Ingenieure im Entwicklungsteam. Wie können Sie also sicherstellen, dass sie diese Systeme unter Berücksichtigung der Sicherheit entwickeln? 

Höchstwahrscheinlich tun Sie einige oder sogar alle der folgenden Dinge: 

  • Überprüfung des gesamten Codes auf Sicherheitsmängel und Rückmeldung an das Entwicklungsteam zur Behebung dieser Mängel. 
  • Durchsetzung eines strengen Peer-Review-Prozesses während des gesamten Lebenszyklus Ihrer sicheren Entwicklung. 
  • Regelmäßige Durchführung von Anwendungs assessment/ Penetrationstests durch interne oder externe Sicherheitsteams.
  • Implementierung von Scan-Tools zum Aufspüren von Schwachstellen.

Das sind tolle bewährte Verfahren, aber sie sind auch teuer und ähneln der Einnahme von Antibiotika bei jeder Krankheit. Das ist nicht nur mit hohen Kosten verbunden, sondern verliert auch an Wirksamkeit und kann mit der Zeit Ihr Immunsystem schwächen. 

Wie können Sie sicherstellen, dass der Code, den die Entwickler ausliefern, überhaupt sicher geschrieben ist? 

Abgesehen von der sicheren Kodierung sollten Sie zunächst einmal darüber nachdenken, wie Menschen lernen. Die meisten von uns sind visuelle Lerner und lernen durch Handeln. Und doch wird die Schulung für sicheren Code oft als eine "Abhak-Aktivität" angeboten und ist für die tägliche Arbeit eines Entwicklers nicht relevant. Sie dienen dazu, den Nachweis zu erbringen, dass die Entwickler an einer Sicherheitsschulung teilgenommen haben, die häufig den Industriestandards entspricht, und nicht dazu, dass die Entwickler das Wissen tatsächlich behalten, geschweige denn Spaß am Lernprozess haben. 

Eine andere Art und Weise, wie der Mensch lernt, ist die, dass er aus Fehlern lernt, so wie es auch unser Immunsystem tut. T-Zellen erinnern sich daran, welche Art von Krankheitserregern sie in der Vergangenheit angetroffen und erfolgreich ausgerottet haben, so dass sie sich in Zukunft vor ihnen schützen können. Dies ist genau die Rolle, die die Entwickler in Ihrem sicheren SDLC spielen sollten.

Es ist unrealistisch, von ihnen zu erwarten, dass sie keine Fehler machen, aber Sie können sie so vorbereiten, dass sie in der Lage sind, Codierungsmuster zu erkennen, die in der Zukunft zu Sicherheitslücken führen werden. 

Dies ist auch der Grund, warum ein robuster Peer-Review-Prozess so wirkungsvoll ist. Nur weil ein Entwickler eine Sicherheitslücke nicht bemerkt, heißt das nicht, dass ein anderer dies auch nicht tut. Und je besser das Entwicklungsteam als Ganzes geschult ist, desto wahrscheinlicher ist es, dass Schwachstellen aufgespürt werden und es nie in die Produktion schaffen. 

Software-Schwachstellen sind wie Krankheitserreger

Software-Schwachstellen sind wie Krankheitserreger in dem Sinne, dass man sich an sie erinnern muss, um sie bekämpfen zu können. Bei Krankheitserregern muss unser Immunsystem oft mehrmals mit ihnen konfrontiert werden, bevor es sich daran erinnert, wie es sie bekämpfen kann, um eine schwere Krankheit oder Schlimmeres zu vermeiden. 

Ein erfolgreicher Cyberangriff durch anfällige Software kann ein Unternehmen ernsthaft lähmen oder zerstören. Wenn Entwickler jedoch zunächst in einer kontrollierten Umgebung mit Software-Schwachstellen konfrontiert werden, können sie sich gegen diese Bedrohungen immunisieren, indem sie ihr Wissen und ihre Fähigkeiten im Bereich der sicheren Programmierung erweitern und regelmäßig üben. 

Entwickler in einer kontrollierten Umgebung mit Sicherheitslücken konfrontieren

Wir können uns nie ganz davor schützen, krank zu werden, aber wir können einiges tun, um unser Immunsystem zu stärken und so gesund wie möglich zu bleiben. Regelmäßige Bewegung, gesunde Ernährung und viel Schlaf gehören zu den Lebensgewohnheiten, die gemeinhin mit einem starken Immunsystem in Verbindung gebracht werden. Aber all diese Dinge erfordern ein wenig Anstrengung und müssen kontinuierlich durchgeführt werden. Wenn Sie eine Woche lang jeden Tag joggen gehen oder einen Monat lang auf Alkohol verzichten, wird sich das kaum auf Ihre allgemeine Gesundheit auswirken. Es ist auch nicht ratsam, am ersten Tag, an dem wir mit dem Laufen beginnen, gleich 10 km zu laufen. Wir müssen unser Herz und unsere Muskeln erst an die Bewegung gewöhnen. Wir wissen auch, dass wir ein wenig experimentieren müssen, bis wir ein gutes Gleichgewicht für unseren Körper und gesunde Lebensmittel und Übungen finden, die wir lieben.

Bei der sicheren Softwareentwicklung ist das nicht viel anders. Man lernt im Laufe der Zeit und mit der Praxis, und die Entwickler brauchen die gleiche fortlaufende Schulung, um ihre Fähigkeiten zur sicheren Programmierung regelmäßig zu verbessern. Ganz zu schweigen davon, dass sich die Softwareentwicklung ständig weiterentwickelt und anpasst, was bedeutet, dass sich auch die Schwachstellen ändern. Aus diesem Grund reicht ein einfacher Schulungskurs nicht aus. Die Entwickler müssen sich regelmäßig weiterbilden, um mit den potenziellen Bedrohungen vertraut zu sein und sich angemessen gegen sie zu schützen. 

Herdenimmunität innerhalb des Entwicklungsteams anstreben

Eine einzelne Person kann nicht alle Sicherheitsprobleme verhindern. Es ist großartig, Sicherheitsbeauftragte im Team zu haben, aber um den besten Schutz zu erhalten, hat Ihr Unternehmen umso bessere Chancen, je mehr Leute sich mit Sicherheitslücken und deren Vermeidung auskennen. Auch hier ist es nicht viel anders, als wenn das Immunsystem verschiedene Arten von T-Zellen für verschiedene Zwecke hat. Jeder einzelne Entwickler ist Teil eines Teams, das für Sicherheit sorgt. Wenn sie in die Lage versetzt werden, Verantwortung zu übernehmen, es gut zu machen und sogar Spaß daran zu haben, dann können Sie innerhalb des Entwicklungsteams eine Herdenimmunität gegen Cyber-Bedrohungen schaffen.

Herdenimmunität gegen Cyber-Bedrohungen innerhalb des Entwicklungsteams schaffen

Sicherheit durch wiederholte Exposition in den Vordergrund rücken

Unser Gehirn lernt auf eine ähnliche Weise wie unser Immunsystem. Der deutsche Psychologe Hermann Ebbinghaus war ein Pionier auf dem Gebiet des Gedächtnisses und des Lernens. Er kam zu dem Schluss, dass Lernen im Laufe der Zeit und in mehreren Lernsitzungen erfolgen muss. In der Schule wird von uns nie erwartet, dass wir neues Wissen nach der ersten Einführung behalten. Zuerst werden uns die Informationen präsentiert, dann üben wir sie unter Anleitung, und dann üben wir sie selbständig. Und selbst wenn wir es gut genug gelernt haben, um eine Prüfung zu bestehen, werden die Informationen in der Regel nach kurzer Zeit wieder vergessen, wenn wir das Wissen, für das wir Zeit und Mühe aufgewendet haben, nicht regelmäßig anwenden. Wie viele von uns können von sich behaupten, dass sie sich an ihr Schulfranzösisch erinnern?

Wie können wir also glauben, dass ein einziger Tag, an dem wir uns Folien ansehen und jemandem zuhören, der über Sicherheit spricht, tatsächlich dazu führt, dass die anwesenden Entwickler sicherer programmieren?

Die immer wiederkehrenden Schwachstellen zeigen uns, dass dies einfach nicht funktioniert. 

Wie erreichen Sie eine sichere Entwicklungsimmunität?

Die Antwort liegt in unserer Natur. Unser Körper und unser Geist funktionieren auf die gleiche Weise und bieten wunderbare Lösungen für Probleme, solange wir mit ihnen und nicht gegen sie arbeiten. 

Um zu gewährleisten, dass Ihre Anwendungen sicher sind, müssen Sie zunächst die Entwickler darin schulen, sicheren Code zu schreiben. Andernfalls werden die AppSec-Mitarbeiter weiterhin ihre gesamte Zeit damit verbringen, den gesamten Code auf Sicherheitsmängel zu überprüfen und die immer gleichen Schwachstellen an die Entwickler zu melden, die dann schnell behoben werden, ohne dass sie etwas daraus lernen. Bei der nächsten Version wird das Ganze dann wieder von vorne losgehen.

Lassen Sie uns also noch einmal wiederholen.

Gesundes Sicherheits-Immunsystem

Wenn Sie mit Ihren Entwicklungsmanagern zusammenarbeiten, um dies zu erreichen, implementieren Sie nicht nur einen sicheren SDLC und erfüllen die Anforderungen an Sicherheitsschulungen für die Einhaltung der Vorschriften, sondern Sie haben auch einen echten Einfluss auf den Entwicklungsprozess. Als Krönung des Ganzen wird AppSec nicht mehr auf wiederkehrende Schwachstellen stoßen und diese an die Entwicklungsteams zurückmelden, und die Entwickler werden weniger Zeit mit deren Behebung verbringen. Das bedeutet, dass sie mehr Zeit für die Entwicklung und Verbesserung der großartigen Software aufwenden können, die unsere Welt besser macht. 

Sind Sie bereit, Ihr Entwicklungsteam weiterzubilden? Dann buchen Sie jetzt eine Demo bei uns.

Ressource anzeigen
Ressource anzeigen

Autor

Secure Code Warrior

Secure Code Warrior baut eine Kultur von sicherheitsorientierten Entwicklern auf, indem es ihnen die Fähigkeiten vermittelt, sicher zu programmieren. Unser Flaggschiff Agile Learning Platform bietet relevante fähigkeitsbasierte Pfade, praktische Übungen missions und kontextbezogene Tools, mit denen Entwickler ihre Fähigkeiten zum Schreiben von sicherem Code schnell erlernen, aufbauen und anwenden können.

Sie wollen mehr?

Tauchen Sie ein in unsere neuesten Erkenntnisse über sichere Kodierung im Blog.

Unsere umfangreiche Ressourcenbibliothek zielt darauf ab, die menschliche Herangehensweise an eine sichere Weiterbildung im Bereich der Programmierung zu stärken.

Blog ansehen
Sie wollen mehr?

Holen Sie sich die neuesten Forschungsergebnisse zur entwicklergesteuerten Sicherheit

Unsere umfangreiche Ressourcenbibliothek ist voll von hilfreichen Ressourcen, von Whitepapers bis hin zu Webinaren, die Ihnen den Einstieg in die entwicklungsorientierte sichere Programmierung erleichtern. Erforschen Sie sie jetzt.

Ressourcendrehscheibe

Sichere Entwicklung sollte das Immunsystem von AppSec sein

Veröffentlicht am 24. August 2021
Unter Secure Code Warrior

Als Experte für Anwendungssicherheit ist es Ihre Aufgabe, die Cybersicherheit der Anwendungen Ihres Unternehmens zu gewährleisten. Sie sind jedoch nicht für das Schreiben des Codes verantwortlich, auf dem die Anwendung läuft. Das sind die Ingenieure im Entwicklungsteam. Wie können Sie also sicherstellen, dass sie diese Systeme unter Berücksichtigung der Sicherheit entwickeln? 

Höchstwahrscheinlich tun Sie einige oder sogar alle der folgenden Dinge: 

  • Überprüfung des gesamten Codes auf Sicherheitsmängel und Rückmeldung an das Entwicklungsteam zur Behebung dieser Mängel. 
  • Durchsetzung eines strengen Peer-Review-Prozesses während des gesamten Lebenszyklus Ihrer sicheren Entwicklung. 
  • Regelmäßige Durchführung von Anwendungs assessment/ Penetrationstests durch interne oder externe Sicherheitsteams.
  • Implementierung von Scan-Tools zum Aufspüren von Schwachstellen.

Das sind tolle bewährte Verfahren, aber sie sind auch teuer und ähneln der Einnahme von Antibiotika bei jeder Krankheit. Das ist nicht nur mit hohen Kosten verbunden, sondern verliert auch an Wirksamkeit und kann mit der Zeit Ihr Immunsystem schwächen. 

Wie können Sie sicherstellen, dass der Code, den die Entwickler ausliefern, überhaupt sicher geschrieben ist? 

Abgesehen von der sicheren Kodierung sollten Sie zunächst einmal darüber nachdenken, wie Menschen lernen. Die meisten von uns sind visuelle Lerner und lernen durch Handeln. Und doch wird die Schulung für sicheren Code oft als eine "Abhak-Aktivität" angeboten und ist für die tägliche Arbeit eines Entwicklers nicht relevant. Sie dienen dazu, den Nachweis zu erbringen, dass die Entwickler an einer Sicherheitsschulung teilgenommen haben, die häufig den Industriestandards entspricht, und nicht dazu, dass die Entwickler das Wissen tatsächlich behalten, geschweige denn Spaß am Lernprozess haben. 

Eine andere Art und Weise, wie der Mensch lernt, ist die, dass er aus Fehlern lernt, so wie es auch unser Immunsystem tut. T-Zellen erinnern sich daran, welche Art von Krankheitserregern sie in der Vergangenheit angetroffen und erfolgreich ausgerottet haben, so dass sie sich in Zukunft vor ihnen schützen können. Dies ist genau die Rolle, die die Entwickler in Ihrem sicheren SDLC spielen sollten.

Es ist unrealistisch, von ihnen zu erwarten, dass sie keine Fehler machen, aber Sie können sie so vorbereiten, dass sie in der Lage sind, Codierungsmuster zu erkennen, die in der Zukunft zu Sicherheitslücken führen werden. 

Dies ist auch der Grund, warum ein robuster Peer-Review-Prozess so wirkungsvoll ist. Nur weil ein Entwickler eine Sicherheitslücke nicht bemerkt, heißt das nicht, dass ein anderer dies auch nicht tut. Und je besser das Entwicklungsteam als Ganzes geschult ist, desto wahrscheinlicher ist es, dass Schwachstellen aufgespürt werden und es nie in die Produktion schaffen. 

Software-Schwachstellen sind wie Krankheitserreger

Software-Schwachstellen sind wie Krankheitserreger in dem Sinne, dass man sich an sie erinnern muss, um sie bekämpfen zu können. Bei Krankheitserregern muss unser Immunsystem oft mehrmals mit ihnen konfrontiert werden, bevor es sich daran erinnert, wie es sie bekämpfen kann, um eine schwere Krankheit oder Schlimmeres zu vermeiden. 

Ein erfolgreicher Cyberangriff durch anfällige Software kann ein Unternehmen ernsthaft lähmen oder zerstören. Wenn Entwickler jedoch zunächst in einer kontrollierten Umgebung mit Software-Schwachstellen konfrontiert werden, können sie sich gegen diese Bedrohungen immunisieren, indem sie ihr Wissen und ihre Fähigkeiten im Bereich der sicheren Programmierung erweitern und regelmäßig üben. 

Entwickler in einer kontrollierten Umgebung mit Sicherheitslücken konfrontieren

Wir können uns nie ganz davor schützen, krank zu werden, aber wir können einiges tun, um unser Immunsystem zu stärken und so gesund wie möglich zu bleiben. Regelmäßige Bewegung, gesunde Ernährung und viel Schlaf gehören zu den Lebensgewohnheiten, die gemeinhin mit einem starken Immunsystem in Verbindung gebracht werden. Aber all diese Dinge erfordern ein wenig Anstrengung und müssen kontinuierlich durchgeführt werden. Wenn Sie eine Woche lang jeden Tag joggen gehen oder einen Monat lang auf Alkohol verzichten, wird sich das kaum auf Ihre allgemeine Gesundheit auswirken. Es ist auch nicht ratsam, am ersten Tag, an dem wir mit dem Laufen beginnen, gleich 10 km zu laufen. Wir müssen unser Herz und unsere Muskeln erst an die Bewegung gewöhnen. Wir wissen auch, dass wir ein wenig experimentieren müssen, bis wir ein gutes Gleichgewicht für unseren Körper und gesunde Lebensmittel und Übungen finden, die wir lieben.

Bei der sicheren Softwareentwicklung ist das nicht viel anders. Man lernt im Laufe der Zeit und mit der Praxis, und die Entwickler brauchen die gleiche fortlaufende Schulung, um ihre Fähigkeiten zur sicheren Programmierung regelmäßig zu verbessern. Ganz zu schweigen davon, dass sich die Softwareentwicklung ständig weiterentwickelt und anpasst, was bedeutet, dass sich auch die Schwachstellen ändern. Aus diesem Grund reicht ein einfacher Schulungskurs nicht aus. Die Entwickler müssen sich regelmäßig weiterbilden, um mit den potenziellen Bedrohungen vertraut zu sein und sich angemessen gegen sie zu schützen. 

Herdenimmunität innerhalb des Entwicklungsteams anstreben

Eine einzelne Person kann nicht alle Sicherheitsprobleme verhindern. Es ist großartig, Sicherheitsbeauftragte im Team zu haben, aber um den besten Schutz zu erhalten, hat Ihr Unternehmen umso bessere Chancen, je mehr Leute sich mit Sicherheitslücken und deren Vermeidung auskennen. Auch hier ist es nicht viel anders, als wenn das Immunsystem verschiedene Arten von T-Zellen für verschiedene Zwecke hat. Jeder einzelne Entwickler ist Teil eines Teams, das für Sicherheit sorgt. Wenn sie in die Lage versetzt werden, Verantwortung zu übernehmen, es gut zu machen und sogar Spaß daran zu haben, dann können Sie innerhalb des Entwicklungsteams eine Herdenimmunität gegen Cyber-Bedrohungen schaffen.

Herdenimmunität gegen Cyber-Bedrohungen innerhalb des Entwicklungsteams schaffen

Sicherheit durch wiederholte Exposition in den Vordergrund rücken

Unser Gehirn lernt auf eine ähnliche Weise wie unser Immunsystem. Der deutsche Psychologe Hermann Ebbinghaus war ein Pionier auf dem Gebiet des Gedächtnisses und des Lernens. Er kam zu dem Schluss, dass Lernen im Laufe der Zeit und in mehreren Lernsitzungen erfolgen muss. In der Schule wird von uns nie erwartet, dass wir neues Wissen nach der ersten Einführung behalten. Zuerst werden uns die Informationen präsentiert, dann üben wir sie unter Anleitung, und dann üben wir sie selbständig. Und selbst wenn wir es gut genug gelernt haben, um eine Prüfung zu bestehen, werden die Informationen in der Regel nach kurzer Zeit wieder vergessen, wenn wir das Wissen, für das wir Zeit und Mühe aufgewendet haben, nicht regelmäßig anwenden. Wie viele von uns können von sich behaupten, dass sie sich an ihr Schulfranzösisch erinnern?

Wie können wir also glauben, dass ein einziger Tag, an dem wir uns Folien ansehen und jemandem zuhören, der über Sicherheit spricht, tatsächlich dazu führt, dass die anwesenden Entwickler sicherer programmieren?

Die immer wiederkehrenden Schwachstellen zeigen uns, dass dies einfach nicht funktioniert. 

Wie erreichen Sie eine sichere Entwicklungsimmunität?

Die Antwort liegt in unserer Natur. Unser Körper und unser Geist funktionieren auf die gleiche Weise und bieten wunderbare Lösungen für Probleme, solange wir mit ihnen und nicht gegen sie arbeiten. 

Um zu gewährleisten, dass Ihre Anwendungen sicher sind, müssen Sie zunächst die Entwickler darin schulen, sicheren Code zu schreiben. Andernfalls werden die AppSec-Mitarbeiter weiterhin ihre gesamte Zeit damit verbringen, den gesamten Code auf Sicherheitsmängel zu überprüfen und die immer gleichen Schwachstellen an die Entwickler zu melden, die dann schnell behoben werden, ohne dass sie etwas daraus lernen. Bei der nächsten Version wird das Ganze dann wieder von vorne losgehen.

Lassen Sie uns also noch einmal wiederholen.

Gesundes Sicherheits-Immunsystem

Wenn Sie mit Ihren Entwicklungsmanagern zusammenarbeiten, um dies zu erreichen, implementieren Sie nicht nur einen sicheren SDLC und erfüllen die Anforderungen an Sicherheitsschulungen für die Einhaltung der Vorschriften, sondern Sie haben auch einen echten Einfluss auf den Entwicklungsprozess. Als Krönung des Ganzen wird AppSec nicht mehr auf wiederkehrende Schwachstellen stoßen und diese an die Entwicklungsteams zurückmelden, und die Entwickler werden weniger Zeit mit deren Behebung verbringen. Das bedeutet, dass sie mehr Zeit für die Entwicklung und Verbesserung der großartigen Software aufwenden können, die unsere Welt besser macht. 

Sind Sie bereit, Ihr Entwicklungsteam weiterzubilden? Dann buchen Sie jetzt eine Demo bei uns.

Wir bitten Sie um Ihre Erlaubnis, Ihnen Informationen über unsere Produkte und/oder verwandte Themen der sicheren Codierung zuzusenden. Wir werden Ihre persönlichen Daten immer mit äußerster Sorgfalt behandeln und sie niemals zu Marketingzwecken an andere Unternehmen verkaufen.

Um das Formular abzuschicken, aktivieren Sie bitte "Analytics"-Cookies. Sie können die Cookies wieder deaktivieren, sobald Sie fertig sind.