Serge BaumbergerSerge Baumberger Applikations-Sicherheit – hier wird noch immer Geld verprasst

25.02.09 by Serge Baumberger

In Onlineapplikationen ist Sicherheit besonders wichtig, beachtet wird sie aber viel zu wenig. Ein Risk-Assessment kurz vor der Einführung, die gröbsten Löcher mit der heissen Nadel gestopft, schon ist die Software produktiv – und ein paar Tage später sind die ersten Kundendaten gestohlen. Muss das sein?

Onlinesicherheitsrisiken haben sich innert kürzester Zeit zum Hauptrisiko fürs Business entwickelt. Ein Grund dafür ist, dass businesskritische Applikationen heute für die Kunden, Partner und internen Benutzer online jederzeit erreichbar sein müssen. Die ständige Verfügbarkeit öffnet Tür und Tor für Freund und Feind. Interaktive Inhalte verschlimmern das Ganze. Statistiken zeigen, dass sich ein Hacker nicht zweimal bitten lässt. Eine der aktuell beliebtesten Attacken ist das Cross Site Scripting (XSS). Ein Beispiel: Der Angreifer versucht eine Webanwendung so zu manipulieren, dass schädlicher Scriptcode in die angezeigte Seite (z. B. in ein Gästebuch oder eine Auktionsseite) eingebettet wird. Der Browser verarbeitet diese an sich vertrauenswürdige Website inklusive des schadhaften Codes und sendet dadurch die aktuellen Login-Informationen an den Angreifer zurück. Obwohl die Unternehmen ihre IT-Security durchaus ernst nehmen, gehören Meldungen über erfolgreiche Angriffe zur Tagesordnung. Was geht hier vor?

Quality vs. Security

Abbildung 1: Quality vs. Security

ENDLICH UMDENKEN

Der Löwenanteil der IT-Security-Budgets wird in Netzwerksicherheit, z. B. für Firewalls und Intrusion Detection-Systeme investiert, obwohl nach Gartner 75 Prozent der Hacker-Attacken direkt die Applikation und nicht die Netzwerke angreifen. Um Geld gezielt dort einzusetzen, wo die grösste Gefahr lauert, muss ein Umdenken stattfinden. Idealerweise wird in der Software-Entwicklung dafür gesorgt, dass erst gar keine Sicherheitslöcher entstehen oder diese unmittelbar behoben werden. Wer zu spät testet, verschleudert Geld. Doch so einfach ist das Problem nicht zu lösen, denn die Software-Entwicklung ist darauf getrimmt, möglichst das zu liefern, was in den funktionalen Anforderungen beschrieben ist. Daraus resultiert, dass überprüft wird, was die Applikation können soll – aber nicht, was sie nicht können darf. Entwickler mit Know-how im Bereich Secure Development sind rar gesät. Auch das Testing muss sich den neuen Anforderungen anpassen. Einen Penetrationstest sieht man leider höchst selten in einem Testkonzept. Ebenso ist das Profil eines Testers, der die Funktionalität überprüfen soll, anders als das eines Security-Testers. Während der eine danach sucht, was nicht funktioniert, sollte der andere nach den nicht gewollten Funktionalitäten suchen, die zu viel erlauben – richtige Detektivarbeit sozusagen.

LÖSUNGSANSÄTZE

Um zu sicheren Onlineapplikationen zu kommen, braucht es gezielte Massnahmen:

  1. Einführung von Sicherheitsregeln, Guidelines, Regulations
  2. Erstellung von Sicherheitsanforderungen und Angriffs-Cases
  3. Durchführung von gezielten Sicherheits-Architektur-Reviews
  4. Erarbeitung und Einhaltung von Secure Coding Guidelines
  5. Durchführung von:
    White-Box Penetrationstests
    Grey-Box Penentrationstests
    Black-Box Penetrationstests
  6. Kontinuierliche Überwachung der laufenden Systeme
  7. Assessment und Feedbackloop zum ersten Schritt

Applikationssicherheits-Baukasten

Abbildung 2:  Toolbox für konkrete Umsetzungsmassnahmen

AKUTER HANDLUNGSBEDARF

Sicheres Programmieren und Durchführen von Penetrationstests steckt in der Schweiz noch in den Kinderschuhen. Es besteht Bedarf, die Applikationen sicherer zu machen und den ganzen Software-Entwicklungszyklus für sichere Applikationen einzubringen. Mit der Einführung der obigen Lösungsansätze erhöht man sukzessive die Maturität der Applikationssicherheit. Der Aufwand dafür ist jedoch kurzfristig hoch, denn es bedarf eines systematischen Trainings der Test- und Entwicklungseinheiten. Allenfalls ist ein Aufbau einer eigenen Security-Testing-Truppe sinnvoll.

TOOL-UNTERSTÜTZUNG

Sind die Tätigkeiten erst einmal definiert, können sie beschleunigt werden. Grosse Software-Hersteller wie HP oder IBM haben sich jüngst im Bereich Sicherheitsprüfung von Webanwendungen durch gezielte Akquisitionen verstärkt. Für bestimmte Einsatzgebiete gibt es auch entsprechende Open-Source-Lösungen. IBM wie auch HP bieten Tools an, die von der Entstehung bis zur Ablösung einer Applikation den gesamten Lebenszyklus aus Sicht der Security unterstützen:

Für Entwickler:

  • Code wird während der Eingabe auf Sicherheit überprüft
  • Auf Wunsch erscheinen Lösungsvorschläge und Links

Für Tester:

  • Automatisierte Sicherheitstests untersuchen Webapplikationen und Services nach Fehlern
  • Gefundene Fehler werden je nach Sicherheitsrisiko mit entsprechender Priorität gespeichert und dem zuständigen Entwickler zugewiesen

Für Security-Experten:

  • Eine «7 x 24 h»-Lösung durchforstet komplette Webapplikationen nach Sicherheitslücken
  • Automatische Überprüfung auf rechtliche, firmeninterne und regulatorische Bestimmungen

Die beschriebenen Tools werden laufend besser. Experten scannen täglich das Internet nach neuen Gefahren. Wie bei einer Antivirenlösung werden die Tools mit neuen Signaturen und Erkennungsmustern per Update aktuell gehalten.

FAZIT

Gezielte Investitionen sind nötig. Egal, welche Maturitätsstufe eine Organisation erreicht hat: Verbesserungspotenzial besteht immer. Die Investition lohnt sich auf jeden Fall, denn neben direkten finanziellen Schäden steht auch das Image auf dem Spiel.

Sphere: Related Content

Ein Kommentar

Kommentar schreiben

XHTML: Sie können diese Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>