Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Rechen- und Kommunikationszentrum (RZ) Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen.

Ähnliche Präsentationen


Präsentation zum Thema: "Rechen- und Kommunikationszentrum (RZ) Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen."—  Präsentation transkript:

1 Rechen- und Kommunikationszentrum (RZ) Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen

2 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 2 Motivation Angriffstechniken  Ablauf/Vorgehen des Angreifers  Abwehrmaßnahmen Matse-Dienste  Überblick  Abwehrmaßnahmen Fazit Inhaltsverzeichnis

3 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 3 Motivation

4 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 4 Motivation Verdeutlichung der Relevanz von Sicherheit  Software- und Webentwickler  Endbenutzer Überprüfung der Matse-Dienste auf Sicherheitslücken  Sind eventuell welche vorhanden?  Welche Sicherheitsvorkehrungen wurden getroffen ?

5 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 5 Angriffstechniken

6 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 6 Cross-Site-Scripting  Ablauf  Gegenmaßnahmen SQL Injection Cross-Site-Request-Forgery Session Hijacking Angriffstechniken

7 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 7 Cross-Site-Scripting

8 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 8 Cross-Site-Scripting (XSS) Manipulation einer Webseite durch HTML 3 Arten: 1.Reflektives XSS:  Einmalige Interpretation der übermittelten HTML-Tags 2.Persistentes XSS:  HTML-Code wird abgespeichert  Dadurch Übermittelung der Daten an mehrere Personen/Browser 3.Lokales XSS:  Der Browser lädt den Schadcode selber nach  Verwendung des HTML-Tags

9 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 9 Beispiel: Ablauf Reflektives XSS Ausgangspunkt: URL: http://www.example.com/?search=test

10 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 10 Beispiel: Ablauf Reflektives XSS Manipulierte Webseite: URL: http://www.example.com/?search= +Please+Login+to+ continue%3A+ + Username%3A+ + +Password%3A+ + + + +

11 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 11 Abwehrmaßnahmen Verhindern der Interpretation von ungewollten HTML-Tags  Maskierung der eingegeben Daten  PHP Funktion: htmlspecialchars()  Dadurch Maskierung der HTML-Tags:  = <script> Ausgabe nach Verwendung von htmlspecialchars():  You searched for +Please+Login+to+continue%3A + +Username%3A+ + +Password%3A+ + +<input+type%3D"submit"+ value%3D"Login">+ +

12 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 12 SQL Injection

13 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 13 SQL Injection Angriff auf Datenbanksysteme  Benutzereingaben werden in Statement eingebettet Verwendung von SQL Statements durch Befehle wie:  DROP  UPDATE  DELETE  WHERE

14 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 14 Beispiel: SQL Injection Datenbanktabelle „user“ : IDnamepassword 1Adminroot123 2ExampleUserpasswd123

15 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 15 Beispiel: Ablauf SQL Injection SQL Statement: SELECT id FROM user WHERE name='$name' AND password='$password'; Benutzer PC Eingabe: ExampleUser, passwd123 SELECT id FROM user WHERE name='ExampleUser' AND password='passwd123';

16 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 16 Beispiel: Ablauf SQL Injection SQL Statement: SELECT id FROM user WHERE name='$name' AND password='$password'; Angreifer PC Eingabe: ExampleUser, ' OR name='ExampleUser SELECT id FROM user WHERE name='ExampleUser' AND password='' OR name='ExampleUser';

17 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 17 Abwehrmaßnahmen Verhindern der Interpretation von ungewollten SQL Befehlen  Verwendung von Prepared Statements (vorbereitete Anweisungen mit Platzhaltern für Daten) $sql = 'SELECT * FROM beispiel WHERE name=:nachname'; $sth = $dbh->prepare($sql); $sth->bindValue(":nachname", $var); $sth->execute(); Statement wird mit Platzhaltern kompiliert  SQL Befehle in Variablen werden nur eingefügt

18 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 18 Cross-Site-Request-Forgery

19 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 19 Cross-Site-Request-Forgery (CSRF) Gefälschte Anfrage erzwingen  Angreifer schickt über den Browser des Benutzers eine Anfrage an den Webserver Manipulation einer Webseite durch HTML  Manipulation einer Webseite damit die gefälschte Anfrage versendet wird

20 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 20 Beispiel: Ablauf CSRF Besucher besitzt einen Account bei forum.de PC Webserver forum.de Webserver evil.de http://www.forum.de/login.php http://www.evil.de http://www.forum.de/logout.php Status: Angemeldet Status: Offline

21 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 21 Abwehrmaßnahmen Überprüfung der Anfrage:  Generierung eines Schlüssels zur Identifikation  Zufällige Zeichenkette  Gilt entweder für einen Request oder gesamte Sitzung  Vorhanden auf Server- sowie auf Clientseite

22 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 22 Abwehrmaßnahmen Besucher besitzt einen Account bei forum.de PC Webserver forum.de Webserver evil.de http://www.forum.de/login.php http://www.evil.de http://www.forum.de/logout.php Status: Angemeldet Schlüssel= 'AdEzHdf..' Kein Schlüssel !!!

23 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 23 Session Hijacking

24 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 24 Session Hijacking Übernahme der Sitzung eines Benutzers  Angreifer erlangt Zugriff auf Webapplikation  Angreifer erhält Rechte des Benutzers Verwendung von Software wie z.B.Wireshark oder Firesheep

25 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 25 Ungesichertes WLAN Netzwerk Beispiel: Ablauf Session Hijacking PC Webserver PC Login Session ID= ACF3D35F21… Abhören der ID Session ID= ACF3D35F21… Kommunikation mit Session ID ID = ACF3... Kommunikation mit Session ID

26 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 26 Abwehrmaßnahmen Verhindern des Auslesens der Sitzungsdaten  Verschlüsseln der Informationen  Dazu HTTPS ( Hypertext Transfer Protocol Secure) HTTPS:  Verschlüsselung und Authentifizierung zwischen Webserver und Browser

27 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 27 Matse-Dienste

28 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 28 Überblick Gegenmaßnahmen  Cross-Site-Scripting  Cross-Site-Request-Forgery  Session Hijacking Matse-Dienste

29 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 29 Überblick

30 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 30 Überblick

31 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 31 Abwehrmaßnahmen Cross-Site-Scripting Session Hijacking Cross-Site-Request-Forgery

32 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 32 Abwehr Cross-Site-Scripting

33 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 33 Matse-Dienste Abwehrmaßnahmen: Cross-Site-Scripting Trennung von Code und Ausgabe  Verwendung von Template Engine Smarty (PHP-Bibliothek) Smarty

34 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 34 Abwehr Session Hijacking

35 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 35 Matse-Dienste Abwehrmaßnahmen: Session Hijacking Kooperation mit der Benutzerverwaltungssoftware Shibboleth

36 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 36 Matse-Dienste Abwehrmaßnahmen: Session Hijacking Ablauf Anmeldung:  Benutzer führt ein Login bei Shibboleth durch  Shibboleth authentifiziert den Benutzer und übermittelt Daten mittels HTTPS  TIM-ID und über HTTPS generierte Sitzungs-ID

37 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 37 Abwehr Cross-Site-Request-Forgery

38 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 38 Matse-Dienste Abwehrmaßnahmen: Cross-Site-Request-Forgery Matse-Dienste eigene CSRF-Klasse  POST-Formular mit Hidden Feld und enthaltenem Token  Generiert durch Webserver und dem Benutzer zugeteilt Ablauf:  Browser schickt ein Formular ab  Formular wird über mitgesendetes Token authentifiziert und abgearbeitet

39 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 39 Fazit

40 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 40 Fazit Erkenntnisse: 1.Viele Möglichkeiten Systeme zu kompromittieren 2.Vorgestellte Themen nur ein kleiner Anteil 3.Matse-Dienste soweit abgesichert Trotzdem: 1.Programme/Software werden weiterentwickelt  Dadurch können neue Sicherheitslücken entstehen 2.Neue Angriffstechniken entstehen

41 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 41 Fazit Aspekt der Sicherheit kein einmaliger Faktor sondern ein dauerhafter Prozess der Analyse und Behebung

42 Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen| Rechen- und Kommunikationszentrum 42 Fragen ?


Herunterladen ppt "Rechen- und Kommunikationszentrum (RZ) Sicherheitsorientierte Webentwicklung am Beispiel der Matse-Dienste Jan-Frederic Janssen."

Ähnliche Präsentationen


Google-Anzeigen