Приветствую всех.
Нужна помощь. Заплатку не успел установить. Не могу войти в панель администрирования.
Фатальная ошибка при входе,сам сайт работает:
Fatal error: Class 'Magpleasure_Filesystem_Helper_Data' not found in /xxxxxxxxxxxx/docs/app/Mage.php on line 516
С чем разобрался, 23 апреля непонятно кто установил расширение Magpleasure - Filesystem, само расширение нашёл и удалил,но проблему решить не получается. Вход в админку закрыт. Буду очень благодарен всем откликнувшимся.
Сам не могу разобраться.
Solved! Go to Solution.
Плохо что хостер свинья.
Не пробовали на имеющуюся базу данных накатить новую Magento по принципу установки демо-магазина?
И аккуратненько, перепроверяя перетащить туда медиа файлы.
Просто неизвестно как хорошо все получилось вычистить после взлома.
*Кстати у товарища был случай правда на wordpress тоже с переименованием в php.suspected, техподдержка клялась что нет антивируса, как оказалось стоял ClamAV который это и творил, но естественно не просто так, а из-за дыр. Часто бывает что поддержка не компетентна ну и естественно серверы ставят на ход одни люди, а поддерживают их совершенно другие.
Попробуйте удалить папку var/cache .. и если включена компиляция, то отключить ее, очистить, и включить снова
примерно так
php -f shell/compiler.php disable php -f shell/compiler.php clear php -f shell/compiler.php compile
ps. Заплату лучше установить, если еще не установили. И проверьте не появились ли у вас в базе новые пользователи ...
Если есть возможность проверить (если есть тестовый закрытый стенд) - то проверьте не изменились ли еще какие файлы CMS, и не появились ли новые. Например я столкнулся с тем, что "товарищи" закачали php файл в папку skins. Файл выполнял произвольный код из POST запросов.
Спасибо за помощь. Да, надо было очистить кэш и снова смог войти в админку. Сейчас занялся бэкапом перед установкой заплатки и глобальными обновлениями через Magento Connect. Там есть подводные камни? Или всё проходит в автоматической режиме.
Хочу обновиться до версии 1.9.1.1, но пока даже не могу сделать проверку совместимости с помощью файла Magento-check Пока недостаточно опыта и не понимаю в каком браузере его открыть.
Хакеров удалил. Файл странный обнаружил в той же папке skin - error.php . Вот некоторые команды в нём.
$z = $v[$n];
$y = $v[0];
$delta = 0x9E3779B9;
$q = floor(6 + 52 / ($n + 1));
$sum = 0;
while (0 < $q--) {
$sum = int32($sum + $delta);
$e = $sum >> 2 & 3;
for ($p = 0; $p < $n; $p++) {
$y = $v[$p + 1];
$mx = int32((($z >> 5 & 0x07ffffff) ^ $y << 2) + (($y >> 3 & 0x1fffffff) ^ $z << 4)) ^ int32(($sum ^ $y) + ($k[$p & 3 ^ $e] ^ $z));
$z = $v[$p] = int32($v[$p] + $mx);
}
$y = $v[0];
$mx = int32((($z >> 5 & 0x07ffffff) ^ $y << 2) + (($y >> 3 & 0x1fffffff) ^ $z << 4)) ^ int32(($sum ^ $y) + ($k[$p & 3 ^ $e] ^ $z));
$z = $v[$n] = int32($v[$n] + $mx);
}
return long2str($v, false);
}
function xxtea_decrypt($str, $key) {
if ($str == "") {
return "";
}
$v = str2long($str, false);
$k = str2long($key, false);
if (count($k) < 4) {
for ($i = count($k); $i < 4; $i++) {
$k[$i] = 0;
}
Обновление через коннект редко проходит без проблем. Зависит от количества версий, которые надо перепрыгнуть (с версии 1.9.0.0 и с версии 1.7.0.2 разное время занимает) и от количества записей в базе данных.
Советую проверить весь сайт на лишние php файлы и потом сменить пароли. Недавно у клиента нашли около 10 файлов в разных папках (skin, js). Выловил их Kaspersky анитивирус.
Вот и у меня предчувствие не торопиться,нежели опыт. Тем более древняя 1.6.2.0
БД более 300 Mb. C Касперским хорошая мысль. Указать папку для проверки или как ? Подскажите пожалуйста.
Я только учусь.
Мы выловили эти скрипты скачав сайт на локальный компьютер для работы. И потом вручную удалили на сервере то, что он нашёл локально. Не думаю что антивирус проверит на удалённом сервере быстро.
Буду тоже ловить, смысл понял. Архив сделал, подсуну папку Касперскому.
По датам в принципе видно,когда был взлом,но найти все не реально,что установили.
Руцентр вежливо послал разбираться самому с бэкапом,может у меня тариф дешёвый.
Без бэкапа ничего пока не хочу начинать. Читал,что советуют делать его лучше через SSH.
Файловый менеджер и ftp не то.
Я думаю, что не каждый php файл, который закачают злоумышленники на ваш сайт, Касперский распознает как вирус (или модифицируют уже имеющийся).
Я бы рекомендовал иметь копию сайта (файлы и база), и при изменении проводить синхронизацию из одной папки в другую. Например использовать rsync (причем он может синхронизировать удаленно по SSH). Так вы сможете найти любой файл, который проник туда куда не надо или был изменен не вами.
Настройте автоматическое резервное копирование. У одного моего клиента архивчик до 4 гиг ежедневно, еженедельно и ежемесячно складируется. В случае чего всегда можно вернуться (кстати это настроили после того, как он сам базу зачистил и делал после этого нивинный вид, а до этого говорил - не надо, теперь звонит еженедльно спрашивает о бекапах).
Если еще есть возможность - пройдитесь по папкам или задайте поиск на сервере, чтобы выдал все файлы измененные за период с часа Х по Y. И попробуйте визуально пройтись по коду. Левые вставки обычно видны сразу. Это если оригинальные файлы сохранились и вы их не переписали заново.
У вас обязана лежать на компе копия сайта за какой-то период - сравните 2 версии сайта и удалите одинаковые файлы. Остальные исследуйте. Опять таки - пройдитесь визуально по коду, если есть необходимость. Я себе такое на perl написал - часто выручает. Но говорят есть и десктопные приложения (не знаю, мне моего с головой хватает).
В лбом случае, при отсутствии любого бекапа до часа X, наступает состояние "Жо**".
Крепитесь.
Вы были правы. Ничего не нашёл. Никак не отреагировал на добавленный файл о котором писал выше.