Julian Totzek-Hallhuber

ist Solution Architect bei Veracode

In drei Schritten zu skalierbarer Anwendungssicherheit

Von der Support-Datenbank über den eigenen Link-Shortener bis zur Gewinnspiel-App − Unternehmen kaufen, entwickeln und nutzen mehr Anwendungen als je zuvor. Das bringt, wie silicon.de-Blogger Julian Totzek-Hallhuber, Solution Architekt bei Veracode weiß, neue Aufgaben für die Verantwortlichen mit sich.

Anwendungssicherheit gewinnt zunehmend an Bedeutung, wird aber zugleich auch immer komplexer. Es bedarf einer intelligenten Strategie, um alle Anwendungen zu erfassen und Risiken systematisch zu senken. Kleine wie große Unternehmen, die ein eigenes Programm zur Anwendungssicherheit aufbauen wollen, sollten die folgenden drei Schritte befolgen.

Schritt 1: Bestandsaufnahme und Zieldefinition

Die Entwicklung einer nachhaltigen Strategie für Anwendungssicherheit beginnt mit einer Analyse des Status Quo. Auf diese Weise lassen sich Bedürfnisse ordnen und Prioritäten definieren. Eine Reifegradbeurteilung, möglichst basierend auf einem Branchen-Standardframework wie OpenSAMM, deckt Hochrisikobereiche auf und zeigt Lücken in der aktuellen Anwendungssicherheit. Professionelle Sicherheitsprogramme erfassen alle Anwendungen im Portfolio des Unternehmens; zu Beginn sollte man sich jedoch auf die wichtigsten Anwendungen und schwerwiegendsten Sicherheitsrisiken konzentrieren.

code-monitor (Bild: Shutterstock)

Web-Anwendungen erweisen sich hierbei oft als besonders gefährdet. Sie sind die bevorzugten Einfallstore von Cyberkriminellen. Laut des aktuellen State of Software Security Reports von Veracode beinhalten vier von fünf Anwendungen in Web-Skriptsprachen Schwachstellen, die zu massiven Angriffen führen können.

Nach der ersten Bestandsaufnahme gilt es, eine Roadmap zu entwickeln und zukünftige Fortschritte in der Anwendungssicherheit messbar zu machen. Zu diesem Zweck muss das Unternehmen Kennzahlen festlegen, an denen es den Erfolg seines Sicherheitsprogramms und die Sicherheit seiner Anwendungen messen will. Quartalsziele wie “Senke die Fehlerdichte um X Prozent” helfen später bei der Erfolgsmessung.

Schritt 2: Integration in den Software Development Life Cycle

Nach Bewältigung der Frühphase muss das Programm von den wichtigsten auf alle Anwendungen im Unternehmen ausgeweitet werden. Damit Anwendungen, die das Unternehmen selbst entwickelt, möglichst effektiv überprüft werden können, sollte der Prüfprozess in den Software Development Life Cycle (SDLC) eingebunden werden.

Auf diese Weise kann proaktiv für Sicherheit gesorgt werden – die Notwendigkeit nachträglicher Korrekturen entfällt. Auch eine Effizienzsteigerung ist hiermit verbunden: Es ist wesentlich einfacher und ressourcensparender, eine Schwachstelle bereits im Zuge der normalen Qualitätskontrolle zu beseitigen, als wenn das Leck erst nach der Produktion entdeckt wird und gestopft werden muss.

Checkliste (Bild: Shutterstock/Karuka)

Eine Integration in den Software Development Life Cycle ist nur möglich, wenn Entwickler und Ingenieure in den Prozess eingebunden werden. Es gilt, ihnen die Vorteile des Vorgehens zu demonstrieren – zuverlässigeren Code und weniger aufwändige Fehlersuche in fertigen Anwendungen – sowie für einen möglichst effizienten Workflow zu sorgen, von dem alle Mitglieder des Teams profitieren. Sinnvoll ist es beispielsweise, die Assessment-Lösung in dieselben IDEs zu integrieren, die auch die Entwicklung nutzt.

Schritt 3: Auch externe Anwendungen überprüfen

Unternehmen entwickeln nicht nur eigenen Code, sondern sie greifen auch auf fremden zurück – in Form externer Anwendungen und Komponenten. Unternehmen, die für mehr Anwendungssicherheit sorgen wollen, müssen auch die Anwendungen externer Anbieter im Blick behalten und gewissenhaft prüfen.

Zwar testen die Anbieter ihren Code in aller Regel selbst auf Schwachstellen, verlassen sollte man sich hierauf jedoch nicht. Mit dem Finger auf andere zu zeigen, würde im Ernstfall nichts nützen. Allerdings sollte man auch hier proaktiv denken: Es lohnt sich für Unternehmen, klare Richtlinien für Drittanbieter zu schaffen. So können externe Anwendungen an denselben Standards gemessen werden wie die intern entwickelte Software.

Fazit

Drei Schritte sind notwendig, wenn Unternehmen ein Programm zur Anwendungssicherheit entwickeln wollen. Der Prozess beginnt mit einer ersten Bestandsaufnahme sowie der Entwicklung einer Roadmap und findet in der Integration der Prüfroutinen in den Software Development Life Cycle und der Ausweitung des Programms auf die Anwendungen externer Anbieter seine Vollendung. Am Ende sollten ausnahmslos alle Anwendungen, die ein Unternehmen einsetzt, in die Anwendungssicherheit eingebunden sein. Nur so kann ein Höchstmaß an Sicherheit garantiert werden.



Julian Totzek-Hallhuber ist Solution Architect bei Veracode. Als Spezialist für Anwendungssicherheit mit mehr als 15 Jahren Erfahrung im IT-Sicherheitsumfeld, verfügt er über Expertise in den Bereichen Anwendungsentwicklung, Penetrationstests sowie Sicherheit von Webanwendungen. Zudem ist er Autor zahlreicher Artikel, regelmäßig als Sprecher auf Messen anzutreffen und hat bei Projekten von www.webappsec.org mitgewirkt. Veracode, ein führender Anbieter für Anwendungssicherheits-Tests, stellt die am häufigsten verwendete cloud-basierte Plattform zur Verfügung, um Web- und Mobilanwendungen sowie Applikationen von Drittanbietern zu schützen.