Gefahr durch Cross Site Scripting und SQL Injection

Webanwendungen vor Command Execution und Client-seitigen Angriffen schützen

18.06.2009 | Autor / Redakteur: Dr. Stefan Blum, (ISC)²-zertifizierter CISSP, und Hendrik Vagts, IBM Global Business Services / Stephan Augsten

Webanwendungen lassen sich schon während der Design- und Entwicklungsphase absichern, müssen aber nachträglich immer wieder angepasst werden.
Webanwendungen lassen sich schon während der Design- und Entwicklungsphase absichern, müssen aber nachträglich immer wieder angepasst werden.

Webapplikationen können den geschäftlichen und privaten Alltag erheblich vereinfachen. Dabei werden die funktionalen Aspekte der Sicherheit meist übergeordnet. Dadurch wird es Kriminellen leicht gemacht, Angriffe zu initiieren und sensible Daten zu stehlen. Dieser Beitrag beleuchtet gängige Angriffsszenarien und stellt mögliche Sicherheitsmaßnahmen vor.

Web-basierte Anwendungen wie Online-Banking, Internet-Shops und soziale Netzwerke werden von immer mehr Menschen genutzt. Das „Netz“ ist ein fester Bestandteil des alltäglichen Lebens geworden, um Berufliches oder Privates zu organisieren.

Mal davon abgesehen, dass etliche Nutzer der Web-2.0-Dienste nachweislich viel zu offen mit ihren persönlichen Informationen umgehen, steht auch bei den Betreibern die Sicherheit nicht immer an erster Stelle. Dabei zeigen die Ergebnisse des IBM X-Force Annual Report 2008 zeigen, dass 55 Prozent aller Schwachstellen in Software oder Software-Komponenten sich auf Webapplikation auswirken.

Angreifer haben diesen Trend erkannt und initiieren ihre Attacken immer öfter über webbasierte Anwendungen. Die meisten Angriffe lassen sich in der Praxis in die Kategorien Command-Execution und Client-seitige Attacken unterteilen.

Command Execution

Unter Command-Execution versteht man die Ausführung von Befehlen auf dem Web,- oder Applikationsserver oder den nachgelagerten Backend-Systemen. In den meisten Fällen werden dabei SQL-Injection-Schwachstellen ausgenutzt. Diese ermöglichen es einem Angreifer, beliebige SQL-Abfragen in der jeweiligen Datenbank durchzuführen.

In der Regel können die SQL-Injection-Schwachstellen darauf zurückgeführt werden, dass viele Webapplikation dynamische SQL-Abfragen durch die Eingabedaten des Benutzers generieren, ohne dabei die eingegebenen Parameter entsprechend zu überprüfen. Erfolgreiche SQL-Injection-Angriffe können weitreichende Folgen haben:

  • Auslesen der gesamten Datenbank-Inhalte, die unter Umständen sensible Informationen enthalten.
  • Vollständige Manipulation der Web-, Applikations,- und Backend-Server sowie evtl. der gesamten Datenbestände.
  • Einschleusen und Speichern von Schadsoftware wie Viren und Trojaner, die bei einem Aufruf der Webapplikation den PC des Users infizieren können.

Client-seitige Angriffe

Bei sogenannten Client Side Attacks wird die Webapplikation als Medium genutzt, um an sensible Daten des Users zu gelangen. Der eigentliche Angriff erfolgt dann auf dessen PC.

Ein prominentes Beispiel solcher Angriffe ist das so genante Cross Site Scripting (XSS). Dabei wird ein eingeschleuster Script-Code im Browser des Users ausgeführt. Ein Link einer scheinbar vertrauenswürdigen Anwendung verleitet den unwissenden User zu einem Klick mit negativen Folgen.

Urch Betätigung des Links wird eine vertrauenswürdige Webapplikation aufgerufen und gleichzeitig der Script Code des Angreifers versteckt an die Webapplikation gesendet. Falls die Webapplikation keine entsprechende Validierung der Rückgabedaten durchführt, gelangt der Script Code des Angreifers ungefiltert an den Web-Browser des Users, wo er dann im Kontext der Webapplikation ausgeführt wird.

XSS ist grundsätzlich immer dann möglich, wenn Benutzereingaben von der Webapplikation, beispielsweise einer Suchfunktion, verarbeitet werden. Am häufigsten werden diese Angriffe eingesetzt, um die Login-Daten eines Users oder andere Authentifizierungsmerkmale auszuspähen.

In diesem Fall kann der Angreifer beispielsweise auf der Rechnung derjenigen einkaufen, deren Daten ausgespäht wurden, oder einen Zugang zum Online-Banking und somit zu Bankdaten und Transaktionsfunktionen erhalten

Seite 2: Schutz vor Server- und Client-seitigen Angriffen

Inhalt des Artikels:

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  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? Kontaktieren Sie uns über: support.vogel.de/ (ID: 2022424 / Mobile- und Web-Apps)