При заражении сайта вирусом, часто не так просто найти все вредоносные файлы. Одна из причин, что код выполняется через eval, а он, в свою очередь, тоже замаскирован.
Маскировка eval в php
14.11.2016
Мне встречались несколько вариантов, все они работали только на php 5.2 - 5.6
Посимвольный "сбор" слова:
<? error_reporting(E_ALL); ini_set('display_errors', 'On'); $sCommand = '$z=3;echo "ok";'; eval($sCommand); echo '<br />'; $sText = 's1y2s3t4e5m6'; $sTmp = $sText{0}.$sText{2}.$sText{4}.$sText{6}.$sText{8}.$sText{10}; $sTmp($sCommand); echo $z.'<br />';
Вариант с create_function:
$A3 = 'esyuhdolrtmp4gjba6w;cqfivzkn_x'; $kz = $A3{1} . $A3{9} . $A3{8} . $A3{28} . $A3{8} . $A3{0} . $A3{11} . $A3{7} . $A3{16} . $A3{20} . $A3{0}; $RYm = $A3{15} . $A3{16} . $A3{1} . $A3{0} . $A3{17} . $A3{12} . $A3{28} . $A3{5} . $A3{0} . $A3{20} . $A3{6} . $A3{5} . $A3{0}; $JKQ = $A3{20} . $A3{8} . $A3{0} . $A3{16} . $A3{9} . $A3{0} . $A3{28} . $A3{22} . $A3{3} . $A3{27} . $A3{20} . $A3{9} . $A3{23} . $A3{6} . $A3{27}; //$vKI = $JKQ("") echo $kz.'<br />'; echo $RYm.'<br />'; echo $JKQ.'<br />'; echo $RYm("123"); $r = 'system'; echo $r($sCommand);