IT-Sicherheit - Georges Awad

Werbung
IT-Sicherheit
1. Einführung und organisatorische Sicherheit
2. Datenschutz und Nicht-technische Datensicherheit
3. Identity Management
4. Angewandte IT Sicherheit
5. Praktische IT Sicherheit
1. Einführung und organisatorische Sicherheit
Gefahren---->
unbeabsichtigt Handlungen
beabsichtigte Handlungen
Zu schützenden Ziele: ---> materielle (Lebewesen; Einrichtungen; IT-Technik...)
und
immaterielle Schutzgüter (Daten; Informationen;
persönliches Ansehen...)
In der englischen Sprache:
Security (Schutz eines Systems vor Angriffen)
Safety (Zuverlässigkeit eines Systems)
1.2 Grundlegende Datensicherheitsaspekte und Sicherheitsanforderungen
Sicherheitsaspekte zur Klassifizierung von Angriffen:
Integrität (engl. Integrity): Ressourcen dürfen nicht unautorisiert verändert werden.
Checksummen bei der Übertragung (bspw. mittels Hash-Funktion)
Authentizität (engl. Authenticity):
Ressourcen müssen echt sein (Absender, Quelle...)
Digitale Signatur (sym./asym. Schlüssel)
Verfügbarkeit (engl. Availability): Ressourcen müssen nutzbar und erreichbar sein.
Verbindlichkeit (engl. Accountability, Non-Repudiation): auch Nachweisbarkeit oder
Nicht-Abstreitbarkeit (wichtig z.B. bei Internet-Transaktionen wie Bestelloder Zahlvorgängen).
Vertraulichkeit (engl. Confidentiality): Geheimhaltung von Informationen gegenüber
Unberechtigten.
Privatsphäre (engl. Privacy):
Umgang mit personenbezogenen und
personenbeziehbaren Daten.
1.3 Sicherheitsrisiken, Sicherheitslücken und bekannte Attacken
Sicherheitslücken Schwachstelle (engl. Vulnerability)
Bedrohung (engl. Threat)
Werte/Ressourcen (engl. Assets)
Angriff (engl. Attack)
Basisangriffe auf eine Kommunikation
1.3.1 Programme mit Schadensfunktion
Viren und Trojaner
1.3.2 Cross-Site Scripting XSS
Vorrausetzungen:
1. eine vertrauenswürdige Web-Applikation, die dynamische Seiten erzeugt und
2. ein Browser, der die Ausführung von Scripten ermöglicht.
Cross-SiteScripting
1.
2.
3.
4.
1.3.3 SQL Injection
SQL ermöglicht das Definieren, Abfragen und Verändern von Daten in
relationalen Datenbanken.
SQL Injection: Eingriff durch eingeschleuste Datenbankanfragen
Abhängig von den verwendeten Befehlen sind verschiedene Angriffe auf eine Datenbank möglich:
Lesen von Informationen: z.B. SELECT
Manipulation beziehungsweise Löschen von Informationen: z.B. DELETE, INSERT, UPDATE
Zerstören von Datenbanken bzw. Tabellen: z.B. DROP TABLE, DROP DATABASE
Ausführen von Systembefehlen auf dem Hostsystem: z.B. System.exec(“format c:“)
Wie beim Cros-Site Scripting ist die Integration einer Eingabeüberprüfung die
wichtigste und effektivste Maßnahme zur Vermeidung von SQL Injection Angriffen.
Diese sollte wiederum mit einer vollständigen Beschreibung und Überprüfung der
zulässigen Eingaben durch reguläre Ausdrücke realisiert werden.
1.4 Sicherheitspolicies und Modelle
Ziel:
Zugriff auf Ressourcen zu reglementieren
Diese Regeln legen fest, welche Subjekte s (Nutzer, Gruppen oder Prozesse) auf
Objekte o (Prozesse, Dateien, Nutzer, …) mit welchen Rechten r (lesen, schreiben,
ausführen, …) zugreifen dürfen.
Sicherheitsmodelle
Access Control Matrix (ACM)
Vorteile:
einfache und intuitive Verwendung
effiziente Suche innerhalb der Matrix
Nachteile: Größe der Matrix, gegebenenfalls leere Zellen
Großer Aufwand beim Hinzufügen bzw. Entfernen neuer Subjekte
oder Objekte.
Access Control List (ACL)
Für jedes Objekt o (hier Dateien) werden alle Subjekte s (hier Nutzer)
gespeichert, die Rechte für den Zugriff besitzen.
Vorteil: Im Gegensatz zur ACM werden hier nur notwendige Einträge
gespeichert, dadurch gibt es keine leeren Zellen.
Nachteil:
langsamere Suche im Vergleich zu ACMs, wodurch sich
beispielsweise die Zusammenstellung aller Rechte eines Subjektes
zeitlich aufwändig gestaltet.
Capability List (CAP)
Role-based Access Control (RBAC)
Rollenbasierte Zugriffskontrolle
Mandatory Access Control
Zugriffsrechte beruhen nicht allein auf der Identität des Subjektes sondern auf
zusätzlichen Regeln und Eigenschaften des Subjektes und des Objektes
Multi-Level Access Control
Hierarchie von Schutzstufen:
Zugriff auf ein Objekt wird zum einen abhängig gemacht von der Schutzstufe des
Subjektes (clearance) und der des Objektes (classification).
Bell-LaPadula-Modell (Beispiel)
„No-read-up“:
Es ist nicht möglich, das ein niedriger eingestuftes Subjekt s1
Informationen eines höher eingestuften Subjektes s2 lesen kann.
„No-write-down“: Es darf einem höher eingestuften Subjekt s2 nicht möglich sein,
Informationen in ein Objekt eines niedriger eingestuften Subjektes
s1 zu schreiben.
1.4.3 Integritätsmodelle: Biba, Clark Wilson
Sicherung der Integrität:
Daten dürfen nicht durch Unbefugte manipuliert werden können
„No-read-down“: Jedes Subjekt darf nur innerhalb von Objekten der gleichen oder
einer höheren Schutzstufe lesen. Dadurch wird erreicht, dass nur zuverlässige
Informationen (da von höherer Stufe geschrieben) verwendet bzw. weitergegeben
werden.
„No-write-up“: Schreiben darf ein Subjekt nur in Objekte der gleichen oder einer
niedrigeren Schutzstufe. So werden nur Informationen aus einer kompetenteren
Quelle an die anderen Stufen weitergegeben.
Biba-Modell
Clark-Wilson-Modell
Es ist ein auf Großrechnern (Mainframes) häufig eingesetztes Modell.
Es beschreibt Maßnahmen, die es möglich machen den integeren Zustand eines
IT-Systems zu erhalten.
Das bedeutet, dass das System von einem gültigen (konsistenten) Startzustand
in einen ebenfalls konsistenten Endzustand überführt wird.
Übergänge zwischen konsistenten Zuständen können nur durch wenige explizit
erlaubte und wohlgeformte Transaktionen erfolgen.
Wohlgeformt heißt in diesem Kontext, dass die Konsistenz des Systems bei der
Transaktion erhalten bleibt.
Beispiel:
Für die Kontoführung von Bankkunden seien folgende Eigenschaften gegeben:
Sin - Summe des heute eingezahlten Geldes
Sout - Summe des heute abgehobenen Geldes
Ggestern - Geld auf dem Konto am gestrigen Tag
Gheute - Geld auf dem Konto am heutigen Tag
Die Konsistenz kann dann wie folgt beschrieben werden:
Gheute = Ggestern + Sin - Sout
1.4.4 Hybride Modelle (Multilateral Access Control Modelle)
Ziel:
Sicherung von Integrität und Vertraulichkeit
durch Vermeidung von Interessenkonflikten
Chinese Wall Modells
Ressourcen werden bestimmten Konfliktklassen zugeordnet werden. Gehören zwei
Objekte unterschiedlichen Konfliktklassen an und will ein Subjekt, welches bereits
Zugriff auf eines der beiden Objekte hatte, auf das andere zugreifen, so wird dieser
Zugriff verweigert. Das bedeutet, dass die Regeln des Modells zukünftige Zugriffe
von Subjekt s1 auf ein Objekt o1 verhindern, wenn s1 in der Vergangenheit bereits
Zugriff auf ein Objekt o2 hatte und o1 und o2 derselben Konfliktklasse angehören.
1.4.5 Praktischer Zugriffschutz in UNIX
Dateizugriffsrechte unter UNIX-Betriebssystemen
1.5 Sicherheitsstandards
ISO 27001
1.6 Social Engineering
Ziel des Social Engineering ist das Ausspähen bzw. „in Erfahrung bringen" von
vertraulichen Daten.
Human-based Social Engineering: Angreifer tritt direkt mit dem Opfer in
Verbindung. Dies kann über direkten Kontakt oder auch über das Telefon passieren.
Based Social Engineering: Kontaktaufnahme über die verschiedenen
Möglichkeiten des Computers. Typische Beispiele sind hier das Versenden von EMails oder das Kontaktieren in Chats.
Z.B. Phishing Mail (paypal)
Angriffsbaum zur Erlangung des Passworts einer Person P
Herunterladen