С нами с 12.06.03
Сообщения: 1590
Рейтинг: 960
|
Добавлено: 06/01/11 в 12:12 |
По хосту прошелся вирус, в итоге во всех index.html и main.html в конце кода появился кусок вредоносного <script>. Руками вырезать не вариант, так как файлов слишком много. Может есть какая софтина или скрипт для подобных закдач?
|
|
HQHost: хостинг успешных мастеров. | LONG BUCKS: реальные деньги REALITY сайтов
|
0
|
|
|
Нас не згвалтувати!
С нами с 16.10.02
Сообщения: 4171
Рейтинг: 1460
|
Добавлено: 06/01/11 в 12:32 |
find -type f -name '*.html' -print $htmlcode | xargs sed -i 's/текст1/текст2/g'
внимательно следи за / в коде перед ними ставь \
|
|
|
|
С нами с 03.03.06
Сообщения: 202
Рейтинг: 144
|
Добавлено: 06/01/11 в 16:02 |
а если локально то можно прогой rq search replace
|
|
|
|
www.romartstudio.com
С нами с 06.11.03
Сообщения: 12189
Рейтинг: 2263
|
Добавлено: 06/01/11 в 16:45 |
Tuchkov: как вариант дримвьевером сделать, найти/заменить он в хтмл хорошо делает и заменить в папке на фтп он тоже может, для разовой задачи - самое оно.
|
|
|
|
С нами с 28.04.08
Сообщения: 623
Рейтинг: 687
|
Добавлено: 06/01/11 в 18:01 |
лучше через шелл, если шелла нет, можно php скрипт написать/найти , будет менять то что надо, при этом ходить по всем папкам, подпапкам и т.д.
|
|
|
|
С нами с 24.06.10
Сообщения: 2686
Рейтинг: 543
|
Добавлено: 06/01/11 в 19:27 |
Ado.Blogs писал: | при этом ходить по всем папкам, подпапкам и т.д. |
кстати, мб кому-нить пригодится, я так когда-то права на шоп скриптом раздавал (файлов много была, и все 0777 нафигато хотят), так вот учётку автоматом сразу же забанили ) есть такие хостеры, которые мониторят активность работы с ФСО (в смысле любыми объектами файловой системы), процессов, запускающихся из-под веб-сервера, и если есть подозрения на определённую вирусную активность (то есть писать, читать, изменять права реккурсивно в большом кол-ве), аккаунт автоматом блокируется до выяснения причин такой активности с его овнером.
Ясен, это не каждый хостер мониторит, но такое имеет место быть (и в принципе, это даже правильно)
зы: само-собой, что правильный червь не ипашит своё тело сразу при старте во все фалы, которые может получить, но это правильные вируса )
зыы: то есть - ясен, лучше всего шелл, если имеется, но если нет, то думаю проще архивнуть (забекапить панелью) покоцанный сайт и локально пофильтровать по всем правилам, включая проверку антивирусниками
|
|
|
|
С нами с 28.04.08
Сообщения: 623
Рейтинг: 687
|
Добавлено: 06/01/11 в 23:36 |
вот нашел в своем архиве php приблуд всяких.
как то надо было во всех галях заменить урл на платник, эта байда спасла, ибо галер реально много, качать их туда<-->сюда, это гемор
Код: [развернуть] | <?
$work_dir="./";
// рабочая директория - обязательно должна заканчиваться
// символом "/"
$excl_dir=array();
$excl_dir[0]="./no_work_here/";
$excl_dir[1]="./and_here/and_here/";
// директории, где поиск/замена не производятся - обязательно должны заканчиваться
// символом "/"
$file_mask_1=".php";
$file_mask_2=".js";
// маски обрабатываемых файлов (будут обработаны все файлы,
// содержащие данную строку в имени)
$search_str=' xxx '; #что ищем
$replace_str='yyy'; #чем заменяем
//******************************************************
$level=0;// глубина вхождения в подкаталоги
function sr($dir)
{
global $level,$file_mask_1,$file_mask_2,$search_str,$replace_str,$excl_dir;
echo "<b>";
for ($i=0;$i<$level;$i++) echo "* * ";
echo $dir."</b>";
if (@in_array($dir,$excl_dir))
{
echo " - needn't search & replace<br>";
return;
}
echo "<br>";
$p = dir($dir);
while($ent=$p->read())
{
if ($ent!="." && $ent!=".." && !is_dir($dir . $ent) && (eregi(sql_regcase($file_mask_1),$ent) || eregi(sql_regcase($file_mask_2),$ent)))
{
$tmp=@file($dir.$ent);
$str=@implode("",$tmp);
if (strpos("@!#%xrenoder^&*()".$str,$search_str))
{
for ($i=0;$i<($level)+1;$i++) echo "* * ";
echo $dir.$ent." found...";
$str=str_replace($search_str,$replace_str,$str);
if ($fp=@fopen($dir.$ent, "w"))
{
flock($fp,LOCK_EX);
fwrite($fp,$str);
fclose($fp);
echo " and replace<br>";
}
else echo " and <b>can't replace</b><br>";
}
}
elseif($ent!="." and $ent!=".." and is_dir($dir . $ent))
{
$level++;
sr($dir.$ent."/");
$level--;
}
}
$p->close();
return;
}
sr($work_dir);
echo "SEARCH & REPLACE Complete";
?> |
Оффтопик:
p.s. не посылайте нахуй только
|
|
|
|
С нами с 06.10.06
Сообщения: 964
Рейтинг: 742
|
Добавлено: 07/01/11 в 17:08 |
Нах такой длинный пхп код ?)
Выше отписали одну строчку, за 10 мин все перешерстит и исправит
|
|
MyPublicDreams.com - Exclusive public paysite.
|
0
|
|
|
С нами с 28.04.08
Сообщения: 623
Рейтинг: 687
|
Добавлено: 07/01/11 в 17:30 |
Цитата: | Нах такой длинный пхп код ?) |
на случай если шелла нет
|
|
|
|
С нами с 04.11.06
Сообщения: 203
Рейтинг: 49
|
Добавлено: 07/01/11 в 20:08 |
для таких целей пользуюсь редактором WeBuilder 2008, но поиск/замена только локально
|
|
|
|