Click here to load reader
View
75
Download
0
Embed Size (px)
DESCRIPTION
Cross-Site-Scripting und Cross-Site-Request Schwachstellen in Web Applikationen. Daniel Franke Tim Benedict Jagla Matthias Thimm. Cross-Site-Scripting. XSS Allgemein. Cross Site Scripting Einschleusen von Schadcode um Browserausgabe zu manipulieren Folge: Manipulation HTML-Formulare - PowerPoint PPT Presentation
PowerPoint-Prsentation
Cross-Site-Scripting undCross-Site-Request Schwachstellen in Web ApplikationenDaniel FrankeTim Benedict JaglaMatthias ThimmCross-Site-ScriptingXSS AllgemeinCross Site ScriptingEinschleusen von Schadcode um Browserausgabe zu manipulieren
Folge: ManipulationHTML-FormulareCookiesURLsZugangClientseitige SprachenZ.B.JavaScriptVBScriptFlash 4XSS (non-persistent/reflected)XSS (non-persistent/reflected)6
7
XSS (non-persistent/reflected)8
XSS (non-persistent/reflected)GefahrenCookieCatcherLink obfuscating
Nice to knowAuch in tag kann eine HTTP GET Request eingebettet werden9XSS (non-persistent/reflected)XSS (persistent/stored)XSS (persistent/stored)11
11XSS (persistent/stored)12
XSS (persistent/stored)13
XSS (persistent/stored)14
XSS (persistent/stored)MySpace Oktober 2005
Samy Worm by Samy KamkarOZ: but most of all, Samy is my hero
In 20 Stunden ber eine Million Infizierungen15XSS (DOM-based)XSS (DOM-based)17
XSS (DOM-based)Twitter Anfang 2011
(function(g){var a=location.href.split("#!")[1];if(a){ g.location=g.HBR=a;}})(window);
http://twitter.com/#!javascript:alert(document.domain);18
Cross-SiteRequest-ForgeryCSRFWas ist CSRF?Unterschieben eines URL-AufrufesAutomatisches authentifizieren & ausfhren20CSRFVorgehen21
CSRFGefahrJede Serverseitige Aktion ist anflligJa: JEDE !!!
Bsp: http://www.example.com/Logout
22CSRFUrsacheZustandslosigkeitAutomatische Authentifikation (Cookies)
23
CSRFING-Direct Sept. 2008U.a. berweisungen mglichAutomatische Authentifikation (Cookies)Google Mail 2007Filternderungen und Umleitungen mglich
24CSRFAspekte AuthentizittIntegritt(Verfgbarkeit)(Vertraulichkeit)
25
SchutzmanahmenAllgemeine SchutzmanamenClientseitigSession IDsErweiterungen wie NoScriptCookies verbietenServerseitigTokensHTML Entities verwendenURL Encode verwenden
27
Exkurs: HTML Entities & URL EncodeBeispielAnfrage in Formularfeld: alert('XSS')Anfrage in HTML Entities: Anfrage in URL Encode: %3Cscript%3Ealert%28%27XSS%27%29%3C%2Fscript%3EJavaScript Interpreter:?28
blicher Schutz vor CSRFFunktionServerseitig werden HTTP Requests (bis auf POST) eingeschrnktToken werden verwendet
NachteileServer muss Token verwaltenToken muss Formularfeld zugeordnet seinAbgelaufene Token mssen ungltig gemacht werden DoS29
[T1]Schutz vor CSRF:Double-Submit Cookie [ZF08]FunktionBraucht keine serverseitigen Zustnde mehrZwei TokensEiner im CookieEiner im Request
VorteileSame-Origin-Policy fr CookiesSind die Tokens identisch kommen Cookie und Request von derselben RessourceNachteileModifikationen im Applikation Code30Schutz vor CSRF:Double-Submit Cookie+ [LTJ12]Funktion ServerseitigProxy (Gatekeeper) validiert TokenWhitelist fr Einstiegspunkte in Applikation ohne Token (Bilder, JavaScript, CSS)Gatekeeper fgt jedem ausgehenden HTML eine JavaScript Library hinzu
HTTP Request MglichkeitenRequests durch Interaktion mit DOMImplizite Requests durch HTML tagsRequests von JavaScripts XMLHttpRequestWeiterleitungen seitens des Servers 31Validierung via location.host DOM des bergeordneten FenstersToken wird geliefert sofern der Frame validiert wurde32
Double-Submit Cookie+ [LTJ12]Example: Framing SolutionQuellen[SJW07]A. Wiegenstein, Dr. M. Schuhmacher, X. Jia, F. Weidemann, The Cross Site Scripting Threat[Kurtz10]A. Kurtz, Bedrohung Cross-Site Request-Forgery Grenzberschreitung: Die andere Schwachstelle in Web-Applikationen[LTJ12]S. Lekies, W. Tighzert, M. Johns, Towards stateless, client-side driven Cross-Site Request Forgery protection fr Web applications[ST12]L. K. Shar, H. B. K. Tan, Defending against Cross-Site Scripting Attacks[Klein05]A. Klein, DOM Based Cross Site Scripting or XSS of the Third Kind[ZF08]W. Zeller, E. W. Felten, Cross-Site Request Forgeries: Exploitation and Prevention[T1]http://wp.dynaperl.de/2008/11/29/tcp-syn-dos/
33FRAGEN!?Vielen Dank fr die Aufmerksamkeit