Skip to main content

Einen Schlachtplan für Application Security entwickeln: Home-Alone-Edition

Artikel von
feature home alone

20. Dezember 2022

0 Min. Lesezeit

Die Weihnachtszeit ist perfekt, um sich einige festliche Lieblingsfilme noch einmal anzusehen! Während manche Weihnachtsfilme gar nicht kitschig genug sein können (Hallmark, wir meinen Sie), freuen sich andere jedes Jahr aufs Neue darauf, in der Filmkomödie Kevin – Allein zu Haus von 1990 mitzuerleben, wie ein achtjähriger Junge zwei tollpatschigen Ganoven das Leben schwer macht.

Es ist schon witzig, sich vorzustellen, wie ein Kind sein Zuhause ganz allein mit Spielzeugautos, einem Bügeleisen und einigen anderen Slapstick-Fallen gegen zwei Einbrecher verteidigt. Für Unternehmen ist es jedoch weitaus wahrscheinlicher, dass sie ihr Eigentum (also ihre Anwendungen) vor Angreifern schützen müssen. Die richtigen Application-Security-Maßnahmen sind vielleicht nicht so lustig wie ein Bösewicht, dessen Kopf mit einem Flammenwerfer angekokelt wird, können aber in vielerlei Hinsicht Kevin McCallisters „Schlachtplan“ ähneln.

Passend zur Weihnachtszeit stellen wir also den besten „Schlachtplan“ für Application Security vor, um Angreifer fernzuhalten.

Eine Person schwingt in einem schwach beleuchteten Raum eine weiße Socke oder ein weißes Tuch über einen vollgestellten Holztisch.

Die „Etagen“ Ihrer Anwendung

Kevins cleverer Plan sah Fallen auf jeder Etage des Hauses vor – im Keller, im Erdgeschoss und im Obergeschoss. Im Film musste er sich für jeden Eingang und jeden Raum einen ausgeklügelten Plan ausdenken. Schließlich konnte er nicht vorhersehen, wie Harry und Marv (die Einbrecher) versuchen würden, ins Haus zu gelangen und was sie dort tun würden.

Genauso deckt ein guter Application-Security-Plan jede „Etage“ Ihrer Anwendung ab: den Quellcode, die Software-Lieferkette und die Infrastruktur.

Kevin stellte nicht nur auf jeder Etage des Hauses clevere (und ausgesprochen gemeine) Fallen auf, sondern sorgte auch dafür, dass sie miteinander verbunden waren. Marv kletterte eine mit Teer bedeckte Treppe hinauf und musste dafür seine Schuhe ausziehen. So stand er genau richtig, um auf einen Nagel zu treten (schauder!). Harry lief geradewegs in Frischhaltefolie, die mit Klebstoff beschmiert war, und stolperte dann über einen Ventilator, der ihm einen Haufen Federn entgegenblies. Die blieben prompt am Klebstoff hängen! Kevins Streiche griffen perfekt ineinander.

Wie bei Kevins Fallen müssen auch die Elemente Ihres Application-Security-Plans ineinandergreifen. Alles, was auf einer „Etage“ Ihrer Anwendung passiert, muss mit den Sicherheitsmaßnahmen auf den anderen „Etagen“ verbunden sein. Heute bedeutet das, Sicherheitsmaßnahmen miteinander zu verknüpfen – im Quellcode, sowohl proprietär als auch Open Source, sowie in Cloud-Infrastruktur und Containern. Sehen wir uns an, was die einzelnen „Etagen“ umfassen.

Etage 1: Quellcode

Der gute alte, intern entwickelte Quellcode bildet die grundlegende Ebene Ihrer Anwendung. Wird Sicherheit beim Schreiben nicht berücksichtigt, kann er Angreifern Tür und Tor öffnen.

Ihr Sicherheitsteam kann jedoch nicht überall gleichzeitig sein. Deshalb sollten Sie einige Bestandteile Ihres Schlachtplans automatisieren. So wie Kevin Stolperdrähte einsetzte, um seine Tricks automatisch auszulösen, kann Ihr Team automatisierte statische Anwendungssicherheitstests (SAST) nutzen, um unsicheren Code zu finden und zu beheben. Für die Absicherung Ihres Quellcodes sind zwei Schritte nötig: regelmäßige statische Anwendungssicherheitstests (SAST) und Schulungen Ihrer Entwickler zu bewährten Vorgehensweisen, damit sie von Anfang an sicher programmieren können.

Dunkle, verzerrte Ansicht einer schmalen Kellertreppe hinunter zu einer kleinen Öffnung, in deren Mitte eine schemenhafte Gestalt oder ein Objekt zu sehen ist.

Etage 2: Software-Lieferkette

Die zweite „Etage“ Ihrer Anwendung ist die Software-Lieferkette: Bestandteile Ihrer App, die zusammengesetzt und nicht von Grund auf neu entwickelt werden, zum Beispiel Container-Basis-Images und Open-Source-Komponenten. Für die Behebung von Sicherheitsproblemen in der Software-Lieferkette sind jedoch spezialisierte Fähigkeiten erforderlich. Sie benötigen ein Tool, das gezielt nach Schwachstellen in Containern sucht, und ein weiteres, das Risiken in Open-Source-Komponenten identifiziert. Beide Tools müssen klare Schritte zur Behebung aufzeigen, etwa die Rückkehr zur sichersten Version der jeweiligen Komponente.

Ein Mann in einer Küche schreckt zurück, als eine Flamme aus einer Deckenleuchte schießt.

Etage 3: Infrastruktur

Für einen optimalen ganzheitlichen Ansatz für Application Security müssen Sie auch die strukturellen Elemente Ihrer App berücksichtigen, etwa Ihre Cloud-Umgebung und Infrastructure as Code (IaC). Welche Cloud-Dienste nutzen Sie zur Speicherung? Sind sie mit den richtigen Berechtigungen und Zugriffskontrollen konfiguriert, oder könnten sie ein Sicherheitsrisiko für Ihre Anwendung darstellen? Und ist Ihr IaC – ähnlich wie Ihr Quellcode – sicher geschrieben?

Um die Infrastruktur Ihrer App abzusichern, ist ein kontextbezogener Ansatz erforderlich. Schließlich existiert Ihr Cloud-Ökosystem nicht im luftleeren Raum. Wie es genutzt wird, hängt vielmehr stark von Ihrem IaC ab.

Ein Mann in dunkler Kleidung sitzt neben einem Fenster mit transparenten Vorhängen und blickt auf etwas in seinen Händen.

Alle Teile Ihres Schlachtplans zusammenführen

Jedes dieser Tools ist für sich genommen sinnvoll – aber wir sprechen aus gutem Grund von einem „Plan“ und nicht von mehreren „Plänen“! Wenn Sie keine Strategie entwickeln, um all diese einzelnen Sicherheitsmaßnahmen aufeinander abzustimmen, entgeht Ihnen der Gesamtkontext der gefundenen Schwachstellen. Unzusammenhängende Tools erschweren außerdem die Zusammenarbeit zwischen Entwicklern, Sicherheitsexperten und Cloud-Architekten, die gemeinsam für Ihre Sicherheitsmaßnahmen verantwortlich sind.

Snyk geht diese Herausforderung mit einer zentralen Plattform für fünf verschiedene Sicherheitsbereiche an: Quellcode, Open Source, Container, Cloud und IaC. Außerdem bieten wir Schulungen für Entwickler an, damit diejenigen, die sich in all diesen Bereichen am besten auskennen – die Entwicklungsteams –, selbst aktiv werden können. Erfahren Sie mehr über unsere Developer-Security-Plattform. Aber keine Sorge: Wenn Sie eine Lesepause einlegen und stattdessen _Kevin – Allein zu Haus_ ansehen möchten, sind wir da, wenn Sie zurückkommen!

Junger Junge in rotem Pullover mit gelbem Untertitel: „Behalten Sie das Wechselgeld, Sie dreckiges Tier.“

Starten Sie mit Capture the Flag

Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Herausforderungen lösen.