JavaScript im GIF als Script Source JavaScript im GIF  Kaum zu glauben aber wahr, ein "Hallo Welt" geschrieben in JavaScript in einem GIF. Offenbar kann man beim src-Attribute des script-Tags auch ein Bild angeben, in diesem Fall ein GIF. Der Trick an der Sache ist einen gültigen GIF-Header zu erzeugen der auch als JavaScript interprepiert werden kann. In JavaScript wird die Kennung "GIF89a" als Variable betrachtet und in der Breitendefinition einen Kommentar begonnen "/*" der am Ende der Farbtabelle geschlossen wird "*/" und anschließend wird der Variable (GIF89a) der Wert 1 zugewiesen "=1". Das Ende des Gif-Headers ";" schließt diese Zuweisung ab, nun kann der eigentliche JavaScirpt Code folgen. Man beachte allerdings die Größendefinition, eine Breite von $2A2F entspricht der Breite von10799 Pixel was nicht nur für ein GIF schon beträchtlich ist! [GIF Hexdump] Offset Length (bytes) Content 00 3 ($47 $49 $46) "GIF" 03 3 ($38 $39 $61) "87a" oder "89a" 06 2 ($2f $2a) Breite 08 2 ($64 $2e) Höhe 0a 1 ($2e) Farbtabellen Infos 0b 1 ($2e) Hintergrund Farb-Index 0c 1 ($2e) Pixel Seitenverhältnis 0d 9 ($2c $2e $2e $2e $2e $2a $2f $3d $31) Globale Farbtabelle / Blöcke 16 1 ($3b) Ende 17 document.getElementById("box").innerHTML="Hallo Welt"; JavaScript-Block 4c 1 ($3b) Ende <div id="box"></div> <script src="/media/XSS-Sicherheitsluecke.gif" type="text/javascript"></script> Sicherheitslücke geschlossen: Skript von "https://www.gocher.me/media/XSS-Sicherheitsluecke.gif("https://www.gocher.me/media/XSS-Sicherheitsluecke.gif")" wurde wegen eines unerlaubten MIME-Typs ("image/gif") blockiert. Laden fehlgeschlagen für das <script> mit der Quelle "https://www.gocher.me/media/XSS-Sicherheitsluecke.gif("https://www.gocher.me/media/XSS-Sicherheitsluecke.gif")".