O'Reilly logo

PHP-Sicherheit: PHP/MySQL-Webanwendungen sicher programmieren by Stefan Esser, Christopher Kunz

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

1114.17 Second Order XSS per RSS
4.17 Second Order XSS per RSS
Durch das massenhafte Aufkommen von Weblogs hat sich ein zusätz-
licher Weg, XSS-Angriffe sowohl auf Endnutzer als auch auf Site-
Admins durchzuführen, aufgetan: XSS per RSS. RSS, das »Rich Site
Summary«, ist eine XML-Darstellungsform, die von den meisten
populären Blogs für die sogenannte »Aggregation« verwendet wird.
Meist enthält ein RSS die letzten fünf Titel des Blogs mit einem kurzen
Anriss und der URI zur vollständigen Eintragung. Sogenannte »Blog-
rolls« sammeln die RSS-Files anderer Blogs, bereiten diese in HTML
auf und zeigen sie an – entweder, damit sich der Betreiber den Besuch
auf mehreren thematisch ähnlichen Blogs sparen kann oder weil ein
Blog-Besitzer interessante Einträge von Freunden und Bekannten für
diese an einer zentralen Stelle sammeln möchte. Beispiele für solche
Blogrolls wäre die PHP-Blogroll »Planet-PHP«
12
.
Unbemerkter XSS
Einige populäre Blogs litten in der letzten Zeit unter der Tatsache,
dass an den Titeln von RSS-Einträgen keinerlei Eingabeprüfung durch-
geführt und diese ungeprüft an den Leser weitergereicht wurden.
Somit konnte ein böswilliger Blog-Betreiber zunächst mit etwas Social
Engineering dafür sorgen, in die Blogrolls seiner späteren Opfer aufge-
nommen zu werden – um diesen dann mit einem Eintrag von seinem
eigenen Blog die Cookies zu stehlen. Das Interessante an diesem
Angriffstyp ist, dass keinerlei Zugriff von außen notwendig ist und der
Angreifer die volle Kontrolle über sämtlichen Schadcode behält. Mit
ausreichenden JavaScript-Kenntnissen kann er so völlig unbemerkt
den Angriff durchführen und danach seine Spuren verwischen.
Sie sollten also auch dann, wenn Sie es bei Ihrem Blog oder einer
anderen Datenquelle zunächst nur mit XML zu tun haben, auf XSS-
Möglichkeiten achten; schließlich wird aus diesem XML später wieder
HTML generiert. Um im Aggregationsmodul Ihres Blogs XSS zu fil-
tern, wenden Sie einfach die in Abschnitt 4.12 genannten Tipps an,
aber achten Sie auf Kollisionen der HTML-Entities mit dem jeweiligen
XML-Schema.
12. http://www.planet-php.net/

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required