Блог

Наши мысли и советы

Делимся с миром своим опытом

Joomla сайт взломан или поврежден? Порядок действий!

Joomla сайт взломан или поврежден – порядок действийВаш сайт был взломан, дефейснут или испорчен вирусом?

Главное не паниковать, в любом случае, у вас же есть бэкап сайта?

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

План действий

  • Переведите ваш сайт в режим офлайн (мы рекомендуем htaccess метод).
  • Запустите помощника и утилиту безопасности Joomla, простая инструкция находится здесь. Подробная инструкция включена в сам пакет. Вы должны распаковать данный архив и загрузить файл «fpa-en.php» на ваш сервер в root-директорию Joomla.
  • Просканируйте все компьютеры и планшеты (телефоны) на которых есть FTP доступ к вашему сайту, с которых заходили на сайт под Супер администратором и администратором на наличие вредоносных программ, вирусов, троянов, шпионских программ и т.п. (смотрите раздел Локальная безопасность).
  • Убедитесь, что у вас последняя версия Joomla.
  • Уведомите вашего хостинг-провайдера о вашей проблеме, очистите сайт вместе и проверьте сайт на наличие бэкдор (backdoor) программ.
  • Просмотрите список уязвимых расширений, чтобы увидеть, есть ли у вас какие-то уязвимые расширения и как бороться с ними. Ключом к решению почти всех вопросов являются логи файлов. Вот пример того, что нужно искать:
    • //administrator/components/com_extension/admin.extension.php?mosConfig.absolute.path=http:
      или
    • ../../../../../../../../../../../../../../../../proc/self/environ
  • Проведите аудит безопасности по этому списку, убедитесь, что вы прошли через все шаги (обратите внимание, что некоторые шаги являются необязательными, но, пожалуйста, рассмотреть их все).
  • Изменить все пароли и, если возможно, то и имена пользователей на панели управления хостингом, MySQL, FTP, Joomla! Super Admin и Joomla! администратора, меняйте их часто в принципе. Пароль должен быть не менее 12 смешанных буквенно-цифровых символов и не содержать общих фраз, слов. Не используйте стандартного Администратора, отключите его. Если вам нужно сбросить пароль администратора, см. эти инструкции.
  • Замените все шаблоны и фалы чистыми копиями.
  • Проверьте и/или замените все файлы PDF, изображения, фото, видео файлов на наличие эксплойтов.
  • Проверьте лог вашего сервера на наличие запросов к подозрительным файлам с IP-адресов или попыток выполнения не стандартных POST команд.
  • Используйте соответствующие разрешения на файлы и каталоги. Они никогда не должны быть 777, в идеале 644 для файлов и 755 папок.
  • Отключите анонимного пользователя FTP.

chmod и cron

Если у вас есть разрешение на доступ к SSH (Secure Shell), то с помощью «putty» можно выставить рекомендуемый CHMOD для файлов и каталогов. Если вы не имеете доступа к командной оболочке, вы можете запустить команды через cron, путем создания временной задачи cron. Скопируйте и вставьте команды в cron. Выставите на исполнение через 2 минуты после сохранения задачи.

При использовании команды через «putty» или cron, используйте полный физический путь к public_html, рекомендуется для наилучшего результата.

Для файлов

find /home/xxxxxx/domains/xxxxxxx.com/public_html -type f -exec chmod 644 {} \;

Для директорий

find /home/xxxxxx/domains/xxxxxxx.com/public_html -type d -exec chmod 755 {} \;

Для проверки последнего изменения файлов (за последний день) в вашей системе используйте эти команды через putty (SSH - Secure Shell) или через cron. Если вы запустите команду через cron, то вы можете запланировать её для проверки измененных файлов несколько раз в день. Результат будет отправлен владельцу учетной записи хостинга (домена) и покажет время / даты для любых измененных файлов.

find /home/xxxxxx/domains/xxxxxxx.com/public_html -type f -ctime -1 -exec ls -ls {} \;

При использовании команды через «putty» или cron, используйте полный физический путь к public_html, рекомендуется для наилучшего результата.

Пожалуйста, обратите внимание, что файлы вашего сайта могут быть расположены в public_html, httpdocs, WWW, или другом подобном месте. Ваш физический путь также может быть иной, чем в примерах. Отредактируйте физический путь соответственно.

Разрешения 777

Если ваш сервер требует разрешений 777, для правильной работы Joomla, то попросите перенести на другой сервер с PHP приложения, такие как CGI и suphp. Обязательно необходимо иметь актуальные версии серверного программного обеспечения (Apache, PHP и т.д.) на существующем хосте или найдите другого хостинг-партнера, если необходимо.

Чтобы защитить каталоги, которым нужно разрешение 777, попробуйте положить этот код в открытую папку (в фале .htaccess):

# secure directory by disabling script execution
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
Options -ExecCGI

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

Правило: чем меньше вы платите, тем меньше они заботятся.

Быстрое восстановление работы сайта при бедствии

  1. Сохраните файл configuration.php, ваши изображения (видео) и личные файлы по одному (не папкой, так как она может содержать нежелательные файлы).
  2. Удалите всю папку, в которой установлена Joomla!
  3. Загрузить новый, чистый, полный пакет последней версии Joomla 2.5 или Joomla 3.x (без папки установки).
  4. Закачайте обратно configuration.php, ваши изображения (видео) и личные файлы.
  5. Загрузите или переустановите последние версии расширений, шаблонов (еще лучше использовать оригинальные и чистые копии для того, чтобы хакер не оставил никаких файлов и скриптов на вашем сайте).

Чтобы сделать это, сайт будет не доступен, вам потребуется 15 минут. Чтобы отследить взломан или испорчен сайт, потребуется несколько часов или даже дольше.

Локальная безопасность

1. Не сохраняйте имена и пароли в FTP программах (используйте менеджер паролей, например бесплатный «keepass»).
2. Просканируйте все компьютеры и планшеты (телефоны) на которых есть FTP доступ к вашему сайту, с которых заходили на сайт под Супер администратором и администратором на наличие вредоносных программ, вирусов, троянов, шпионских программ и т.п.
3. Некоторые антивирусы:

4. Используйте Ultimate Boot CD for Windows, для ремонта, восстановления или диагностики практически любой проблемы на домашнем компьютере.

Другие вопросы безопасности

  • Не используйте стандартный префикс таблиц jos_
  • Установить ленту новостей Joomla Security в качестве основного верхнего модуля в панели управления администратора. Настройка ленты новостей Joomla Security.
  • Добавьте в файл .htaccess черный список ботов
  • Используйте sFTP вместо FTP где это возможно
  • Не используйте анонимный FTP ни в каком случае
  • Используйте сервера, где mod_security настроен правильно
  • Проверьте все субдомены и директории
  • Проверьте все cgi-скрипты
  • Проверьте все задачи cron установленные не администратором
  • Полностью удалите неиспользуемые или уязвимые расширения.

Этот документ распространяется на все версии Joomla.

Используйте последнюю версию Joomla, совместимую с существующей, на которой работает ваш веб-сайт до проведения работ.

Некоторые версии уже не поддерживаются и требуют миграции сайта на новую версию Joomla.

Ваш сайт Joomla выйдет из строя, если использовать для перезаписи более ранние версии Joomla. Например: Не перезаписывать 1.5.xx версией 2.5.xx.

Joomla! эксперты

Создание сайтов на Джумла.

Наш 10-летний опыт обеспечит уверенность в выборе компании, которая точно знает, что вам нужно.

 

Если Joomla, то это к нам!