Web-Application- und E-Business-Security - Grundlagen

Aus FernFH MediaWiki
Version vom 20. Jänner 2022, 11:11 Uhr von JUNGBAUER Christoph (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „= Grundlagen = In dieser Lektion lernen Sie die Grundlagen der Sicherheit von Web-Anwendungen kennen. Die Begriffe Web Application (Web-App) und Web-Anwendung werden hier synonym verwendet. == Darstellung der Beispiele in diesem Studienheft == Da dieses Studienheft viele spezielle Zeichen wie das doppelte Anführungszeichen " oder das einfache Anführungszeichen ‘ verwendet ist es schwer diese Zeichen für den Beginn des Textes einer Eingabe her…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Grundlagen

In dieser Lektion lernen Sie die Grundlagen der Sicherheit von Web-Anwendungen kennen. Die Begriffe Web Application (Web-App) und Web-Anwendung werden hier synonym verwendet.

Darstellung der Beispiele in diesem Studienheft

Da dieses Studienheft viele spezielle Zeichen wie das doppelte Anführungszeichen " oder das einfache Anführungszeichen ‘ verwendet ist es schwer diese Zeichen für den Beginn des Textes einer Eingabe heranzuziehen. In weiterer Folge wird daher für den exakten Text jeweils eine geschwungene Klammer zur Öffnung und zum Schließen des Textes verwendet. ‘1‘ bedeutet also, man soll ein einfaches Anführungszeichen, gefolgt von der 1, von einem weiteren Anführungszeichen und abschließend von einem Leerzeichen eingeben. Bitte achten Sie an manchen Stellen drauf, dass Beispiele nur funktionieren, wenn man auch die (meist abschließenden) Leerzeichen beachtet.

Funktionsweise von Web Applications

Web-Anwendungen sind in eine Serverseite und eine Clientseite aufgeteilt. Auf der Clientseite ist dies in den meisten Fällen ein Web-Browser (gegebenenfalls mit speziellen zusätzlichen Anwendungen wie dem Adobe Flash Player[10]).

Schema einer Webanwendung

Auf der Serverseite befindet sich dann ein Webserver und meist eine angeschlossene Datenbank. Einfache Beispiele sind Online Shops wie amazon.de, komplexere Web Applikation erlauben im Browser mittlerweile auch die Bearbeitung von Dokumenten (beispielsweise Google Docs) oder die Steuerung von Smart Home Geräten (beispielsweise Loxone). Die Verbindung zwischen den serverseitigen Programmen kann gut gesichert sein – oft ist dies ein Common Gateway Interface (CGI)[12], das eine einheitliche Schnittstelle liefert. Die folgende Abbildung zeigt die Grundfunktion aus dem Patent für CGI.

Funktionsweise des CGI

CGI Verbindungen sind relativ sicher, dennoch sollte man sich bei Erstellung auch Gedanken über die Absicherung dieser Schnittstelle machen. Das CERT (Computer Emergency Response Team Austria) liefert auch hierzu regelmäßig Informationen über gefundene Schwachstellen, wie etwa Designfehler[13]. Tools wie „Nikto“[14] helfen Schwachstellen aufzuspüren und entsprechende Gegenmaßnahmen zu initiieren. Die Absicherung von CGI Schnittstellen ist jedoch nicht Teil der Lehrveranstaltung. Der Datenaustausch zwischen Client und Server erfolgt meist über die HTTP [1] Schnittstelle der Internetverbindung. Zu Erinnerung: http läuft auf dem Application Layer des OSI Modells.

Img1642082386482.jpeg

In Folge dessen kommen für Angriffe auf HTTP auch viele darunter liegende Layer wie TCP (Transport Layer) in Frage. Je höher der Layer angesiedelt ist, umso komplexer wird meist auch die Analyse von Angriffen. Zu den bekanntesten HTTP Attacken gehören Denial-of-Service (DoS) Angriffe, aber auch Man in the Middle (MITM) Angriffe.

IT Schutzziele

Beim Schutz vor Angriffen sollte man im Hinterkopf immer die klassischen Schuttziele der IT haben, also:

  • Vertraulichkeit
  • Integrität
  • Verfügbarkeit

Seit Einführung der Datenschutzgrundverordnung im Mai 2018 wird oft auch noch die Authentizität [2] als elementares Schutzziel genannt. Hier gilt es sicherzustellen, dass eine Person für bestimmte Handlungen auch eindeutig zuordenbar ist. Daraus leiten sich verschieden sichere Authentisierungsverfahren ab, wie die 2 Faktor Authentisierung als Erweiterung zur reinen Passwort- Authentisierung oder One Time Pads. Stellen Sie sich vor, sie möchten Ihren Online-Shop absichern. Sie benötigen also

  • Vertraulichkeit
    • Sicherstellung, dass die Daten Ihrer Kunden nicht einfach gestohlen werden können oder Daten für Mitbewerber einsehbar sind.
  • Integrität
    • Sicherstellung der Korrektheit der Daten, beispielsweise die Kontonummern der Kunden zum Abbuchen von Rechnungen.
  • Verfügbarkeit
    • Natürlich muss der Online-Shop auch möglichst ständig verfügbar sein.
  • Authentizität
    • Um Anfragen von Kunden zu beantworten, müssen Sie zuvor deren Identität möglichst zweifelsfrei feststellen können.

Arten von Angriffen

Neben dem Wissen welche Schutzziele man für Objekte definieren muss, ist es auch von Interesse mit welcher Art von Angreifer man es zu tun hat. Pfleeger[17] liefert hier eine erste Unterscheidung zwischen menschlichen und natürlichen Ursachen, die wir in diesem Studienheft nicht behandeln werden. Weiters wird bei den menschlichen Ursachen zwischen unabsichtlichen Fehlern (beispielsweise falsche Programmierung) oder absichtlichen Fehlern unterschieden. Letztlich stellt sich noch die Frage nach einem gezielten Angriff auf bestimmte Unternehmen, oder ungezielte Angriffe auf beliebige Ziele.


Psycholo

Arten von Angriffen gemäß Pfleeger

gie der Angreifer

Letztlich stellt sich noch die Frage ob Individuen oder ganze Gruppen einen Angriff planen und umsetzen. Je höher das gemeinsame Wissen der Angreifer ist, umso höher ist das Schutzbedürfnis.

Arten von Angreifern gemäß Pfleeger

Ethik des Hackens

In den Grundlagenvorlesungen haben Sie die Differenzierung zwischen White-Hats, Grey-Hats und Black-Hats kennengelernt. Beachten Sie, dass Sie sich auch als White-Hat nur dann im Rahmen der Gesetzte bewegen, wenn Sie die ausdrückliche Erlaubnis zum Angriff bestimmter Ziele haben. Oft werden spezielle Tools zu Penetrationstests verwendet, auch diese sind lediglich im Rahmen der Vorgabe einzusetzen – Unternehmen geben hierzu oft bestimmte Ports oder bestimmte IP Adressen vor.

Zusammenfassung

In diesem Kapitel haben Sie die grundlegende Funktionsweise von Web-Anwendungen wie der Client-Server Architektur, relevante Schutzziele sowie die psychologischen und ethischen Aspekte des Hackens kennen gelernt. Sie können nun die Rahmenbedingungen zum Schutz Ihrer IT definieren.

Übungsbeispiele

Übungsbeispiel 1

Überlegen Sie sich anhand einiger praktischer Beispiele in Ihrem Unternehmen, welche Schutzziele (Vertraulichkeit, Integrität, Verfügbarkeit) anzuwenden sind, um Sicherheit gewährleisten zu können. (Beispielsweise eine „Clean Desk“ Policy im Unternehmen).

Übungsbeispiel 2

Wurde in Ihrem Unternehmen das Thema Ethik in Bezug auf die IT thematisiert? Wie werden allgemeine Regeln zum Umgang mit der IT vermittelt (gibt es die berühmte „verwenden Sie keine Getränke in der Nähe Ihres Notebooks“ Regel?)? Anregungen dazu finden Sie auf den Seiten von Philipp Schaumann[18]: https://sicherheitskultur.at/Trainingskonzept.htm

  1. Es ist oft hilfreich, sich zu Protokollen die passenden RFCs durchzulesen. Im Falle von HTTP ist dies RFC7230[15].
  2. Bitte beachten Sie, dass im Deutschen – um die Verwirrung der Begriffe zu erhöhen – noch zwischen „authentisieren“ vom Client zum Server und „authentifizieren“ vom Server zum Client unterschieden wird. Der englische Begriff „authenticate“ gilt dagegen in beide Richtungen.