Взлом сайта
Один из моих сайтов взломали. Поставили iframes в конец html и php файлов. Ума не приложу как это могло произойти при наличии фаервола, антивируса и скрытности. Хорошо что только один поломали сайт.
Поменял пароли на хостинге.
Ищу скрипт, который бы удалял бы дописки.
PHP скрипт, который уничтожает гадость из всех файлов
 get_dirs("..");
function get_dirs($dir){
    global $dirs;
    $nome=0;
    if (!isset($dirs)){$dirs = '';}
    if(substr($dir,-1) !== '/'){$dir .= '/';}
    echo $dir;
    if ($handle = opendir($dir)){
        while (false !== ($file = readdir($handle))){
            if (filetype($dir.$file) === 'dir' && $file != "." && $file != ".."){
                clearstatcache();
                $dirs .= $file . "\n";
                echo "<hr><b>$dir"."$file</b>";
                get_dirs($dir . $file);
            }
            else {
            if ($file == "." || $file == "..") continue;
            if ((strpos($file, ".ht") == 0) and (strpos($file, ".php") == 0)) continue;
            //echo "<br>$dir"."$file";
                check_file($dir . $file);
            }
        }
        closedir($handle);
    }
    return $dirs;
}
function check_file($file_name){
    $replace1 = array(
                     'то, что нужно убрать пиши здесь' => '',
                     '123' => '',
                     '234' => '',
                     '567' => '',
                    );
    $arr_text = file($file_name);
    $flag=0;
    for ($jj=0; $jj<count($arr_text); $jj ++ ){
        $str = $arr_text[$jj];
        //echo "$str";
        $i1 = strpos($str, 'iframe src="http://thekapita.com/lib/index.php' );
        $i2 = strpos($str, 'то, что нужно убрать пиши здесь' );
//        $i3 = strpos($str, ' tewtewtwet' );
//        $i4 = strpos($str, ' tewtewtwet' );
//        $i5 = strpos($str, ' tewtewtwet' );
//        $i6 = strpos($str, ' tewtewtwet' );
//        $i7 = strpos($str, ' tewtewtwet' );
//        $i8 = strpos($str, ' tewtewtwet' );
//        $i9 = strpos($str, ' tewtewtwet' );
//        $i10 = strpos($str, ' tewtewtwet' );
//        $i11 = strpos($str, ' tewtewtwet' );
//        $i12 = strpos($str, ' tewtewtwet' );
//        $i13 = strpos($str, ' tewtewtwet' );
        if (($i1 == 0) and ($i2 == 0) and ($i3 == 0) and ($i4 == 0) and ($i5 == 0) and ($i6 == 0) and ($i7 == 0) and ($i8 == 0) and ($i9 == 0) and ($i10 == 0) and ($i11 == 0) and ($i12 == 0) and ($i13 == 0)) continue;
        echo "<br><font color=red> find keyword <b>$file_name </font></b>";
        $str = strtr($str, $replace1);
        $arr_text[$jj] =  $str;
        $flag++;
        if ( $flag >0 )     break;
    }
//return;
    if ($flag == 0 ) return;
    echo "<br> replace <b>$file_name </b>";
    $filePoinr_w=fopen($file_name,"w");
    for ($jj=0; $jj<count($arr_text); $jj++){
            fwrite($filePoinr_w,$arr_text[$jj]);
    }
    fclose($filePoinr_w);
    //return;
}
Вероятно это был троян вирус - win32/Kryptik. CH и червь Win32/Pinit, которые добавляют скрытый iframe.
При препечатке ссылка обязательна sm100
				
Январь 26th, 2010 19:22
а это и через хостера могли сделать
Январь 27th, 2010 03:46
Пароли к сайтам в Тоталкомандере сохраняли?
Январь 27th, 2010 09:56
>Пароли к сайтам в Тоталкомандере сохраняли?
Пользуюсь FAR - manager
Февраль 5th, 2010 22:55
Мне в свое время очень помогла вот эта статья _http://gogolev.net/node/81
Там приведен скрипт на bash’е, который уничтожает заразу типа iframes.
Также можно автоматизировать процесс удаления заразы, добавив скрипт в cron.
Февраль 5th, 2010 23:03
Сорри, ошибся ссылкой, вот она, про удаление инклудов iframe
http:// gogolev.net/node/94
Февраль 5th, 2010 23:40
Спасибо за ссылку. Я решил проблему тем что сам написал php код - см код выше.
Заодно код можно переквалифицировать для перелинковщика (производителя перекрестных ссылок).
Февраль 5th, 2010 23:50
Да, ваш код тоже может пригодится, возьму на заметку!