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

81
4 Cross-Site Scripting
Über nicht ausreichend geprüfte Skriptparameter ist es oft
möglich, die HTML-Ausgabe einer PHP-Anwendung zu mani-
pulieren. Ein Angreifer kann so dafür sorgen, dass JavaScript
im Browser eines Endanwenders ausgeführt wird, der die
manipulierte Seite betrachtet. So können Passwörter, Cookies
und andere sensitive Daten ausgespäht werden. Diese Art von
Angriffen nennt man Cross-Site Scripting oder XSS.
4.1 Grenzenlose Angriffe
Die Angriffsklasse der Cross-Site-Attacken gehört zu den häufigsten
Angriffen überhaupt und teilt sich in mehrere Unterklassen auf.
Gemeinsam ist allen Cross-Site-Angriffen, dass sie jeweils aus einem
für das Opfer vertrauenswürdigen Kontext heraus Aktionen anstoßen,
die diesen Kontext verlassen und in einer ganz anderen Umgebung aus-
geführt werden.
XSS
Das beste Beispiel hierfür sind die bekannten Cross-Site-Scripting-
bzw. XSS-Lücken, bei denen ein Angreifer auf einer für das Opfer ver-
trauten Webseite (dem »vertrauenswürdigen Kontext«) seinen eigenen
Schadcode, meist in Form von Java- oder ActiveScript, platziert. Über
Lücken in der Eingabevalidierung ist das bei vielen Anwendungen lei-
der ohne Weiteres möglich. Der Browser des Opfers hält diesen Schad-
code für legitim, da er auf einer legitimen Seite auftaucht – und führt
ihn aus. Dank des sehr mächtigen Document Object Model (DOM) ist
es mit JavaScript dann möglich, das Aussehen und Verhalten einer
angegriffenen Seite fast beliebig zu verändern.
CSRF
Cross-Site Request Forgery (CSRF) – das wir ebenfalls in diesem
Kapitel behandeln werden – ist eine ähnlich tückische, aber etwas
unbekanntere Sicherheitslücke. Hier sorgt der Angreifer dafür, dass
über eine von ihm gestellte Falle kein JavaScript-Code im Browser des

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