7. Der Pornowurm
●
2007
●
1 Mio User
●
Lediglich ein PoC
●
XSS Attacken und persönliche Reputation
●
Emailadresse und sexuelle Präferenzen
●
Reported aber nie gefixt
8. Nduja Connection
●
2007
●
Mailworm
●
Mehrere italienische Freemailer
●
Cross Domain
●
Nur ein PoC
9. Der nette Wurm
●
2007
●
Wordpress
●
Heilsamer Payload
●
Propagation via Scanning und Blogroll
●
Große Coverage in den Medien
10. Jikto
●
2007
●
Cross Domain
●
PoC Wurm für einen Shmoocon Talk
●
“Geleakter” Sourcecode
●
SOP Normalisation via Google Translate
●
Big buzz
11. Diminutive Worm Contest
●
2008
●
“Den Kürzesten haben”
●
Webworm aus ca. 150 Bytes als Resultat
●
Erstmalig HTML als Wurmgerüst
●
Contest mit Botschaft
13. Rediff.com
●
2009
●
Mailworm
●
60 Millionen betroffene User
●
Nutzt kleine Lücke im HTML Filter
14. Reddit, Twitter,...
●
2009
●
Spam, SEO, Account Hijacking etc
●
Facebook Apps running wild
●
Orkut
●
Und viele andere...
15. Mehr mehr MEHR!
●
Quellen diverser Würmer sind online
●
Teils mit Erläuerungen
●
sla.ckers.org
●
AJAX Worm Database
●
namb.la/popular
16. Bilanz und Warten auf 2010
●
Schlechter Code
●
Lediglich String Obfuscation
●
Potenzial noch nicht ausgereizt
●
Meist fokussiert auf die betroffene App
●
Mangelhafte Infrastruktur
17. Heutige Probleme
●
Wenige verstehen XSS
●
Gleiches für CSRF
●
Und erst recht die Kombination
●
Dabei ist's nicht so schwer
●
Und HTTP ist immer noch an allem Schuld
●
Oder?
18. Goldene Regel
●
Remote XSS und Applikation mit Login == Wurm
●
Auch reflektiver XSS – dank short URLs
●
HttpOnly ist kein Hindernis
●
Warum?
19. Anatomie eines Wurms
●
Initiale XSS Lücke
●
Data Storage
●
Payload Propagation
●
Wurmkopf
●
MVC oder was?
23. Fallbespiel
●
Yamanner
●
View - die Lücke im Yahoo! Mail Frontend
●
Controller - Der Payload
●
Model - Ein PM System einer anderen Website
●
Sauber strukturiert - aber...
●
Einfach zu eliminieren
28. Eigentlich nichts
●
Das Internet als Infrastruktur
●
Verfügbar, dezentralisiert und schnell
●
Services im richtigen Kontext sehen
●
Alle Komponenten eines “Binary Worms” haben
Web-Repräsentanten
30. Dinge im Hintergrund
●
AJAX Requests
●
DOM Worker
●
Schnittstellen zu OS und Applikationen
●
ActiveX, PDFs, Videos,...
31. Model
●
Pastebins
●
Image Hoster
●
Twitter, Delicious und andere
●
Einfach dank Tagging
●
Web-RAID und mehr...
32. Client Side Storage
●
So viele APIs
●
Bekannte wie W3C Storage APIs
●
Und weniger bekannte Vertreter wie #userdata
●
Oder HTML+TIME
33. Payload obfuscation
●
String Obfuscation und mehr
●
Wir hatten das bereits...
● location.hash
● window.name
●
Aynwhere in DOM country
●
Bilder, Farben, Subdomains, Dateinamen, ...
34. Robustness
●
Escaping und Encoding
●
Base64 – nicht alle User Agents
● escape()
● encodeURIComponent()
●
Markup nutzen
35. Propagation
●
Scanning und Fuzzing
●
Spidering
●
Google und Yahoo! Search API
●
Code Search Engines
36. JavaScript und HTTP
●
AJAX wenn möglich
●
XDR
●
Cross-Domain
●
Lesend zum Harvesten
●
Nicht-lesend zum Verbreiten
● new Image().src='http://...'
37. Crossing the Line
●
Requests an beliebige Domains
●
Requests an beliebige Protokolle
●
Requests an beliebige Ports
●
Shodan
38. Wenig Limits
●
SOP als einziges Hindernis
●
Komplexer als man denkt
●
Single Point of Failure
●
2009 wie oft genau gefallen?
39. Und noch weiter...
●
Intranet Würmer
●
OTRS, phpMyAdmin, Plesk
●
Würmer in Entwicklungsumgebungen
●
Eclipse, Trac, ...
●
Politische Foren und Abstimmungssysteme
●
Mobile Botnetze via XSS
40. Zusammenfassung
●
Web-Würmer können mehr
●
Trusted User Interaction simulieren
●
Dezentrale Controller
●
Dezentrale und inhomogene Models
●
Cross-Domain und Cross-Protocol
41. Warhol war einmal
●
Persistente Webworms sind möglich
●
Nur gibt es noch keinen
●
Zeit einen zu bauen!
●
Oder?
42. Rechtliches
●
Keine einfache Lage
●
Mehr eine völlige Blackbox – siehe §202c
●
Gerade noch ein PoC...
●
...oder schon eine Straftat?
●
Kompliziert in EU und USA
43. Was kann man tun?
●
Dilemma Diversität
●
Zuviele Kombinationen aus Services
●
Messerblock und Säurefässchen
●
CSE oder Exploit Search Engine?