Security by App Design

Applikationssicherheit bei der Entwicklung berücksichtigen

| Autor / Redakteur: Mirko Brandner * / Stephan Augsten

Über App Security wird allzu oft erst nachgedacht, wenn das Kind bereits in den Brunnen gefallen ist.
Über App Security wird allzu oft erst nachgedacht, wenn das Kind bereits in den Brunnen gefallen ist. (Bild: geralt - Pixabay.com / CC0)

Der App-Markt entwickelt sich rasant, trotzdem wird Application Security weiterhin kaum berücksichtigt. Wie das Beispiel kompromittierter Mobile Banking Apps zeigt, muss oft erst ein Ernstfall eintreten, bevor über die Sicherheit wirklich nachgedacht wird.

Dem wirksamen Schutz von Anwendungen vor Cyberangriffen und Manipulationen wird bisher kaum Aufmerksamkeit geschenkt. Konferenzen wie der Application Security Day letzten Dezember in München sowie Hersteller von App-Security-Software leisten vor diesem Hintergrund quasi Pionierarbeit.

Wie in vielen anderen Bereichen auch, entsteht Problembewusstsein auch hier erst angesichts schwerwiegender Vorfälle. Das kann nicht nur Banken treffen, auch sensible Branchen wie der medizinische Gerätebau oder der Automotive-Sektor hinken in Sachen Application Security deutlich hinterher.

Die Unternehmen in diesen Märkten entwickeln ihre App-Sicherheitsstrategie nur langsam – und das, obwohl hier tatsächlich Menschenleben unmittelbar in Gefahr geraten können. Dabei liegt vor allem Deutschland deutlich hinter Ländern wie den USA und UK zurück. Hierzulande wird Application Security als lediglich eines von vielen mehr oder weniger wichtigen Sicherheitsthemen angesehen.

Studien des Ponemon Instituts und von IBM besagen, dass der Schwerpunkt beim Security-Investment in den meisten Ländern auf herkömmlichen Sicherheitstechnologien für Netzwerke und Daten liegt. Hier ist man quasi über-investiert, während die neuen Bedrohungen bei Applikationen finanziell vernachlässigt werden. Aber auch hinter der Kundenfreundlichkeit von Apps muss der Sicherheitsaspekt immer wieder zurückstehen. So ist es für die meisten Software-Hersteller wichtiger, noch mehr Funktionen und Service bereitzustellen, als für angemessene Sicherheit zu sorgen.

Kurz gesagt: Für mehr App-Sicherheit fehlt es meist an Time, Budget and Skill. Hier gilt es anzusetzen und das Wissen rund um Application Security deutlich zu erweitern. Nur so kann dieser elementare Aspekt auch bei Projektplänen, Budgetierung und Ausbildung entsprechend berücksichtigt werden. Und das natürlich noch bevor etwas passiert und der Schaden schon entstanden ist.

Develop secure – keep it secure

Obwohl auf eine sichere Entwicklung an sich viel Wert gelegt wird, sind die binären Endprodukte, also die Applikationen, mittels Reverse Engineering oftmals leicht zu durchschauen. Mit dem Wissen über die inneren Strukturen einer Applikation können Hacker diese dann entsprechend manipulieren.

Ob Transaktionen verändert, Sicherheitsabfragen umgangen oder die Benutzung medizinischer Geräte zu einer tödlichen Gefahr gemacht werden – vieles steht und fällt mit der Möglichkeit, Applikationen gegen Reverse Engineering und Manipulationen zu schützen. Solche Schwachstellen kann man beispielsweise mit RASP-Technologien (Runtime Application Self Protection) effektiv bekämpfen.

Auf diese Weise können sich (auch eingebettete) Applikationen erfolgreich selbst verteidigen und mit individuell festgelegten Aktionen reagieren, indem sie etwa den App-Betreiber darüber informieren, dass die Software modifiziert wurde. Darüber hinaus sollten Techniken zur Applikationshärtung zum Standard werden. So lässt sich mit Obfuscation (Verschleierung) und Whitebox-Kryptographie sicherstellen, dass Kriminelle nicht auf den Quellcode der Geräte zugreifen und diese somit manipulieren können.

Was sollte man als Entwickler tun?

Am Anfang der Entwicklung gilt es stets zu analysieren, welche Angriffspunkte es überhaupt gibt und wo diese bestehen könnten. Auch die Frage, wie „schützenswert“ die App ist, muss dabei offen beantwortet werden. So besteht für eine Banking-App bestimmt ein anderes Gefährdungspotenzial als für ein Gratis-Game, das sich über Werbung finanziert; wenngleich sich Sicherheitslücken natürlich auch hier negativ auf das Geschäftsmodell auswirken können, indem beispielsweise die Werbung verhindert wird.

Je nach Ergebnis der Analyse müssen dann gezielt Abwehrmaßnahmen in die App integriert werden. Anstatt einen weiteren Sicherheitszaun um die Applikation zu ziehen, wird sie also selbst geschützt. Nur so kann sie sogar in unsicheren und schädlichen Umgebungen sicher bestehen.

Dabei spielt es auch keine Rolle, ob die Software agil oder „klassisch“ entwickelt wird. Auch in agile Prozesse kann und muss Application Security integriert werden. So können Gefährdungen und Angriffsszenarien durch User Stories, Epics, Use-Cases etc. beschrieben werden.

Gewisse automatisierte Methoden, um den Code sicher zu entwickeln, sind als Bestandteil von Continuous Integration ebenfalls ein gängiges Thema. Aber auch hier ist der entscheidende Punkt nicht, welchem Entwicklungs-Ansatz man folgt, sondern dass Sicherheit überhaupt adressiert wird.

* Mirko Brandner ist als Technical Manager bei Arxan beschäftigt.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44565425 / Softwareentwicklung)