shield-exclamationUrsachen

Aufbau von Web-Applikationen

Web-Applikationen (Online-Applikationen) ermöglichen die Zusammenarbeit zwischen Nutzern und Dienstanbietern über das Internet.

Typischer Aufbau:

Der Zugriff erfolgt über eine URL (Uniform Resource Locator).

https://max:muster@www.example.com:8080/index.html?p1=A&p2=B#resource

Funktionale Infrastruktur

Clientseitige Infrastruktur (Browser)

Die clientseitige Infrastruktur läuft auf dem Gerät des Benutzers. Der Webbrowser übernimmt:

Darstellung von HTML, CSS und JavaScript

Verarbeitung von Benutzereingaben

Kommunikation mit dem Server über HTTP/HTTPS

Forward Proxy (im Unternehmensnetzwerk)

Ein Forward Proxy kann den Internetverkehr kontrollieren.

Caching

Schnellere Ladezeiten

Regelbasiertes Surfen

Zugriffsbeschränkung

Protokollierung

Nachverfolgung von Zugriffen

Content Filtering

Prüfung auf Schadcode

Serverseitige Infrastruktur

Eine sichere Webapplikation besteht aus mehreren Sicherheits- und Verarbeitungsschichten.

chevron-rightNetzwerk-Firewallhashtag
  • Schützt Netzwerk vor unbefugtem Zugriff

  • Erlaubt nur notwendige Ports (z. B. 80 und 443)

Server befinden sich oft in einer DMZ (Demilitarized Zone), um interne Netzwerke zu schützen.

chevron-rightTLS/SSL-Gatewayhashtag
  • Verschlüsselt und entschlüsselt den Datenverkehr zwischen Client und Server

  • Schützt Daten während der Übertragung

chevron-rightWeb Application Firewall (WAF)hashtag

Eine Web Application Firewall schützt Webapplikationen vor typischen Angriffen wie:

  • Cross-Site Scripting

  • SQL-Injection

  • CSRF

Sie analysiert den Datenverkehr auf Anwendungsebene (Layer 7).

chevron-rightAccess-Gatewayhashtag
  • Sorgt für Authentifizierung

  • Verwaltet Benutzersitzungen

chevron-rightHTTP-Serverhashtag
  • Nimmt Anfragen von Clients entgegen

  • Liefert statische Inhalte (HTML, Bilder)

  • Leitet dynamische Anfragen an Backend weiter

  • Verbessert Performance durch Caching

chevron-rightWebapplikationsserverhashtag

Der Applikationsserver führt die Geschäftslogik der Anwendung aus.

  • Verarbeitung von Benutzeranfragen

  • Eingabevalidierung

  • Authentifizierung

  • Kommunikation mit Datenbanken

chevron-rightDatenbankhashtag

Die Datenbank speichert und verwaltet Daten der Anwendung. Sie bietet Mechanismen für:

  • Datenintegrität

  • Zugriffskontrolle

  • Verschlüsselung

chevron-rightReverse-Proxyhashtag

Ein Reverse Proxy befindet sich vor dem Webserver und schützt die Infrastruktur.

  • Filterung von Anfragen

  • Caching und Komprimierung

  • TLS/SSL-Verarbeitung

  • Benutzerauthentifizierung

  • Load Balancing

Für den Benutzer ist der Proxy unsichtbar.

Sicherheitsrisiken und Herausforderungen

Viele Angriffe nutzen bekannte Schwachstellen aus.

chevron-rightXSShashtag

Einschleusen von Schadcode in Webseiten

chevron-rightSQL Injectionhashtag

Manipulation von Datenbankabfragen

chevron-rightSniffinghashtag

Abhören von Netzwerkverkehr

chevron-rightMan-in-the-Middle-Angriffhashtag

Manipulation der Kommunikation

chevron-rightPhishinghashtag

Täuschung von Benutzern

Hauptursache

Die meisten Sicherheitslücken entstehen durch Programmierfehler.

Studien zeigen, dass etwa 75 % der Hackerangriffe direkt Webapplikationen betreffen und nicht das Netzwerk. Daher sollte Sicherheit bereits während der Softwareentwicklung berücksichtigt werden.

Qualität vs. Sicherheit

Nicht jeder Fehler ist gleich.

Drawing
Kategorie
Beschreibung

Quality Fault

Funktion fehlt oder funktioniert nicht

Works

Anwendung erfüllt Anforderungen

Security Fault

Ungeplante Eigenschaften ermöglichen Angriffe

Ein Sicherheitsproblem ist also nicht unbedingt ein Programmfehler, sondern kann auch eine unerwartete Funktion sein.

Bedeutung von Tests

Neben funktionalen Tests sind auch nicht-funktionale Tests wichtig: Sicherheitstests, Lasttests, Usabilitytests, Recoverytests.

Diese helfen, Schwachstellen frühzeitig zu erkennen und zu beheben.

Zuletzt aktualisiert