info@webcook.pro Бесплатный анализ сайта

+7 (900) 241-99-93 Рабочий день: 10:00 - 21:00

Взломали сайт? Лечение сайта своими руками.

Рейтинг:  0 / 5

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Пролог: Вы всегда можете обратиться к нам за помощью =)

Еще одна интересная статистика, о которой мы писали около месяца назад - в примерно 55% случаев сайты взламывают через дыры в безопасности плагинов, используемых на этих сайтах, и еще в примерно 15% случаев - путем подбора паролей администратора. Таким образом, сложный пароль и использование минимального количества проверенных плагинов - это уже 70% успеха в борьбе со злоумышленниками.

Но пока оставим сухие цифры в стороне, и перейдем к практике. Я по шагам изложения Вам проверенный на практике метод очистки сайтов на joomla, если уж так случилось, и был сломан.

Заметьте:

Самый простой способ восстановления сайта - восстановление из резервной копии. В таком случае Вы с наибольшей вероятностью не пропустите ничего, восстановите работу сайта за минимальное время и с использованием минимальных усилий. Так что делайте резервную копию регулярно и храните где-то в безопасном месте минимум 3 копии - после создания сайта (или любая старая 100% рабочая копия), копия недельной давности и копия "на вчера". Вот пример, как делать копии, если на хостинге используется панель ISPmanager. После больших / важных изменений на сайте делайте разовую копию и "кладите" рядом с Вашей "старой", это позволит в случае чего возвращаться к самому началу. Описанный далее способ срабатывает в большинстве случаев, с которыми мне пришлось встретиться, но не является панацеей от любых типов "вирусов / атак". 1. Бэкап / резервная копия. Первое правило - всегда делай бэкап.

Даже перед началом очистки зараженного сайта нужно сделать бэкап его текущего состояния. Почему? Во-первых, как в анекдоте, смотри первое правило. Во-вторых, при работе с пораженным сайтом можно ошибочно удалить нужную информацию, которой нет в более старых Ваших резервных копиях (если эти копии у Вас вообще есть).

Многие считают, что любой хостинг-провайдер делает бэкапы их сайтов, так что нет смысла морочить себе голову этим. Они правы, но где-то процентов на 30%. Не всегда есть информация, какие именно копии делает провайдер, копии чего и сколько копий сохраняется. Например, провайдер может делать копии Ваших сайтов, но, за исключением файлов по размеру больше 5мб. Это довольно нормальная практика, ведь большинство "скриптов" / "полезных файлов" не превышает этот предел, а различные "видео", архивы и другие медиа-данные, которые занимают много места - не будут мешать провайдера, съедая ресурсы сервера резервных копий . Провайдер может хранить данные, например, за последние 2 дня. Этого вполне достаточно, чтобы восстановить работу сайтов клиентов в случае каких-то проблем на стороне провайдера, но в большинстве случаев Вы заметите, что сайт взломан примерно через неделю, а иногда люди месяцами об этом не догадываются (это 100% правда из личного опыта работы с сайтами клиентов ). Итак, когда Вы заметите проблемы, провайдер сможет предоставить Вам только копии 2-дневной давности, но от этих копии не будет пользы. Ну и последнее, есть такие штуки как "форс-мажор" и "закон подлости", эти штуки обычно случаются, когда Вы надеетесь на помощь "третьих" лиц вместо того, чтобы нести ответственность за свои сайты лично. Все цифры я привел для примера и понимания важности бэкапов.

2. to Be or Not to Be Благодаря архитектуре joomla нам значительно легче будет удалить "половину" вирусов по сравнению с другими системами управления сайтами. Итак второй шаг, который нам нужно сделать - это удалить все "стандартные" файлы и папки, мы позже заменим на их "оригинальные / чистые" версии. Эти файлы и папки в 99% случаев не должны отличаться от оригинала. Вот пример файлов пораженного сайта (красным отмечено например некоторые «нестандартные» файлы / папки, которых не должно быть).

Директорию content мы оставляем, поскольку в ней содержатся все наши изображения с статей и страниц, все плагины и шаблон, мы используем. В файле config.php содержится информация о доступе к базе данных и другая конфигурация. В принципе его тоже можно было удалить, но я подскажу позже, чем он понадобится.

Конечно, если у Вас в корневой директории сайта есть какие-то "свои" папки или файлы, например, как на скриншоте файлы, подтверждающие права на домен для сторонних сервисов, их тоже можно оставить, но в этой статье я не смогу рассмотреть способы, как их проверить / почистить:

3. Удаление, восстановление

Важный момент - начиная с этого шага не нужно пытаться открывать сайт, админку или как-то обращаться к сайту через браузер. Может такое быть, что при попытке открыть любую страницу вирусы автоматически снова попадут на сайт.

Первое, что мы делаем, удаляем все, кроме файла config.php и директории content, как результат имеем такое содержание директории с сайтом: files2

Второе - создаем в корне файл .htaccess, с последующим содержанием:

Order Deny, Allow

Deny from all

Allow from 98.244.195.106

Где IP адрес 98.244.195.106 нужно заменить на Вашу. Таким способом Вы позволяете доступ к Вашему сайту только с Вашего компьютера.

Третье - берем последнюю версию joomla со страницы релизов у ​​нас или на официальном сайте и загружаем содержимое директории joomla, что Вы найдете в архиве на Ваш сайт, соглашаясь с заменой файлов на сайте существуют на новые:

ftp_27

Четвертое - один из важнейших шагов, ведь касается замены файлов плагинов, через которые в большинстве ломают сайты по статистике. Суть шага заключается в том, что нужно полностью удалить все директории с плагинами, а вместо них загрузить "чистые" версии. Делать это довольно скучно, но без этого весь процесс может быть бесполезным. Один из способов следующий:

переходим в папку / public_html / plugins и поочередно в каждой директории открываем главный файл плагина. Он обычно имеет совпадать по имени с директорией: plugin

в этом файле мы находим ссылки на официальную страницу плагина, куда мы и идем. Там берем актуальную и чистую версию, с которой потом восстановим наш плагин:

plugin2

Я, например, загружаю все архивы в какую пустую папку, а после работаю со всеми вместе.

Итак имеем набор чистых плагинов и можем удалить все "дерьмо", которое находится на их месте, а его там целая куча :)

Удаляем из папки / public_html / plugins все, кроме файла index.php, его мы уже заменили на чистый на одном из шагов.

Распаковываем архивы с плагинами и загружаем на сайт в / public_html / plugins

Пятое - мы проводим аналогичную операцию с шаблонами. Здесь меньше глупой работы, ведь шаблон можно использовать только один (максимум два в случае с дочерней темой, но это отдельный разговор). Так что нужно зайти в директорию с шаблонами / public_html / themes, переименовать папку с Вашим активным (надеюсь, Вы знаете, какой шаблон используете), а все остальные папки / файлы удалить (кроме файла index.php, его мы уже заменили на чистый на одном из шагов).

получаем чистую директорию с одной папкой, что мы переименовали (не важно, какую новую названия папки избран):

Теперь нужно лишь перейти на сайт, где Вы загружали шаблон, и аналогично плагинам скопировать чистый шаблон в / public_html / themes. Шестое - нужно проверить / почистить директории, остались, а именно / public_html / languages ​​и / public_html / uploads. Обычно все внутри / public_html / languages ​​можно удалить. В этой папке хранится в большинстве случаев только перевод самого "joomla", если Вы используете языковую версию отличную от английской. Чтобы этот перевод снова там появился, будет достаточно в конце выбрать в админке английский язык, сохранить настройки, а затем выбрать нужную (например, русский) и снова сохранить настройки.

Самое интересное можно найти в / public_html / images. По умолчанию в этой папке могут быть только следующие файлы:

Изображения - .jpg, .jpeg, .png, .gif, .ico,

Документы - .pdf, .doc, .docx, .ppt, .pptx, .pps, .ppsx, .odt, .xls, .xlsx, .psd

Аудио - .mp3, .m4a, .ogg, .wav

Видео - .mp4, .m4v, .mov, .wmv, .avi, .mpg, .ogv, .3gp, .3g2

На практике, большинство из нас на сайт загружают только изображения, из этого следует, что в данной директории не должно быть ничего кроме указанных выше файлов (или только изображений).

Также в большинстве случаев все файлы / изображения находятся в папках со структурой год / месяц, например / public_html / uploads / 2016/01. Поэтому все остальные директории тоже нужно удалить.

4. configuration.php

Сейчас мы восстановим / почистим этот важный файл в корне Вашего сайта. Сделать это не очень сложно, чистым Вордпрес Вы загрузили файл configuration-sample.php - это и есть "девственница" версия configuration.php. Нам только нужно перенести туда определенные настройки. Открываем оба файла для редактирования, берем данные из configuration.php и вставляем в configuration-sample.php.

настройки подключения к базе данных (кликайте)

ключи аутентификации (кликайте)

префикс таблиц (кликайте)

сохраняем изменения.

удаляем configuration.php

меняем название configuration-sample.php на configuration.php

п.с. Перед переносом информации о подключении к базе данных я бы еще советовал хотя бы изменить пароль к базе, и тогда использовать уже новый. Обычно это можно сделать через хостинг-панель Вашего хостинг-провайдера.

5. Поехали

Этого должно быть достаточно, чтобы перейти уже к нашей админке. Итак открываем http: // vash_site / administrator Нас ждут следующие дела и сюрпризы:

первое, что надо - зайти в меню "Пользователи", посмотреть, нет ли лишних администраторов и изменить пароли всем администраторам, которые остались. открыв меню "Плагины", мы можем увидеть, что определенные плагины были отключены, поскольку мы удалили их папки. Другие плагины останутся на месте, их настройки должны сохраниться.

в меню "Вид" Вы можете увидеть, что Ваша активная тема повреждена (это если вы не нашли ее "чистого" варианта), в таком случае просто активируйте новую, которую мы загрузили пару шагов назад.

Удалите код из файла .htaccess в корне сайта, мы добавили в начале статьи для ограничения доступа

Зайдите в меню «Настройка - постоянные ссылки" и нажмите Сохранить это заново создаст в корне сайта файл .htaccess с нужным содержанием для открытия страниц с хорошими url-ами.

Вот и все=)

Где мы находимся?

Мы находимся в городе Краснодаре. Связаться с нами можно любым удобным для Вас способом.

Наша почта:

info@webcook.pro

Телефон для связи:

+7 (900) 241-99-93

Время принятия заявок

Пн-Вс (10:00 - 20:00)
Без перерывов
© 2015-2017 Веб-студия «WebCook»