Nachdem nun auch im deutschsprachigen Raum der eine oder andere twitter Klon aus dem Boden gestampft wurde, sollte man die Diskussion um die ganzen Copycats der so genannten Web2.0 Communities/Portale/Applikation auch noch einmal aus einem anderen Blickwinkel betrachten: der Sicherheit.
Wenn Dinge „schnell, schnell“ aus dem Boden gestampft werden, ist die Gefahr immer hoch, dass der Sicherheitsaspekt darunter leiden mag. Sicherheit hat ihren Preis und im Übrigen auch dank des Internets und seiner Vielfalt auch eine immer höhere Komplextität. Von Dingen wie UTF-7 XSS Bugs mag ich gar nicht reden, aber ein Mindestmaß an Filterung/Validierung, um zumindest die gröbsten Schnitzer à la
„><script>alert(document.cookie);</script><a href=“
zu vermeiden, sollte schon drin sein. Speziell, wenn es sich um die so genannten „Web2.0 Communities“ handelt, bei denen eine Heerschar an Nutzern ihre Profile pflegt.
Das Problem ist doch ganz einfach folgendes:
bist du auf deiner Web2.0-Lieblings-was-auch-immer-Community gerade eingeloggt, die den einen oder anderen XSS-Bug hat, dann reicht es aus, dass ich dir per E-Mail einen präparierten (und vielleicht dank tinyurl.com zunächst einmal unkenntlich gemachten) Link schicke, auf den du ohne großartig nachzudenken draufklickst, und schon habe ich möglicherweise fremdes JavaScript in deinen lokalen Browser eingeschleust.
Weil immer mehr Web2.0-Applikationen auch immer mehr feinstes JavaScript + AJAX nutzen, ist es oft auch so, dass Anwendungen über das bisherige Request-Response-Prinzip (also: der Nutzer klickt auf einen Link, die Seite wird neu geladen/baut sich neu auf) hinaus gehen und echtes Desktop-Feeling verspüren lassen (du klickst auf einen Button, aber die Seite lädt sich nicht neu, sondern nur Teile der Seite werden dank AJAX-Requests aktualisiert).
Aber genau da fängt das Problem an: habe ich dir in einer solchen Applikation einmal JavaScript untergeschoben, bleibt es da drin. Solange die Applikation in deinem Browser lebt oder solange bis du den Browser schließt.
Und wenn du nun just zu dem Zeitpunkt, zu dem ich dir diesen Link geschickt habe (auf den du geklickt und damit das fremde JavaScript dank des XSS-Lecks der Web2.0 Applikation unbemerkt deinen Browser infiltriert hat), auch noch in deiner Applikation eingeloggt bist (was im AAL-Mitmach-Web ja gang und gäbe ist), dann kann ich mit Hilfe dieses JavaScripts beliebige Dinge tun. Vielleicht die Applikation unbemerkt in ein blindes Frameset packen und per Keylogger beobachten, was du gerade tippst. Deine in deinem Browser gespeicherten Passwörter klauen, sofern du das Autosave-Feature des Browsers nutzt. In deinem Namen persistentes XSS in der Applikation unterbringen, um damit weitere, andere Nutzer zu infizieren. Und so weiter und so weiter.
Die Gefahr lauert natürlich überall und Software ist alles andere als immer perfekt. Allerdings glaube ich, dass es Sinn macht, wenn man als junges „Startup“, das schnell online gehen will (gerade bei einer CopyCat der Fall), zumindest an die wichtigsten Aspekte (XSS, SQL Injections usw.) in diesem Bereich denkt.
Wie denken die Leser darüber?
Hi Bjoern, ich geb den Link zu Deinem Post direkt an unseren Mann fuers Technische weiter, auch wenn ich mir recht sicher bin, dass er in diesen Sachen wirklich fit ist, kann einmal Drueberschauen und im Hinterkopf behalten ja nicht schaden. Wir wollen Frazr auf jeden Fall so sicher wie moeglich bauen.
Viele Gruesse aus Koblenz,
Veit
Frazr.de
Hallo Veit,
Frazr.de (kannte ich nicht) hat zumindest eine billige, triviale „Gurke“ drin. Dein Vertrauen in den Technikmenschen ist nicht berechtigt. Deswegen testet man auch, man vertraut nicht.
bye