DOM-based XSS

19
DOM-based XSS Krassen Deltchev Zdravko Danailov {Krassen Deltchev|Zdravko Danailov} %2540 %2540 rub.de 10.04.12

description

Presentation to the M.Sc. project thesis: DOM-based XSS to the Chair of Network and Data Security, RUB, HGI Prof. Jörg Schwenk The paper will be soon available- after the attestation.

Transcript of DOM-based XSS

Page 1: DOM-based XSS

DOM-based XSS

Krassen Deltchev Zdravko Danailov

{Krassen Deltchev|Zdravko Danailov} %2540 %2540 rub.de

10.04.12

Page 2: DOM-based XSS

2

Gliederung

1. Stats und Grundwissen

2. Klassische XSS vs. DOMXSS

3. Technischer Hintergrund

4. S3 Meta-Model

5. URL- obfuscation

6. Demo

7. Verteidigungsmechanismen

8. Ansätze und Modelle

9. Pen-testing tools

10. Zusammenfassung

Page 3: DOM-based XSS

3

Stats und Grundwissen

Quelle 1

Page 4: DOM-based XSS

4

Stats und Grundwissen

Quelle 2

Page 5: DOM-based XSS

5

Klassische XSS vs. DOMXSS

1. Klassische XSS:

NP-XSS( reflected XSS)

P-XSS( stored, persistent XSS)

Man braucht einen laufenden Web-Server

Forensics gibt es, auch WAFs

Man schützt den Server, oder die Server-Konstellation

2. DOMXSS

Klientseitig( client-side)

Ein laufender Web-Server ist nicht unbedingt

Client-Side Forensics s**xs, keine WAFs

Man schützt das Browser-/User-Agent-Verhalten

Page 6: DOM-based XSS

6

Technischer Hintergrund

Page 7: DOM-based XSS

7

S3 Meta-Model

Page 8: DOM-based XSS

8

URL-obfuscation

Page 9: DOM-based XSS

9

Page 10: DOM-based XSS

10

Verteidigungsmechanismen

1. Basic level:

Routine tasks

Dokumentation

Version kontrolling

Cheat sheets:

DOM based XSS Prevention Cheat Sheet, in 3

HTML5 Security Cheatsheet, in 4

HTML5_Security_Cheat_Sheet XSS (Cross Site Scripting) Preventi-on Cheat Sheet, in 5

XSS (Cross Site Scripting) Cheat Sheet, Esp: for filter evasion, in 6

2. Advanced level: Approach I & Approach II

3. HoneyWebEnv + WebScarab

Page 11: DOM-based XSS

11

Verteidigungsmechanismen

Approach I & Approach II

Page 12: DOM-based XSS

12

Ansätze und ModelleDefensive STO Modell

Level Type Strategical layer Tactical layer Operational layer

Realization(Level of security model)

Basic security All tasks are necessary

Admin tasks, manuals, cheatsheets

Advanced security

Find proper Models: S3MM, AFA

Patterns, Security APIs, Coaching

Execution(Manual vs. Automated)

Questions:●Manual/ automated●concurrency

manual documentation

automated Web-scanners

semi-automated Forensics

Deployment stage Improving the SSDLC

Comparing to other SSDLCs

Apply approprate decisions on every stage of the SDLC

Page 13: DOM-based XSS

13

Ansätze und Modelle

Page 14: DOM-based XSS

14

Ansätze und Modelle

Page 15: DOM-based XSS

15

Ansätze und Modelle

Client-sideWeb-Applicationfiltering

Page 16: DOM-based XSS

16

Penetration Testing

1. Static code checkers:

DOM XSS Scanner

2. Dynamic code checkers:

DOMScan,

DOMTracer and

WebScarab(NG)

3. Mixed tools:

DOM Snitch

Dominator

4. Educational tools:

WebGoat , innerHTML

Page 17: DOM-based XSS

17

Zusammenfassung

1. Über 100 Seiten getestet → alle weisen auf XSS, o. DOMXSS

2. Domxsswiki ist wichtig → Literatur organisiert

3. Vereinfachte Modelle sind präsent: S3MM, DSTO, SSDLC, A I & A II

4. S3MM DOMXSS DBS ist wichtig

5. 3rd party libraries brauchen Evaluierung(Dojo, Knockout., Backbone.js etc.)

6. IceShield ist viel versprechend

Nebenläufige Evaluierung

7. PHPIDS & ESAPI4JS brauchen Verbesserung

8. DOMXSS PT-Tools müssen verbessert werden

DOMinator, DOMXSSScanner

9. Kognitive Filter( WOT) und Semantic Search sind wichtig

Page 18: DOM-based XSS

18

Fragen

Page 19: DOM-based XSS

19

Quellenverzeichnis

1. 2011: Web Application Security Metrics Landscape, Arian Evans

2. 2011: WhiteHat Website Security Statistic Report, WhiteHat

3. https://www.owasp.org/index.php/DOM_based_XSS_Prevention_Cheat_Sheet

4. http://html5sec.org/https://www.owasp.org/index.php/

5. https://www.owasp.org/index.php/XSS_Prevention_Cheat_Sheet

6. http://ha.ckers.org/xss.html