Verantwortliche für Anwendungssicherheit, RSSI, DSI, Experten für Cybersicherheit – ich habe im Laufe meiner eigenen Karriere in der Softwareentwicklung und im Sicherheitsbereich mit vielen von ihnen gesprochen, die in allen möglichen Unternehmen auf der ganzen Welt tätig sind.
Unabhängig von ihrer Situation, der Erfahrung ihres Teams oder der Zeit, die in dieser sich ständig verändernden digitalen Welt vergeht, bleibt ein Problem bestehen: Sie sind selten in der Lage, ihr Entwicklungsteam positiv in Sicherheitsfragen einzubeziehen. Sicherheit bleibt ein Tabuthema, eine Quelle von Konflikten zwischen den Teams und eine echte Herausforderung für die Branche.
Die Softwaresicherheit ist jedoch einfach zu wichtig, als dass wir unsere allgemeine Einstellung in dieser Richtung beibehalten könnten. Wir müssen uns bemühen, die Situation zu ändern und die Sicherheit zu einem festen Bestandteil des Berufsalltags jedes Entwicklers zu machen. Und ich denke, einer der besten Wege, dies zu erreichen, besteht darin, die Entwickler zu sensibilisieren und sie beispielsweise durch Gamification in Sicherheitsfragen einzubeziehen.
Die aktuelle Landschaft
Entwickler verlassen die Universität mit sehr geringen praktischen Kenntnissen über die Bereitstellung von sicherem Code. Sie nehmen Stellen an, in denen Sicherheitsschulungen selten Priorität haben (und wenn doch, dann sind sie in der Regel Teil der obligatorischen Videos zur Einhaltung von Gesundheits- und Sicherheitsvorschriften, die so langweilig sind, dass sich niemand für sicheres Codieren interessiert). Sehr oft ist ihre erste Erfahrung mit Sicherheit ein Audit- oder Testfehlerbericht, der plötzlich eine zukünftige Version unterbricht und ihre kreative Energie sofort stört. Sie sind mit den Verantwortlichen für Sicherheitsberichte nicht einverstanden, sodass „Sicherheit” in ihren Köpfen zum Synonym für „Kritik” wird. Igitt.
Es ist wirklich schade, dass diese negative Wahrnehmung der Softwaresicherheit so weit verbreitet ist. Schließlich gehören einige meiner schönsten Erinnerungen an meine Karriere zum Erlernen der Softwaresicherheit. Meine ersten Tage als Hacker verbrachte ich damit, Konferenzen zu besuchen, wo ich nicht nur meine Fähigkeiten (und, um ehrlich zu sein, auch ein wenig meine Überlegenheit) im Vergleich zu meinen Kollegen testen konnte, sondern auch viel Spaß dabei hatte, Gleichgesinnte zu treffen, die genauso gerne wie ich Software knackten.
BruCon, DefCon, BlackHat... Diese Veranstaltungen haben es Menschen wie mir ermöglicht, ihre Fähigkeiten in freundschaftlichen Wettbewerben einzusetzen. Ich würde niemals zugeben, dass ich an solchen unsozialen Aktivitäten teilgenommen habe, aber manche demonstrieren ihre Hacker-Fähigkeiten sogar, indem sie sich in die Telefone anderer Teilnehmer hacken und deren Informationen auf den Präsentationsbildschirmen für alle sichtbar anzeigen. Es wurde zu einem Spiel, diese Schwachstellen zu finden, sie auszunutzen und zu beheben, um die Software zu verbessern. Vor einigen Jahren hatte ich das Privileg, Hunderte von Kindern aus dem Nahen Osten zu treffen, um ihnen Cybersicherheit beizubringen. Ich erinnere mich noch gut an ein achtjähriges Mädchen unter meinen Schülern, das beim Spielen das Brute-Force-Knacken von Passwörtern und die Base64-Kodierung lernte.
Gamification wird auch zum Unterrichten von Programmiertechniken eingesetzt. Bildungseinrichtungen auf der ganzen Welt nutzen diesen Ansatz, um schon sehr kleinen Kindern bis hin zu Schülern der Oberstufe das Programmieren beizubringen. Kinder im Alter von gerade einmal vier Jahren nehmen mittlerweile regelmäßig an Ferieninitiativen wie Code Camp teil, und es gibt viele fantastische Online-Programme, die Kindern das Programmieren in Python und anderen Sprachen beibringen. Ich habe sogar das unglaubliche bildschirmfreie Programmierwerkzeug Cubetto für meine vierjährige Tochter gekauft.
Trotz all dieser Freude und Fortschritte gibt es jedoch eine Lücke. Niemand hat daran gedacht, Gamification zu nutzen, um Entwickler im Schreiben von sicherem Code zu schulen.
Nun ja... fast niemand. Vor einigen Jahren wurde mir klar, dass wir der Sicherheit wieder mehr Inspiration verleihen und die Entwickler wirklich motivieren mussten, sich zu engagieren und mitzumachen.
Gamification: die einfachste Lösung.
Ich bin fest entschlossen, Entwicklern dabei zu helfen, Kenntnisse im Bereich Sicherheit zu erwerben, und diese Leidenschaft hat mich dazu gebracht, Secure Code Warrior zu gründen. Softwaresicherheit ist sehr wichtig und kann wirklich spannend sein.
Ich bin nicht der Einzige, der so denkt.
Gamification kann selbst die alltäglichsten Aufgaben unterhaltsamer machen und sorgt dafür, dass die Spieler motiviert bleiben, weiterzuspielen, zu gewinnen und Fortschritte zu erzielen. Man muss sich nur ansehen, wie Pokemon Go gespielt wird! Es hat selbst die faulsten Menschen dazu gebracht, sich vom Sofa zu erheben, auf die Suche nach imaginären Kreaturen zu gehen oder zu entdecken, wie FitBit sich das tägliche Ziel setzt, eine bestimmte Anzahl von Schritten zu erreichen... Wenn diese Ziele nicht erreicht werden, wenn die Serien unterbrochen werden und die Abzeichen nicht gewonnen werden, stellt sich ein echtes Gefühl der Enttäuschung ein.
Kommen wir also zurück zum Thema Sicherheitsschulungen. Wir haben vielen Kunden bewiesen, dass Gamification unerlässlich ist, um die Sicherheitskultur ihrer Unternehmen wirklich zu verändern, indem wir Verbindungen zwischen AppSec-Teams und Entwicklungsteams herstellen und ihnen generell dabei helfen, Software zu entwickeln, die höheren Standards entspricht.
Derzeit hat Sicherheit für Entwickler keine Priorität. Indem Sie Ihren Trainingsmethoden ein freundliches, wettbewerbsorientiertes und motivierendes Element hinzufügen, motivieren Sie sie nicht nur zum „Spielen”, sondern auch dazu, wiederzukommen, um mehr Punkte zu sammeln, die besten Ergebnisse zu übertreffen, präziser zu werden und andere Teammitglieder herauszufordern.
Wir wissen bereits, dass eine erfolgreiche Ausbildung wie folgt aussieht:
- Entwickler sind in der Lage, mit echtem Code und in ihren eigenen Sprachen/Frameworks zu arbeiten.
- Die Herausforderungen sind kurz und decken alle gängigen Sicherheitslücken ab.
- Die Herausforderungen werden ständig erweitert und aktualisiert, damit die Entwickler ihre Fähigkeiten im Laufe der Zeit weiterentwickeln können.
- Die Herausforderungen variieren in ihrer Komplexität und sind daher sowohl für erfahrene als auch für weniger erfahrene Entwickler interessant.
- Entwickler und ihre Vorgesetzten können die erzielten Fortschritte einsehen, insbesondere die bewältigten Herausforderungen, ihre Stärken und Schwächen, die für die Schulung aufgewendete Zeit und ihre allgemeine Genauigkeit.
Einer unserer größten Kunden hat bei der Einführung einer Gamification-Plattform deren wahre Magie unter Beweis gestellt, indem er seinen Entwicklern themenbezogene Teamausrüstung zur Verfügung stellte, den Gewinnern der Spiele unglaubliche Preise anbot und sein Turnier zu einem unvergesslichen Tag machte. Seitdem veranstalten sie internationale Wettbewerbe, und ihr gesamtes Team trainiert bis heute fleißig weiter.
Ihre eigene Software-Revolution beginnt hier. Der australische Bankensektor ist Vorreiter bei der Einführung von gamifizierten Schulungen zur Bekämpfung von fehlerhaftem Code. Dabei handelt es sich um einen wirklich innovativen Ansatz, der die traditionelle (oder langweilige) Schulung revolutioniert. Sehen Sie sich einfach an, was unser Kunde mit seinem hochkarätigen Turnier erreicht hat. Sind Sie bereit, Ihr Team mit uns zu verbessern?
Wir müssen uns bemühen, die Situation zu ändern und Sicherheit zu einem festen Bestandteil des Arbeitsalltags jedes Entwicklers zu machen. Und ich denke, einer der besten Wege, dies zu erreichen, besteht darin, Entwickler zu sensibilisieren und sie beispielsweise durch Gamification in Sicherheitsfragen einzubeziehen.